diff --git a/api_names_out.yaml b/api_names_out.yaml index d797f97a1..a5da5a451 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -435,9 +435,360 @@ "/adexchangebuyer2:v2beta1/fields": fields "/adexchangebuyer2:v2beta1/key": key "/adexchangebuyer2:v2beta1/quotaUser": quota_user +"/adexchangebuyer:v1.2/Account": account +"/adexchangebuyer:v1.2/Account/bidderLocation": bidder_location +"/adexchangebuyer:v1.2/Account/bidderLocation/bidder_location": bidder_location +"/adexchangebuyer:v1.2/Account/bidderLocation/bidder_location/maximumQps": maximum_qps +"/adexchangebuyer:v1.2/Account/bidderLocation/bidder_location/region": region +"/adexchangebuyer:v1.2/Account/bidderLocation/bidder_location/url": url +"/adexchangebuyer:v1.2/Account/cookieMatchingNid": cookie_matching_nid +"/adexchangebuyer:v1.2/Account/cookieMatchingUrl": cookie_matching_url +"/adexchangebuyer:v1.2/Account/id": id +"/adexchangebuyer:v1.2/Account/kind": kind +"/adexchangebuyer:v1.2/Account/maximumActiveCreatives": maximum_active_creatives +"/adexchangebuyer:v1.2/Account/maximumTotalQps": maximum_total_qps +"/adexchangebuyer:v1.2/Account/numberActiveCreatives": number_active_creatives +"/adexchangebuyer:v1.2/AccountsList": accounts_list +"/adexchangebuyer:v1.2/AccountsList/items": items +"/adexchangebuyer:v1.2/AccountsList/items/item": item +"/adexchangebuyer:v1.2/AccountsList/kind": kind +"/adexchangebuyer:v1.2/Creative": creative +"/adexchangebuyer:v1.2/Creative/HTMLSnippet": html_snippet +"/adexchangebuyer:v1.2/Creative/accountId": account_id +"/adexchangebuyer:v1.2/Creative/advertiserId": advertiser_id +"/adexchangebuyer:v1.2/Creative/advertiserId/advertiser_id": advertiser_id +"/adexchangebuyer:v1.2/Creative/advertiserName": advertiser_name +"/adexchangebuyer:v1.2/Creative/agencyId": agency_id +"/adexchangebuyer:v1.2/Creative/apiUploadTimestamp": api_upload_timestamp +"/adexchangebuyer:v1.2/Creative/attribute": attribute +"/adexchangebuyer:v1.2/Creative/attribute/attribute": attribute +"/adexchangebuyer:v1.2/Creative/buyerCreativeId": buyer_creative_id +"/adexchangebuyer:v1.2/Creative/clickThroughUrl": click_through_url +"/adexchangebuyer:v1.2/Creative/clickThroughUrl/click_through_url": click_through_url +"/adexchangebuyer:v1.2/Creative/corrections": corrections +"/adexchangebuyer:v1.2/Creative/corrections/correction": correction +"/adexchangebuyer:v1.2/Creative/corrections/correction/details": details +"/adexchangebuyer:v1.2/Creative/corrections/correction/details/detail": detail +"/adexchangebuyer:v1.2/Creative/corrections/correction/reason": reason +"/adexchangebuyer:v1.2/Creative/disapprovalReasons": disapproval_reasons +"/adexchangebuyer:v1.2/Creative/disapprovalReasons/disapproval_reason": disapproval_reason +"/adexchangebuyer:v1.2/Creative/disapprovalReasons/disapproval_reason/details": details +"/adexchangebuyer:v1.2/Creative/disapprovalReasons/disapproval_reason/details/detail": detail +"/adexchangebuyer:v1.2/Creative/disapprovalReasons/disapproval_reason/reason": reason +"/adexchangebuyer:v1.2/Creative/filteringReasons": filtering_reasons +"/adexchangebuyer:v1.2/Creative/filteringReasons/date": date +"/adexchangebuyer:v1.2/Creative/filteringReasons/reasons": reasons +"/adexchangebuyer:v1.2/Creative/filteringReasons/reasons/reason": reason +"/adexchangebuyer:v1.2/Creative/filteringReasons/reasons/reason/filteringCount": filtering_count +"/adexchangebuyer:v1.2/Creative/filteringReasons/reasons/reason/filteringStatus": filtering_status +"/adexchangebuyer:v1.2/Creative/height": height +"/adexchangebuyer:v1.2/Creative/impressionTrackingUrl": impression_tracking_url +"/adexchangebuyer:v1.2/Creative/impressionTrackingUrl/impression_tracking_url": impression_tracking_url +"/adexchangebuyer:v1.2/Creative/kind": kind +"/adexchangebuyer:v1.2/Creative/productCategories": product_categories +"/adexchangebuyer:v1.2/Creative/productCategories/product_category": product_category +"/adexchangebuyer:v1.2/Creative/restrictedCategories": restricted_categories +"/adexchangebuyer:v1.2/Creative/restrictedCategories/restricted_category": restricted_category +"/adexchangebuyer:v1.2/Creative/sensitiveCategories": sensitive_categories +"/adexchangebuyer:v1.2/Creative/sensitiveCategories/sensitive_category": sensitive_category +"/adexchangebuyer:v1.2/Creative/status": status +"/adexchangebuyer:v1.2/Creative/vendorType": vendor_type +"/adexchangebuyer:v1.2/Creative/vendorType/vendor_type": vendor_type +"/adexchangebuyer:v1.2/Creative/version": version +"/adexchangebuyer:v1.2/Creative/videoURL": video_url +"/adexchangebuyer:v1.2/Creative/width": width +"/adexchangebuyer:v1.2/CreativesList": creatives_list +"/adexchangebuyer:v1.2/CreativesList/items": items +"/adexchangebuyer:v1.2/CreativesList/items/item": item +"/adexchangebuyer:v1.2/CreativesList/kind": kind +"/adexchangebuyer:v1.2/CreativesList/nextPageToken": next_page_token +"/adexchangebuyer:v1.2/adexchangebuyer.accounts.get": get_account +"/adexchangebuyer:v1.2/adexchangebuyer.accounts.get/id": id +"/adexchangebuyer:v1.2/adexchangebuyer.accounts.list": list_accounts +"/adexchangebuyer:v1.2/adexchangebuyer.accounts.patch": patch_account +"/adexchangebuyer:v1.2/adexchangebuyer.accounts.patch/id": id +"/adexchangebuyer:v1.2/adexchangebuyer.accounts.update": update_account +"/adexchangebuyer:v1.2/adexchangebuyer.accounts.update/id": id +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.get": get_creative +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.get/accountId": account_id +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.get/buyerCreativeId": buyer_creative_id +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.insert": insert_creative +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.list": list_creatives +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.list/maxResults": max_results +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.list/pageToken": page_token +"/adexchangebuyer:v1.2/adexchangebuyer.creatives.list/statusFilter": status_filter +"/adexchangebuyer:v1.2/fields": fields +"/adexchangebuyer:v1.2/key": key +"/adexchangebuyer:v1.2/quotaUser": quota_user +"/adexchangebuyer:v1.2/userIp": user_ip +"/adexchangebuyer:v1.3/Account": account +"/adexchangebuyer:v1.3/Account/bidderLocation": bidder_location +"/adexchangebuyer:v1.3/Account/bidderLocation/bidder_location": bidder_location +"/adexchangebuyer:v1.3/Account/bidderLocation/bidder_location/maximumQps": maximum_qps +"/adexchangebuyer:v1.3/Account/bidderLocation/bidder_location/region": region +"/adexchangebuyer:v1.3/Account/bidderLocation/bidder_location/url": url +"/adexchangebuyer:v1.3/Account/cookieMatchingNid": cookie_matching_nid +"/adexchangebuyer:v1.3/Account/cookieMatchingUrl": cookie_matching_url +"/adexchangebuyer:v1.3/Account/id": id +"/adexchangebuyer:v1.3/Account/kind": kind +"/adexchangebuyer:v1.3/Account/maximumActiveCreatives": maximum_active_creatives +"/adexchangebuyer:v1.3/Account/maximumTotalQps": maximum_total_qps +"/adexchangebuyer:v1.3/Account/numberActiveCreatives": number_active_creatives +"/adexchangebuyer:v1.3/AccountsList": accounts_list +"/adexchangebuyer:v1.3/AccountsList/items": items +"/adexchangebuyer:v1.3/AccountsList/items/item": item +"/adexchangebuyer:v1.3/AccountsList/kind": kind +"/adexchangebuyer:v1.3/BillingInfo": billing_info +"/adexchangebuyer:v1.3/BillingInfo/accountId": account_id +"/adexchangebuyer:v1.3/BillingInfo/accountName": account_name +"/adexchangebuyer:v1.3/BillingInfo/billingId": billing_id +"/adexchangebuyer:v1.3/BillingInfo/billingId/billing_id": billing_id +"/adexchangebuyer:v1.3/BillingInfo/kind": kind +"/adexchangebuyer:v1.3/BillingInfoList": billing_info_list +"/adexchangebuyer:v1.3/BillingInfoList/items": items +"/adexchangebuyer:v1.3/BillingInfoList/items/item": item +"/adexchangebuyer:v1.3/BillingInfoList/kind": kind +"/adexchangebuyer:v1.3/Budget": budget +"/adexchangebuyer:v1.3/Budget/accountId": account_id +"/adexchangebuyer:v1.3/Budget/billingId": billing_id +"/adexchangebuyer:v1.3/Budget/budgetAmount": budget_amount +"/adexchangebuyer:v1.3/Budget/currencyCode": currency_code +"/adexchangebuyer:v1.3/Budget/id": id +"/adexchangebuyer:v1.3/Budget/kind": kind +"/adexchangebuyer:v1.3/Creative": creative +"/adexchangebuyer:v1.3/Creative/HTMLSnippet": html_snippet +"/adexchangebuyer:v1.3/Creative/accountId": account_id +"/adexchangebuyer:v1.3/Creative/advertiserId": advertiser_id +"/adexchangebuyer:v1.3/Creative/advertiserId/advertiser_id": advertiser_id +"/adexchangebuyer:v1.3/Creative/advertiserName": advertiser_name +"/adexchangebuyer:v1.3/Creative/agencyId": agency_id +"/adexchangebuyer:v1.3/Creative/apiUploadTimestamp": api_upload_timestamp +"/adexchangebuyer:v1.3/Creative/attribute": attribute +"/adexchangebuyer:v1.3/Creative/attribute/attribute": attribute +"/adexchangebuyer:v1.3/Creative/buyerCreativeId": buyer_creative_id +"/adexchangebuyer:v1.3/Creative/clickThroughUrl": click_through_url +"/adexchangebuyer:v1.3/Creative/clickThroughUrl/click_through_url": click_through_url +"/adexchangebuyer:v1.3/Creative/corrections": corrections +"/adexchangebuyer:v1.3/Creative/corrections/correction": correction +"/adexchangebuyer:v1.3/Creative/corrections/correction/details": details +"/adexchangebuyer:v1.3/Creative/corrections/correction/details/detail": detail +"/adexchangebuyer:v1.3/Creative/corrections/correction/reason": reason +"/adexchangebuyer:v1.3/Creative/disapprovalReasons": disapproval_reasons +"/adexchangebuyer:v1.3/Creative/disapprovalReasons/disapproval_reason": disapproval_reason +"/adexchangebuyer:v1.3/Creative/disapprovalReasons/disapproval_reason/details": details +"/adexchangebuyer:v1.3/Creative/disapprovalReasons/disapproval_reason/details/detail": detail +"/adexchangebuyer:v1.3/Creative/disapprovalReasons/disapproval_reason/reason": reason +"/adexchangebuyer:v1.3/Creative/filteringReasons": filtering_reasons +"/adexchangebuyer:v1.3/Creative/filteringReasons/date": date +"/adexchangebuyer:v1.3/Creative/filteringReasons/reasons": reasons +"/adexchangebuyer:v1.3/Creative/filteringReasons/reasons/reason": reason +"/adexchangebuyer:v1.3/Creative/filteringReasons/reasons/reason/filteringCount": filtering_count +"/adexchangebuyer:v1.3/Creative/filteringReasons/reasons/reason/filteringStatus": filtering_status +"/adexchangebuyer:v1.3/Creative/height": height +"/adexchangebuyer:v1.3/Creative/impressionTrackingUrl": impression_tracking_url +"/adexchangebuyer:v1.3/Creative/impressionTrackingUrl/impression_tracking_url": impression_tracking_url +"/adexchangebuyer:v1.3/Creative/kind": kind +"/adexchangebuyer:v1.3/Creative/nativeAd": native_ad +"/adexchangebuyer:v1.3/Creative/nativeAd/advertiser": advertiser +"/adexchangebuyer:v1.3/Creative/nativeAd/appIcon": app_icon +"/adexchangebuyer:v1.3/Creative/nativeAd/appIcon/height": height +"/adexchangebuyer:v1.3/Creative/nativeAd/appIcon/url": url +"/adexchangebuyer:v1.3/Creative/nativeAd/appIcon/width": width +"/adexchangebuyer:v1.3/Creative/nativeAd/body": body +"/adexchangebuyer:v1.3/Creative/nativeAd/callToAction": call_to_action +"/adexchangebuyer:v1.3/Creative/nativeAd/clickTrackingUrl": click_tracking_url +"/adexchangebuyer:v1.3/Creative/nativeAd/headline": headline +"/adexchangebuyer:v1.3/Creative/nativeAd/image": image +"/adexchangebuyer:v1.3/Creative/nativeAd/image/height": height +"/adexchangebuyer:v1.3/Creative/nativeAd/image/url": url +"/adexchangebuyer:v1.3/Creative/nativeAd/image/width": width +"/adexchangebuyer:v1.3/Creative/nativeAd/impressionTrackingUrl": impression_tracking_url +"/adexchangebuyer:v1.3/Creative/nativeAd/impressionTrackingUrl/impression_tracking_url": impression_tracking_url +"/adexchangebuyer:v1.3/Creative/nativeAd/logo": logo +"/adexchangebuyer:v1.3/Creative/nativeAd/logo/height": height +"/adexchangebuyer:v1.3/Creative/nativeAd/logo/url": url +"/adexchangebuyer:v1.3/Creative/nativeAd/logo/width": width +"/adexchangebuyer:v1.3/Creative/nativeAd/price": price +"/adexchangebuyer:v1.3/Creative/nativeAd/starRating": star_rating +"/adexchangebuyer:v1.3/Creative/nativeAd/store": store +"/adexchangebuyer:v1.3/Creative/productCategories": product_categories +"/adexchangebuyer:v1.3/Creative/productCategories/product_category": product_category +"/adexchangebuyer:v1.3/Creative/restrictedCategories": restricted_categories +"/adexchangebuyer:v1.3/Creative/restrictedCategories/restricted_category": restricted_category +"/adexchangebuyer:v1.3/Creative/sensitiveCategories": sensitive_categories +"/adexchangebuyer:v1.3/Creative/sensitiveCategories/sensitive_category": sensitive_category +"/adexchangebuyer:v1.3/Creative/status": status +"/adexchangebuyer:v1.3/Creative/vendorType": vendor_type +"/adexchangebuyer:v1.3/Creative/vendorType/vendor_type": vendor_type +"/adexchangebuyer:v1.3/Creative/version": version +"/adexchangebuyer:v1.3/Creative/videoURL": video_url +"/adexchangebuyer:v1.3/Creative/width": width +"/adexchangebuyer:v1.3/CreativesList": creatives_list +"/adexchangebuyer:v1.3/CreativesList/items": items +"/adexchangebuyer:v1.3/CreativesList/items/item": item +"/adexchangebuyer:v1.3/CreativesList/kind": kind +"/adexchangebuyer:v1.3/CreativesList/nextPageToken": next_page_token +"/adexchangebuyer:v1.3/DirectDeal": direct_deal +"/adexchangebuyer:v1.3/DirectDeal/accountId": account_id +"/adexchangebuyer:v1.3/DirectDeal/advertiser": advertiser +"/adexchangebuyer:v1.3/DirectDeal/allowsAlcohol": allows_alcohol +"/adexchangebuyer:v1.3/DirectDeal/buyerAccountId": buyer_account_id +"/adexchangebuyer:v1.3/DirectDeal/currencyCode": currency_code +"/adexchangebuyer:v1.3/DirectDeal/dealTier": deal_tier +"/adexchangebuyer:v1.3/DirectDeal/endTime": end_time +"/adexchangebuyer:v1.3/DirectDeal/fixedCpm": fixed_cpm +"/adexchangebuyer:v1.3/DirectDeal/id": id +"/adexchangebuyer:v1.3/DirectDeal/kind": kind +"/adexchangebuyer:v1.3/DirectDeal/name": name +"/adexchangebuyer:v1.3/DirectDeal/privateExchangeMinCpm": private_exchange_min_cpm +"/adexchangebuyer:v1.3/DirectDeal/publisherBlocksOverriden": publisher_blocks_overriden +"/adexchangebuyer:v1.3/DirectDeal/sellerNetwork": seller_network +"/adexchangebuyer:v1.3/DirectDeal/startTime": start_time +"/adexchangebuyer:v1.3/DirectDealsList": direct_deals_list +"/adexchangebuyer:v1.3/DirectDealsList/directDeals": direct_deals +"/adexchangebuyer:v1.3/DirectDealsList/directDeals/direct_deal": direct_deal +"/adexchangebuyer:v1.3/DirectDealsList/kind": kind +"/adexchangebuyer:v1.3/PerformanceReport": performance_report +"/adexchangebuyer:v1.3/PerformanceReport/bidRate": bid_rate +"/adexchangebuyer:v1.3/PerformanceReport/bidRequestRate": bid_request_rate +"/adexchangebuyer:v1.3/PerformanceReport/calloutStatusRate": callout_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/calloutStatusRate/callout_status_rate": callout_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/cookieMatcherStatusRate": cookie_matcher_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/cookieMatcherStatusRate/cookie_matcher_status_rate": cookie_matcher_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/creativeStatusRate": creative_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/creativeStatusRate/creative_status_rate": creative_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/filteredBidRate": filtered_bid_rate +"/adexchangebuyer:v1.3/PerformanceReport/hostedMatchStatusRate": hosted_match_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/hostedMatchStatusRate/hosted_match_status_rate": hosted_match_status_rate +"/adexchangebuyer:v1.3/PerformanceReport/inventoryMatchRate": inventory_match_rate +"/adexchangebuyer:v1.3/PerformanceReport/kind": kind "/adexchangebuyer:v1.3/PerformanceReport/latency50thPercentile": latency_50th_percentile "/adexchangebuyer:v1.3/PerformanceReport/latency85thPercentile": latency_85th_percentile "/adexchangebuyer:v1.3/PerformanceReport/latency95thPercentile": latency_95th_percentile +"/adexchangebuyer:v1.3/PerformanceReport/noQuotaInRegion": no_quota_in_region +"/adexchangebuyer:v1.3/PerformanceReport/outOfQuota": out_of_quota +"/adexchangebuyer:v1.3/PerformanceReport/pixelMatchRequests": pixel_match_requests +"/adexchangebuyer:v1.3/PerformanceReport/pixelMatchResponses": pixel_match_responses +"/adexchangebuyer:v1.3/PerformanceReport/quotaConfiguredLimit": quota_configured_limit +"/adexchangebuyer:v1.3/PerformanceReport/quotaThrottledLimit": quota_throttled_limit +"/adexchangebuyer:v1.3/PerformanceReport/region": region +"/adexchangebuyer:v1.3/PerformanceReport/successfulRequestRate": successful_request_rate +"/adexchangebuyer:v1.3/PerformanceReport/timestamp": timestamp +"/adexchangebuyer:v1.3/PerformanceReport/unsuccessfulRequestRate": unsuccessful_request_rate +"/adexchangebuyer:v1.3/PerformanceReportList": performance_report_list +"/adexchangebuyer:v1.3/PerformanceReportList/kind": kind +"/adexchangebuyer:v1.3/PerformanceReportList/performanceReport": performance_report +"/adexchangebuyer:v1.3/PerformanceReportList/performanceReport/performance_report": performance_report +"/adexchangebuyer:v1.3/PretargetingConfig": pretargeting_config +"/adexchangebuyer:v1.3/PretargetingConfig/billingId": billing_id +"/adexchangebuyer:v1.3/PretargetingConfig/configId": config_id +"/adexchangebuyer:v1.3/PretargetingConfig/configName": config_name +"/adexchangebuyer:v1.3/PretargetingConfig/creativeType": creative_type +"/adexchangebuyer:v1.3/PretargetingConfig/creativeType/creative_type": creative_type +"/adexchangebuyer:v1.3/PretargetingConfig/dimensions": dimensions +"/adexchangebuyer:v1.3/PretargetingConfig/dimensions/dimension": dimension +"/adexchangebuyer:v1.3/PretargetingConfig/dimensions/dimension/height": height +"/adexchangebuyer:v1.3/PretargetingConfig/dimensions/dimension/width": width +"/adexchangebuyer:v1.3/PretargetingConfig/excludedContentLabels": excluded_content_labels +"/adexchangebuyer:v1.3/PretargetingConfig/excludedContentLabels/excluded_content_label": excluded_content_label +"/adexchangebuyer:v1.3/PretargetingConfig/excludedGeoCriteriaIds": excluded_geo_criteria_ids +"/adexchangebuyer:v1.3/PretargetingConfig/excludedGeoCriteriaIds/excluded_geo_criteria_id": excluded_geo_criteria_id +"/adexchangebuyer:v1.3/PretargetingConfig/excludedPlacements": excluded_placements +"/adexchangebuyer:v1.3/PretargetingConfig/excludedPlacements/excluded_placement": excluded_placement +"/adexchangebuyer:v1.3/PretargetingConfig/excludedPlacements/excluded_placement/token": token +"/adexchangebuyer:v1.3/PretargetingConfig/excludedPlacements/excluded_placement/type": type +"/adexchangebuyer:v1.3/PretargetingConfig/excludedUserLists": excluded_user_lists +"/adexchangebuyer:v1.3/PretargetingConfig/excludedUserLists/excluded_user_list": excluded_user_list +"/adexchangebuyer:v1.3/PretargetingConfig/excludedVerticals": excluded_verticals +"/adexchangebuyer:v1.3/PretargetingConfig/excludedVerticals/excluded_vertical": excluded_vertical +"/adexchangebuyer:v1.3/PretargetingConfig/geoCriteriaIds": geo_criteria_ids +"/adexchangebuyer:v1.3/PretargetingConfig/geoCriteriaIds/geo_criteria_id": geo_criteria_id +"/adexchangebuyer:v1.3/PretargetingConfig/isActive": is_active +"/adexchangebuyer:v1.3/PretargetingConfig/kind": kind +"/adexchangebuyer:v1.3/PretargetingConfig/languages": languages +"/adexchangebuyer:v1.3/PretargetingConfig/languages/language": language +"/adexchangebuyer:v1.3/PretargetingConfig/mobileCarriers": mobile_carriers +"/adexchangebuyer:v1.3/PretargetingConfig/mobileCarriers/mobile_carrier": mobile_carrier +"/adexchangebuyer:v1.3/PretargetingConfig/mobileDevices": mobile_devices +"/adexchangebuyer:v1.3/PretargetingConfig/mobileDevices/mobile_device": mobile_device +"/adexchangebuyer:v1.3/PretargetingConfig/mobileOperatingSystemVersions": mobile_operating_system_versions +"/adexchangebuyer:v1.3/PretargetingConfig/mobileOperatingSystemVersions/mobile_operating_system_version": mobile_operating_system_version +"/adexchangebuyer:v1.3/PretargetingConfig/placements": placements +"/adexchangebuyer:v1.3/PretargetingConfig/placements/placement": placement +"/adexchangebuyer:v1.3/PretargetingConfig/placements/placement/token": token +"/adexchangebuyer:v1.3/PretargetingConfig/placements/placement/type": type +"/adexchangebuyer:v1.3/PretargetingConfig/platforms": platforms +"/adexchangebuyer:v1.3/PretargetingConfig/platforms/platform": platform +"/adexchangebuyer:v1.3/PretargetingConfig/supportedCreativeAttributes": supported_creative_attributes +"/adexchangebuyer:v1.3/PretargetingConfig/supportedCreativeAttributes/supported_creative_attribute": supported_creative_attribute +"/adexchangebuyer:v1.3/PretargetingConfig/userLists": user_lists +"/adexchangebuyer:v1.3/PretargetingConfig/userLists/user_list": user_list +"/adexchangebuyer:v1.3/PretargetingConfig/vendorTypes": vendor_types +"/adexchangebuyer:v1.3/PretargetingConfig/vendorTypes/vendor_type": vendor_type +"/adexchangebuyer:v1.3/PretargetingConfig/verticals": verticals +"/adexchangebuyer:v1.3/PretargetingConfig/verticals/vertical": vertical +"/adexchangebuyer:v1.3/PretargetingConfigList": pretargeting_config_list +"/adexchangebuyer:v1.3/PretargetingConfigList/items": items +"/adexchangebuyer:v1.3/PretargetingConfigList/items/item": item +"/adexchangebuyer:v1.3/PretargetingConfigList/kind": kind +"/adexchangebuyer:v1.3/adexchangebuyer.accounts.get": get_account +"/adexchangebuyer:v1.3/adexchangebuyer.accounts.get/id": id +"/adexchangebuyer:v1.3/adexchangebuyer.accounts.list": list_accounts +"/adexchangebuyer:v1.3/adexchangebuyer.accounts.patch": patch_account +"/adexchangebuyer:v1.3/adexchangebuyer.accounts.patch/id": id +"/adexchangebuyer:v1.3/adexchangebuyer.accounts.update": update_account +"/adexchangebuyer:v1.3/adexchangebuyer.accounts.update/id": id +"/adexchangebuyer:v1.3/adexchangebuyer.billingInfo.get": get_billing_info +"/adexchangebuyer:v1.3/adexchangebuyer.billingInfo.get/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.billingInfo.list": list_billing_infos +"/adexchangebuyer:v1.3/adexchangebuyer.budget.get": get_budget +"/adexchangebuyer:v1.3/adexchangebuyer.budget.get/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.budget.get/billingId": billing_id +"/adexchangebuyer:v1.3/adexchangebuyer.budget.patch": patch_budget +"/adexchangebuyer:v1.3/adexchangebuyer.budget.patch/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.budget.patch/billingId": billing_id +"/adexchangebuyer:v1.3/adexchangebuyer.budget.update": update_budget +"/adexchangebuyer:v1.3/adexchangebuyer.budget.update/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.budget.update/billingId": billing_id +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.get": get_creative +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.get/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.get/buyerCreativeId": buyer_creative_id +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.insert": insert_creative +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.list": list_creatives +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.list/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.list/buyerCreativeId": buyer_creative_id +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.list/maxResults": max_results +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.list/pageToken": page_token +"/adexchangebuyer:v1.3/adexchangebuyer.creatives.list/statusFilter": status_filter +"/adexchangebuyer:v1.3/adexchangebuyer.directDeals.get": get_direct_deal +"/adexchangebuyer:v1.3/adexchangebuyer.directDeals.get/id": id +"/adexchangebuyer:v1.3/adexchangebuyer.directDeals.list": list_direct_deals +"/adexchangebuyer:v1.3/adexchangebuyer.performanceReport.list": list_performance_reports +"/adexchangebuyer:v1.3/adexchangebuyer.performanceReport.list/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.performanceReport.list/endDateTime": end_date_time +"/adexchangebuyer:v1.3/adexchangebuyer.performanceReport.list/maxResults": max_results +"/adexchangebuyer:v1.3/adexchangebuyer.performanceReport.list/pageToken": page_token +"/adexchangebuyer:v1.3/adexchangebuyer.performanceReport.list/startDateTime": start_date_time +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.delete": delete_pretargeting_config +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.delete/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.delete/configId": config_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.get": get_pretargeting_config +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.get/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.get/configId": config_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.insert": insert_pretargeting_config +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.insert/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.list": list_pretargeting_configs +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.list/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.patch": patch_pretargeting_config +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.patch/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.patch/configId": config_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.update": update_pretargeting_config +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.update/accountId": account_id +"/adexchangebuyer:v1.3/adexchangebuyer.pretargetingConfig.update/configId": config_id +"/adexchangebuyer:v1.3/fields": fields +"/adexchangebuyer:v1.3/key": key +"/adexchangebuyer:v1.3/quotaUser": quota_user +"/adexchangebuyer:v1.3/userIp": user_ip "/adexchangebuyer:v1.4/Account": account "/adexchangebuyer:v1.4/Account/bidderLocation": bidder_location "/adexchangebuyer:v1.4/Account/bidderLocation/bidder_location": bidder_location @@ -1086,6 +1437,323 @@ "/adexchangebuyer:v1.4/key": key "/adexchangebuyer:v1.4/quotaUser": quota_user "/adexchangebuyer:v1.4/userIp": user_ip +"/adexchangeseller:v1.1/Account": account +"/adexchangeseller:v1.1/Account/id": id +"/adexchangeseller:v1.1/Account/kind": kind +"/adexchangeseller:v1.1/Account/name": name +"/adexchangeseller:v1.1/AdClient": ad_client +"/adexchangeseller:v1.1/AdClient/arcOptIn": arc_opt_in +"/adexchangeseller:v1.1/AdClient/id": id +"/adexchangeseller:v1.1/AdClient/kind": kind +"/adexchangeseller:v1.1/AdClient/productCode": product_code +"/adexchangeseller:v1.1/AdClient/supportsReporting": supports_reporting +"/adexchangeseller:v1.1/AdClients": ad_clients +"/adexchangeseller:v1.1/AdClients/etag": etag +"/adexchangeseller:v1.1/AdClients/items": items +"/adexchangeseller:v1.1/AdClients/items/item": item +"/adexchangeseller:v1.1/AdClients/kind": kind +"/adexchangeseller:v1.1/AdClients/nextPageToken": next_page_token +"/adexchangeseller:v1.1/AdUnit": ad_unit +"/adexchangeseller:v1.1/AdUnit/code": code +"/adexchangeseller:v1.1/AdUnit/id": id +"/adexchangeseller:v1.1/AdUnit/kind": kind +"/adexchangeseller:v1.1/AdUnit/name": name +"/adexchangeseller:v1.1/AdUnit/status": status +"/adexchangeseller:v1.1/AdUnits": ad_units +"/adexchangeseller:v1.1/AdUnits/etag": etag +"/adexchangeseller:v1.1/AdUnits/items": items +"/adexchangeseller:v1.1/AdUnits/items/item": item +"/adexchangeseller:v1.1/AdUnits/kind": kind +"/adexchangeseller:v1.1/AdUnits/nextPageToken": next_page_token +"/adexchangeseller:v1.1/Alert": alert +"/adexchangeseller:v1.1/Alert/id": id +"/adexchangeseller:v1.1/Alert/kind": kind +"/adexchangeseller:v1.1/Alert/message": message +"/adexchangeseller:v1.1/Alert/severity": severity +"/adexchangeseller:v1.1/Alert/type": type +"/adexchangeseller:v1.1/Alerts": alerts +"/adexchangeseller:v1.1/Alerts/items": items +"/adexchangeseller:v1.1/Alerts/items/item": item +"/adexchangeseller:v1.1/Alerts/kind": kind +"/adexchangeseller:v1.1/CustomChannel": custom_channel +"/adexchangeseller:v1.1/CustomChannel/code": code +"/adexchangeseller:v1.1/CustomChannel/id": id +"/adexchangeseller:v1.1/CustomChannel/kind": kind +"/adexchangeseller:v1.1/CustomChannel/name": name +"/adexchangeseller:v1.1/CustomChannel/targetingInfo": targeting_info +"/adexchangeseller:v1.1/CustomChannel/targetingInfo/adsAppearOn": ads_appear_on +"/adexchangeseller:v1.1/CustomChannel/targetingInfo/description": description +"/adexchangeseller:v1.1/CustomChannel/targetingInfo/location": location +"/adexchangeseller:v1.1/CustomChannel/targetingInfo/siteLanguage": site_language +"/adexchangeseller:v1.1/CustomChannels": custom_channels +"/adexchangeseller:v1.1/CustomChannels/etag": etag +"/adexchangeseller:v1.1/CustomChannels/items": items +"/adexchangeseller:v1.1/CustomChannels/items/item": item +"/adexchangeseller:v1.1/CustomChannels/kind": kind +"/adexchangeseller:v1.1/CustomChannels/nextPageToken": next_page_token +"/adexchangeseller:v1.1/Metadata": metadata +"/adexchangeseller:v1.1/Metadata/items": items +"/adexchangeseller:v1.1/Metadata/items/item": item +"/adexchangeseller:v1.1/Metadata/kind": kind +"/adexchangeseller:v1.1/PreferredDeal": preferred_deal +"/adexchangeseller:v1.1/PreferredDeal/advertiserName": advertiser_name +"/adexchangeseller:v1.1/PreferredDeal/buyerNetworkName": buyer_network_name +"/adexchangeseller:v1.1/PreferredDeal/currencyCode": currency_code +"/adexchangeseller:v1.1/PreferredDeal/endTime": end_time +"/adexchangeseller:v1.1/PreferredDeal/fixedCpm": fixed_cpm +"/adexchangeseller:v1.1/PreferredDeal/id": id +"/adexchangeseller:v1.1/PreferredDeal/kind": kind +"/adexchangeseller:v1.1/PreferredDeal/startTime": start_time +"/adexchangeseller:v1.1/PreferredDeals": preferred_deals +"/adexchangeseller:v1.1/PreferredDeals/items": items +"/adexchangeseller:v1.1/PreferredDeals/items/item": item +"/adexchangeseller:v1.1/PreferredDeals/kind": kind +"/adexchangeseller:v1.1/Report": report +"/adexchangeseller:v1.1/Report/averages": averages +"/adexchangeseller:v1.1/Report/averages/average": average +"/adexchangeseller:v1.1/Report/headers": headers +"/adexchangeseller:v1.1/Report/headers/header": header +"/adexchangeseller:v1.1/Report/headers/header/currency": currency +"/adexchangeseller:v1.1/Report/headers/header/name": name +"/adexchangeseller:v1.1/Report/headers/header/type": type +"/adexchangeseller:v1.1/Report/kind": kind +"/adexchangeseller:v1.1/Report/rows": rows +"/adexchangeseller:v1.1/Report/rows/row": row +"/adexchangeseller:v1.1/Report/rows/row/row": row +"/adexchangeseller:v1.1/Report/totalMatchedRows": total_matched_rows +"/adexchangeseller:v1.1/Report/totals": totals +"/adexchangeseller:v1.1/Report/totals/total": total +"/adexchangeseller:v1.1/Report/warnings": warnings +"/adexchangeseller:v1.1/Report/warnings/warning": warning +"/adexchangeseller:v1.1/ReportingMetadataEntry": reporting_metadata_entry +"/adexchangeseller:v1.1/ReportingMetadataEntry/compatibleDimensions": compatible_dimensions +"/adexchangeseller:v1.1/ReportingMetadataEntry/compatibleDimensions/compatible_dimension": compatible_dimension +"/adexchangeseller:v1.1/ReportingMetadataEntry/compatibleMetrics": compatible_metrics +"/adexchangeseller:v1.1/ReportingMetadataEntry/compatibleMetrics/compatible_metric": compatible_metric +"/adexchangeseller:v1.1/ReportingMetadataEntry/id": id +"/adexchangeseller:v1.1/ReportingMetadataEntry/kind": kind +"/adexchangeseller:v1.1/ReportingMetadataEntry/requiredDimensions": required_dimensions +"/adexchangeseller:v1.1/ReportingMetadataEntry/requiredDimensions/required_dimension": required_dimension +"/adexchangeseller:v1.1/ReportingMetadataEntry/requiredMetrics": required_metrics +"/adexchangeseller:v1.1/ReportingMetadataEntry/requiredMetrics/required_metric": required_metric +"/adexchangeseller:v1.1/ReportingMetadataEntry/supportedProducts": supported_products +"/adexchangeseller:v1.1/ReportingMetadataEntry/supportedProducts/supported_product": supported_product +"/adexchangeseller:v1.1/SavedReport": saved_report +"/adexchangeseller:v1.1/SavedReport/id": id +"/adexchangeseller:v1.1/SavedReport/kind": kind +"/adexchangeseller:v1.1/SavedReport/name": name +"/adexchangeseller:v1.1/SavedReports": saved_reports +"/adexchangeseller:v1.1/SavedReports/etag": etag +"/adexchangeseller:v1.1/SavedReports/items": items +"/adexchangeseller:v1.1/SavedReports/items/item": item +"/adexchangeseller:v1.1/SavedReports/kind": kind +"/adexchangeseller:v1.1/SavedReports/nextPageToken": next_page_token +"/adexchangeseller:v1.1/UrlChannel": url_channel +"/adexchangeseller:v1.1/UrlChannel/id": id +"/adexchangeseller:v1.1/UrlChannel/kind": kind +"/adexchangeseller:v1.1/UrlChannel/urlPattern": url_pattern +"/adexchangeseller:v1.1/UrlChannels": url_channels +"/adexchangeseller:v1.1/UrlChannels/etag": etag +"/adexchangeseller:v1.1/UrlChannels/items": items +"/adexchangeseller:v1.1/UrlChannels/items/item": item +"/adexchangeseller:v1.1/UrlChannels/kind": kind +"/adexchangeseller:v1.1/UrlChannels/nextPageToken": next_page_token +"/adexchangeseller:v1.1/adexchangeseller.accounts.get": get_account +"/adexchangeseller:v1.1/adexchangeseller.accounts.get/accountId": account_id +"/adexchangeseller:v1.1/adexchangeseller.adclients.list": list_adclients +"/adexchangeseller:v1.1/adexchangeseller.adclients.list/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.adclients.list/pageToken": page_token +"/adexchangeseller:v1.1/adexchangeseller.adunits.customchannels.list": list_adunit_customchannels +"/adexchangeseller:v1.1/adexchangeseller.adunits.customchannels.list/adClientId": ad_client_id +"/adexchangeseller:v1.1/adexchangeseller.adunits.customchannels.list/adUnitId": ad_unit_id +"/adexchangeseller:v1.1/adexchangeseller.adunits.customchannels.list/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.adunits.customchannels.list/pageToken": page_token +"/adexchangeseller:v1.1/adexchangeseller.adunits.get": get_adunit +"/adexchangeseller:v1.1/adexchangeseller.adunits.get/adClientId": ad_client_id +"/adexchangeseller:v1.1/adexchangeseller.adunits.get/adUnitId": ad_unit_id +"/adexchangeseller:v1.1/adexchangeseller.adunits.list": list_adunits +"/adexchangeseller:v1.1/adexchangeseller.adunits.list/adClientId": ad_client_id +"/adexchangeseller:v1.1/adexchangeseller.adunits.list/includeInactive": include_inactive +"/adexchangeseller:v1.1/adexchangeseller.adunits.list/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.adunits.list/pageToken": page_token +"/adexchangeseller:v1.1/adexchangeseller.alerts.list": list_alerts +"/adexchangeseller:v1.1/adexchangeseller.alerts.list/locale": locale +"/adexchangeseller:v1.1/adexchangeseller.customchannels.adunits.list": list_customchannel_adunits +"/adexchangeseller:v1.1/adexchangeseller.customchannels.adunits.list/adClientId": ad_client_id +"/adexchangeseller:v1.1/adexchangeseller.customchannels.adunits.list/customChannelId": custom_channel_id +"/adexchangeseller:v1.1/adexchangeseller.customchannels.adunits.list/includeInactive": include_inactive +"/adexchangeseller:v1.1/adexchangeseller.customchannels.adunits.list/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.customchannels.adunits.list/pageToken": page_token +"/adexchangeseller:v1.1/adexchangeseller.customchannels.get": get_customchannel +"/adexchangeseller:v1.1/adexchangeseller.customchannels.get/adClientId": ad_client_id +"/adexchangeseller:v1.1/adexchangeseller.customchannels.get/customChannelId": custom_channel_id +"/adexchangeseller:v1.1/adexchangeseller.customchannels.list": list_customchannels +"/adexchangeseller:v1.1/adexchangeseller.customchannels.list/adClientId": ad_client_id +"/adexchangeseller:v1.1/adexchangeseller.customchannels.list/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.customchannels.list/pageToken": page_token +"/adexchangeseller:v1.1/adexchangeseller.metadata.dimensions.list": list_metadatum_dimensions +"/adexchangeseller:v1.1/adexchangeseller.metadata.metrics.list": list_metadatum_metrics +"/adexchangeseller:v1.1/adexchangeseller.preferreddeals.get": get_preferreddeal +"/adexchangeseller:v1.1/adexchangeseller.preferreddeals.get/dealId": deal_id +"/adexchangeseller:v1.1/adexchangeseller.preferreddeals.list": list_preferreddeals +"/adexchangeseller:v1.1/adexchangeseller.reports.generate": generate_report +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/dimension": dimension +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/endDate": end_date +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/filter": filter +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/locale": locale +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/metric": metric +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/sort": sort +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/startDate": start_date +"/adexchangeseller:v1.1/adexchangeseller.reports.generate/startIndex": start_index +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.generate": generate_report_saved +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.generate/locale": locale +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.generate/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.generate/savedReportId": saved_report_id +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.generate/startIndex": start_index +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.list": list_report_saveds +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.list/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.reports.saved.list/pageToken": page_token +"/adexchangeseller:v1.1/adexchangeseller.urlchannels.list": list_urlchannels +"/adexchangeseller:v1.1/adexchangeseller.urlchannels.list/adClientId": ad_client_id +"/adexchangeseller:v1.1/adexchangeseller.urlchannels.list/maxResults": max_results +"/adexchangeseller:v1.1/adexchangeseller.urlchannels.list/pageToken": page_token +"/adexchangeseller:v1.1/fields": fields +"/adexchangeseller:v1.1/key": key +"/adexchangeseller:v1.1/quotaUser": quota_user +"/adexchangeseller:v1.1/userIp": user_ip +"/adexchangeseller:v1/AdClient": ad_client +"/adexchangeseller:v1/AdClient/arcOptIn": arc_opt_in +"/adexchangeseller:v1/AdClient/id": id +"/adexchangeseller:v1/AdClient/kind": kind +"/adexchangeseller:v1/AdClient/productCode": product_code +"/adexchangeseller:v1/AdClient/supportsReporting": supports_reporting +"/adexchangeseller:v1/AdClients": ad_clients +"/adexchangeseller:v1/AdClients/etag": etag +"/adexchangeseller:v1/AdClients/items": items +"/adexchangeseller:v1/AdClients/items/item": item +"/adexchangeseller:v1/AdClients/kind": kind +"/adexchangeseller:v1/AdClients/nextPageToken": next_page_token +"/adexchangeseller:v1/AdUnit": ad_unit +"/adexchangeseller:v1/AdUnit/code": code +"/adexchangeseller:v1/AdUnit/id": id +"/adexchangeseller:v1/AdUnit/kind": kind +"/adexchangeseller:v1/AdUnit/name": name +"/adexchangeseller:v1/AdUnit/status": status +"/adexchangeseller:v1/AdUnits": ad_units +"/adexchangeseller:v1/AdUnits/etag": etag +"/adexchangeseller:v1/AdUnits/items": items +"/adexchangeseller:v1/AdUnits/items/item": item +"/adexchangeseller:v1/AdUnits/kind": kind +"/adexchangeseller:v1/AdUnits/nextPageToken": next_page_token +"/adexchangeseller:v1/CustomChannel": custom_channel +"/adexchangeseller:v1/CustomChannel/code": code +"/adexchangeseller:v1/CustomChannel/id": id +"/adexchangeseller:v1/CustomChannel/kind": kind +"/adexchangeseller:v1/CustomChannel/name": name +"/adexchangeseller:v1/CustomChannel/targetingInfo": targeting_info +"/adexchangeseller:v1/CustomChannel/targetingInfo/adsAppearOn": ads_appear_on +"/adexchangeseller:v1/CustomChannel/targetingInfo/description": description +"/adexchangeseller:v1/CustomChannel/targetingInfo/location": location +"/adexchangeseller:v1/CustomChannel/targetingInfo/siteLanguage": site_language +"/adexchangeseller:v1/CustomChannels": custom_channels +"/adexchangeseller:v1/CustomChannels/etag": etag +"/adexchangeseller:v1/CustomChannels/items": items +"/adexchangeseller:v1/CustomChannels/items/item": item +"/adexchangeseller:v1/CustomChannels/kind": kind +"/adexchangeseller:v1/CustomChannels/nextPageToken": next_page_token +"/adexchangeseller:v1/Report": report +"/adexchangeseller:v1/Report/averages": averages +"/adexchangeseller:v1/Report/averages/average": average +"/adexchangeseller:v1/Report/headers": headers +"/adexchangeseller:v1/Report/headers/header": header +"/adexchangeseller:v1/Report/headers/header/currency": currency +"/adexchangeseller:v1/Report/headers/header/name": name +"/adexchangeseller:v1/Report/headers/header/type": type +"/adexchangeseller:v1/Report/kind": kind +"/adexchangeseller:v1/Report/rows": rows +"/adexchangeseller:v1/Report/rows/row": row +"/adexchangeseller:v1/Report/rows/row/row": row +"/adexchangeseller:v1/Report/totalMatchedRows": total_matched_rows +"/adexchangeseller:v1/Report/totals": totals +"/adexchangeseller:v1/Report/totals/total": total +"/adexchangeseller:v1/Report/warnings": warnings +"/adexchangeseller:v1/Report/warnings/warning": warning +"/adexchangeseller:v1/SavedReport": saved_report +"/adexchangeseller:v1/SavedReport/id": id +"/adexchangeseller:v1/SavedReport/kind": kind +"/adexchangeseller:v1/SavedReport/name": name +"/adexchangeseller:v1/SavedReports": saved_reports +"/adexchangeseller:v1/SavedReports/etag": etag +"/adexchangeseller:v1/SavedReports/items": items +"/adexchangeseller:v1/SavedReports/items/item": item +"/adexchangeseller:v1/SavedReports/kind": kind +"/adexchangeseller:v1/SavedReports/nextPageToken": next_page_token +"/adexchangeseller:v1/UrlChannel": url_channel +"/adexchangeseller:v1/UrlChannel/id": id +"/adexchangeseller:v1/UrlChannel/kind": kind +"/adexchangeseller:v1/UrlChannel/urlPattern": url_pattern +"/adexchangeseller:v1/UrlChannels": url_channels +"/adexchangeseller:v1/UrlChannels/etag": etag +"/adexchangeseller:v1/UrlChannels/items": items +"/adexchangeseller:v1/UrlChannels/items/item": item +"/adexchangeseller:v1/UrlChannels/kind": kind +"/adexchangeseller:v1/UrlChannels/nextPageToken": next_page_token +"/adexchangeseller:v1/adexchangeseller.adclients.list": list_adclients +"/adexchangeseller:v1/adexchangeseller.adclients.list/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.adclients.list/pageToken": page_token +"/adexchangeseller:v1/adexchangeseller.adunits.customchannels.list": list_adunit_customchannels +"/adexchangeseller:v1/adexchangeseller.adunits.customchannels.list/adClientId": ad_client_id +"/adexchangeseller:v1/adexchangeseller.adunits.customchannels.list/adUnitId": ad_unit_id +"/adexchangeseller:v1/adexchangeseller.adunits.customchannels.list/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.adunits.customchannels.list/pageToken": page_token +"/adexchangeseller:v1/adexchangeseller.adunits.get": get_adunit +"/adexchangeseller:v1/adexchangeseller.adunits.get/adClientId": ad_client_id +"/adexchangeseller:v1/adexchangeseller.adunits.get/adUnitId": ad_unit_id +"/adexchangeseller:v1/adexchangeseller.adunits.list": list_adunits +"/adexchangeseller:v1/adexchangeseller.adunits.list/adClientId": ad_client_id +"/adexchangeseller:v1/adexchangeseller.adunits.list/includeInactive": include_inactive +"/adexchangeseller:v1/adexchangeseller.adunits.list/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.adunits.list/pageToken": page_token +"/adexchangeseller:v1/adexchangeseller.customchannels.adunits.list": list_customchannel_adunits +"/adexchangeseller:v1/adexchangeseller.customchannels.adunits.list/adClientId": ad_client_id +"/adexchangeseller:v1/adexchangeseller.customchannels.adunits.list/customChannelId": custom_channel_id +"/adexchangeseller:v1/adexchangeseller.customchannels.adunits.list/includeInactive": include_inactive +"/adexchangeseller:v1/adexchangeseller.customchannels.adunits.list/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.customchannels.adunits.list/pageToken": page_token +"/adexchangeseller:v1/adexchangeseller.customchannels.get": get_customchannel +"/adexchangeseller:v1/adexchangeseller.customchannels.get/adClientId": ad_client_id +"/adexchangeseller:v1/adexchangeseller.customchannels.get/customChannelId": custom_channel_id +"/adexchangeseller:v1/adexchangeseller.customchannels.list": list_customchannels +"/adexchangeseller:v1/adexchangeseller.customchannels.list/adClientId": ad_client_id +"/adexchangeseller:v1/adexchangeseller.customchannels.list/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.customchannels.list/pageToken": page_token +"/adexchangeseller:v1/adexchangeseller.reports.generate": generate_report +"/adexchangeseller:v1/adexchangeseller.reports.generate/dimension": dimension +"/adexchangeseller:v1/adexchangeseller.reports.generate/endDate": end_date +"/adexchangeseller:v1/adexchangeseller.reports.generate/filter": filter +"/adexchangeseller:v1/adexchangeseller.reports.generate/locale": locale +"/adexchangeseller:v1/adexchangeseller.reports.generate/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.reports.generate/metric": metric +"/adexchangeseller:v1/adexchangeseller.reports.generate/sort": sort +"/adexchangeseller:v1/adexchangeseller.reports.generate/startDate": start_date +"/adexchangeseller:v1/adexchangeseller.reports.generate/startIndex": start_index +"/adexchangeseller:v1/adexchangeseller.reports.saved.generate": generate_report_saved +"/adexchangeseller:v1/adexchangeseller.reports.saved.generate/locale": locale +"/adexchangeseller:v1/adexchangeseller.reports.saved.generate/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.reports.saved.generate/savedReportId": saved_report_id +"/adexchangeseller:v1/adexchangeseller.reports.saved.generate/startIndex": start_index +"/adexchangeseller:v1/adexchangeseller.reports.saved.list": list_report_saveds +"/adexchangeseller:v1/adexchangeseller.reports.saved.list/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.reports.saved.list/pageToken": page_token +"/adexchangeseller:v1/adexchangeseller.urlchannels.list": list_urlchannels +"/adexchangeseller:v1/adexchangeseller.urlchannels.list/adClientId": ad_client_id +"/adexchangeseller:v1/adexchangeseller.urlchannels.list/maxResults": max_results +"/adexchangeseller:v1/adexchangeseller.urlchannels.list/pageToken": page_token +"/adexchangeseller:v1/fields": fields +"/adexchangeseller:v1/key": key +"/adexchangeseller:v1/quotaUser": quota_user +"/adexchangeseller:v1/userIp": user_ip "/adexchangeseller:v2.0/Account": account "/adexchangeseller:v2.0/Account/id": id "/adexchangeseller:v2.0/Account/kind": kind @@ -1433,6 +2101,9 @@ "/admin:directory_v1/ChromeOsDevices/etag": etag "/admin:directory_v1/ChromeOsDevices/kind": kind "/admin:directory_v1/ChromeOsDevices/nextPageToken": next_page_token +"/admin:directory_v1/ChromeOsMoveDevicesToOu": chrome_os_move_devices_to_ou +"/admin:directory_v1/ChromeOsMoveDevicesToOu/deviceIds": device_ids +"/admin:directory_v1/ChromeOsMoveDevicesToOu/deviceIds/device_id": device_id "/admin:directory_v1/Customer": customer "/admin:directory_v1/Customer/alternateEmail": alternate_email "/admin:directory_v1/Customer/customerCreationTime": customer_creation_time @@ -1711,6 +2382,7 @@ "/admin:directory_v1/User/isEnforcedIn2Sv": is_enforced_in2_sv "/admin:directory_v1/User/isEnrolledIn2Sv": is_enrolled_in2_sv "/admin:directory_v1/User/isMailboxSetup": is_mailbox_setup +"/admin:directory_v1/User/keywords": keywords "/admin:directory_v1/User/kind": kind "/admin:directory_v1/User/languages": languages "/admin:directory_v1/User/lastLoginTime": last_login_time @@ -1767,6 +2439,10 @@ "/admin:directory_v1/UserIm/primary": primary "/admin:directory_v1/UserIm/protocol": protocol "/admin:directory_v1/UserIm/type": type +"/admin:directory_v1/UserKeyword": user_keyword +"/admin:directory_v1/UserKeyword/customType": custom_type +"/admin:directory_v1/UserKeyword/type": type +"/admin:directory_v1/UserKeyword/value": value "/admin:directory_v1/UserLanguage": user_language "/admin:directory_v1/UserLanguage/customLanguage": custom_language "/admin:directory_v1/UserLanguage/languageCode": language_code @@ -1877,6 +2553,9 @@ "/admin:directory_v1/directory.chromeosdevices.list/projection": projection "/admin:directory_v1/directory.chromeosdevices.list/query": query "/admin:directory_v1/directory.chromeosdevices.list/sortOrder": sort_order +"/admin:directory_v1/directory.chromeosdevices.moveDevicesToOu": move_chromeosdevice_devices_to_ou +"/admin:directory_v1/directory.chromeosdevices.moveDevicesToOu/customerId": customer_id +"/admin:directory_v1/directory.chromeosdevices.moveDevicesToOu/orgUnitPath": org_unit_path "/admin:directory_v1/directory.chromeosdevices.patch": patch_chrome_os_device "/admin:directory_v1/directory.chromeosdevices.patch/customerId": customer_id "/admin:directory_v1/directory.chromeosdevices.patch/deviceId": device_id @@ -2826,6 +3505,42 @@ "/adsensehost:v4.1/key": key "/adsensehost:v4.1/quotaUser": quota_user "/adsensehost:v4.1/userIp": user_ip +"/analytics:v2.4/analytics.data.get": get_datum +"/analytics:v2.4/analytics.data.get/dimensions": dimensions +"/analytics:v2.4/analytics.data.get/end-date": end_date +"/analytics:v2.4/analytics.data.get/filters": filters +"/analytics:v2.4/analytics.data.get/ids": ids +"/analytics:v2.4/analytics.data.get/max-results": max_results +"/analytics:v2.4/analytics.data.get/metrics": metrics +"/analytics:v2.4/analytics.data.get/segment": segment +"/analytics:v2.4/analytics.data.get/sort": sort +"/analytics:v2.4/analytics.data.get/start-date": start_date +"/analytics:v2.4/analytics.data.get/start-index": start_index +"/analytics:v2.4/analytics.management.accounts.list": list_management_accounts +"/analytics:v2.4/analytics.management.accounts.list/max-results": max_results +"/analytics:v2.4/analytics.management.accounts.list/start-index": start_index +"/analytics:v2.4/analytics.management.goals.list": list_management_goals +"/analytics:v2.4/analytics.management.goals.list/accountId": account_id +"/analytics:v2.4/analytics.management.goals.list/max-results": max_results +"/analytics:v2.4/analytics.management.goals.list/profileId": profile_id +"/analytics:v2.4/analytics.management.goals.list/start-index": start_index +"/analytics:v2.4/analytics.management.goals.list/webPropertyId": web_property_id +"/analytics:v2.4/analytics.management.profiles.list": list_management_profiles +"/analytics:v2.4/analytics.management.profiles.list/accountId": account_id +"/analytics:v2.4/analytics.management.profiles.list/max-results": max_results +"/analytics:v2.4/analytics.management.profiles.list/start-index": start_index +"/analytics:v2.4/analytics.management.profiles.list/webPropertyId": web_property_id +"/analytics:v2.4/analytics.management.segments.list": list_management_segments +"/analytics:v2.4/analytics.management.segments.list/max-results": max_results +"/analytics:v2.4/analytics.management.segments.list/start-index": start_index +"/analytics:v2.4/analytics.management.webproperties.list": list_management_webproperties +"/analytics:v2.4/analytics.management.webproperties.list/accountId": account_id +"/analytics:v2.4/analytics.management.webproperties.list/max-results": max_results +"/analytics:v2.4/analytics.management.webproperties.list/start-index": start_index +"/analytics:v2.4/fields": fields +"/analytics:v2.4/key": key +"/analytics:v2.4/quotaUser": quota_user +"/analytics:v2.4/userIp": user_ip "/analytics:v3/Account": account "/analytics:v3/Account/childLink": child_link "/analytics:v3/Account/childLink/href": href @@ -5178,6 +5893,51 @@ "/androidmanagement:v1/fields": fields "/androidmanagement:v1/key": key "/androidmanagement:v1/quotaUser": quota_user +"/androidpublisher:v1.1/InappPurchase": inapp_purchase +"/androidpublisher:v1.1/InappPurchase/consumptionState": consumption_state +"/androidpublisher:v1.1/InappPurchase/developerPayload": developer_payload +"/androidpublisher:v1.1/InappPurchase/kind": kind +"/androidpublisher:v1.1/InappPurchase/orderId": order_id +"/androidpublisher:v1.1/InappPurchase/purchaseState": purchase_state +"/androidpublisher:v1.1/InappPurchase/purchaseTime": purchase_time +"/androidpublisher:v1.1/SubscriptionPurchase": subscription_purchase +"/androidpublisher:v1.1/SubscriptionPurchase/autoRenewing": auto_renewing +"/androidpublisher:v1.1/SubscriptionPurchase/initiationTimestampMsec": initiation_timestamp_msec +"/androidpublisher:v1.1/SubscriptionPurchase/kind": kind +"/androidpublisher:v1.1/SubscriptionPurchase/validUntilTimestampMsec": valid_until_timestamp_msec +"/androidpublisher:v1.1/androidpublisher.inapppurchases.get": get_inapppurchase +"/androidpublisher:v1.1/androidpublisher.inapppurchases.get/packageName": package_name +"/androidpublisher:v1.1/androidpublisher.inapppurchases.get/productId": product_id +"/androidpublisher:v1.1/androidpublisher.inapppurchases.get/token": token +"/androidpublisher:v1.1/androidpublisher.purchases.cancel": cancel_purchase +"/androidpublisher:v1.1/androidpublisher.purchases.cancel/packageName": package_name +"/androidpublisher:v1.1/androidpublisher.purchases.cancel/subscriptionId": subscription_id +"/androidpublisher:v1.1/androidpublisher.purchases.cancel/token": token +"/androidpublisher:v1.1/androidpublisher.purchases.get": get_purchase +"/androidpublisher:v1.1/androidpublisher.purchases.get/packageName": package_name +"/androidpublisher:v1.1/androidpublisher.purchases.get/subscriptionId": subscription_id +"/androidpublisher:v1.1/androidpublisher.purchases.get/token": token +"/androidpublisher:v1.1/fields": fields +"/androidpublisher:v1.1/key": key +"/androidpublisher:v1.1/quotaUser": quota_user +"/androidpublisher:v1.1/userIp": user_ip +"/androidpublisher:v1/SubscriptionPurchase": subscription_purchase +"/androidpublisher:v1/SubscriptionPurchase/autoRenewing": auto_renewing +"/androidpublisher:v1/SubscriptionPurchase/initiationTimestampMsec": initiation_timestamp_msec +"/androidpublisher:v1/SubscriptionPurchase/kind": kind +"/androidpublisher:v1/SubscriptionPurchase/validUntilTimestampMsec": valid_until_timestamp_msec +"/androidpublisher:v1/androidpublisher.purchases.cancel": cancel_purchase +"/androidpublisher:v1/androidpublisher.purchases.cancel/packageName": package_name +"/androidpublisher:v1/androidpublisher.purchases.cancel/subscriptionId": subscription_id +"/androidpublisher:v1/androidpublisher.purchases.cancel/token": token +"/androidpublisher:v1/androidpublisher.purchases.get": get_purchase +"/androidpublisher:v1/androidpublisher.purchases.get/packageName": package_name +"/androidpublisher:v1/androidpublisher.purchases.get/subscriptionId": subscription_id +"/androidpublisher:v1/androidpublisher.purchases.get/token": token +"/androidpublisher:v1/fields": fields +"/androidpublisher:v1/key": key +"/androidpublisher:v1/quotaUser": quota_user +"/androidpublisher:v1/userIp": user_ip "/androidpublisher:v2/Apk": apk "/androidpublisher:v2/Apk/binary": binary "/androidpublisher:v2/Apk/versionCode": version_code @@ -6068,6 +6828,1451 @@ "/appengine:v1/fields": fields "/appengine:v1/key": key "/appengine:v1/quotaUser": quota_user +"/appengine:v1alpha/AuthorizedCertificate": authorized_certificate +"/appengine:v1alpha/AuthorizedCertificate/certificateRawData": certificate_raw_data +"/appengine:v1alpha/AuthorizedCertificate/displayName": display_name +"/appengine:v1alpha/AuthorizedCertificate/domainMappingsCount": domain_mappings_count +"/appengine:v1alpha/AuthorizedCertificate/domainNames": domain_names +"/appengine:v1alpha/AuthorizedCertificate/domainNames/domain_name": domain_name +"/appengine:v1alpha/AuthorizedCertificate/expireTime": expire_time +"/appengine:v1alpha/AuthorizedCertificate/id": id +"/appengine:v1alpha/AuthorizedCertificate/managedCertificate": managed_certificate +"/appengine:v1alpha/AuthorizedCertificate/name": name +"/appengine:v1alpha/AuthorizedCertificate/visibleDomainMappings": visible_domain_mappings +"/appengine:v1alpha/AuthorizedCertificate/visibleDomainMappings/visible_domain_mapping": visible_domain_mapping +"/appengine:v1alpha/AuthorizedDomain": authorized_domain +"/appengine:v1alpha/AuthorizedDomain/id": id +"/appengine:v1alpha/AuthorizedDomain/name": name +"/appengine:v1alpha/CertificateRawData": certificate_raw_data +"/appengine:v1alpha/CertificateRawData/privateKey": private_key +"/appengine:v1alpha/CertificateRawData/publicCertificate": public_certificate +"/appengine:v1alpha/DomainMapping": domain_mapping +"/appengine:v1alpha/DomainMapping/id": id +"/appengine:v1alpha/DomainMapping/name": name +"/appengine:v1alpha/DomainMapping/resourceRecords": resource_records +"/appengine:v1alpha/DomainMapping/resourceRecords/resource_record": resource_record +"/appengine:v1alpha/DomainMapping/sslSettings": ssl_settings +"/appengine:v1alpha/Empty": empty +"/appengine:v1alpha/ListAuthorizedCertificatesResponse": list_authorized_certificates_response +"/appengine:v1alpha/ListAuthorizedCertificatesResponse/certificates": certificates +"/appengine:v1alpha/ListAuthorizedCertificatesResponse/certificates/certificate": certificate +"/appengine:v1alpha/ListAuthorizedCertificatesResponse/nextPageToken": next_page_token +"/appengine:v1alpha/ListAuthorizedDomainsResponse": list_authorized_domains_response +"/appengine:v1alpha/ListAuthorizedDomainsResponse/domains": domains +"/appengine:v1alpha/ListAuthorizedDomainsResponse/domains/domain": domain +"/appengine:v1alpha/ListAuthorizedDomainsResponse/nextPageToken": next_page_token +"/appengine:v1alpha/ListDomainMappingsResponse": list_domain_mappings_response +"/appengine:v1alpha/ListDomainMappingsResponse/domainMappings": domain_mappings +"/appengine:v1alpha/ListDomainMappingsResponse/domainMappings/domain_mapping": domain_mapping +"/appengine:v1alpha/ListDomainMappingsResponse/nextPageToken": next_page_token +"/appengine:v1alpha/ListLocationsResponse": list_locations_response +"/appengine:v1alpha/ListLocationsResponse/locations": locations +"/appengine:v1alpha/ListLocationsResponse/locations/location": location +"/appengine:v1alpha/ListLocationsResponse/nextPageToken": next_page_token +"/appengine:v1alpha/ListOperationsResponse": list_operations_response +"/appengine:v1alpha/ListOperationsResponse/nextPageToken": next_page_token +"/appengine:v1alpha/ListOperationsResponse/operations": operations +"/appengine:v1alpha/ListOperationsResponse/operations/operation": operation +"/appengine:v1alpha/Location": location +"/appengine:v1alpha/Location/labels": labels +"/appengine:v1alpha/Location/labels/label": label +"/appengine:v1alpha/Location/locationId": location_id +"/appengine:v1alpha/Location/metadata": metadata +"/appengine:v1alpha/Location/metadata/metadatum": metadatum +"/appengine:v1alpha/Location/name": name +"/appengine:v1alpha/LocationMetadata": location_metadata +"/appengine:v1alpha/LocationMetadata/flexibleEnvironmentAvailable": flexible_environment_available +"/appengine:v1alpha/LocationMetadata/standardEnvironmentAvailable": standard_environment_available +"/appengine:v1alpha/ManagedCertificate": managed_certificate +"/appengine:v1alpha/ManagedCertificate/lastRenewalTime": last_renewal_time +"/appengine:v1alpha/ManagedCertificate/status": status +"/appengine:v1alpha/Operation": operation +"/appengine:v1alpha/Operation/done": done +"/appengine:v1alpha/Operation/error": error +"/appengine:v1alpha/Operation/metadata": metadata +"/appengine:v1alpha/Operation/metadata/metadatum": metadatum +"/appengine:v1alpha/Operation/name": name +"/appengine:v1alpha/Operation/response": response +"/appengine:v1alpha/Operation/response/response": response +"/appengine:v1alpha/OperationMetadata": operation_metadata +"/appengine:v1alpha/OperationMetadata/endTime": end_time +"/appengine:v1alpha/OperationMetadata/insertTime": insert_time +"/appengine:v1alpha/OperationMetadata/method": method_prop +"/appengine:v1alpha/OperationMetadata/operationType": operation_type +"/appengine:v1alpha/OperationMetadata/target": target +"/appengine:v1alpha/OperationMetadata/user": user +"/appengine:v1alpha/OperationMetadataExperimental": operation_metadata_experimental +"/appengine:v1alpha/OperationMetadataExperimental/endTime": end_time +"/appengine:v1alpha/OperationMetadataExperimental/insertTime": insert_time +"/appengine:v1alpha/OperationMetadataExperimental/method": method_prop +"/appengine:v1alpha/OperationMetadataExperimental/target": target +"/appengine:v1alpha/OperationMetadataExperimental/user": user +"/appengine:v1alpha/OperationMetadataV1": operation_metadata_v1 +"/appengine:v1alpha/OperationMetadataV1/endTime": end_time +"/appengine:v1alpha/OperationMetadataV1/ephemeralMessage": ephemeral_message +"/appengine:v1alpha/OperationMetadataV1/insertTime": insert_time +"/appengine:v1alpha/OperationMetadataV1/method": method_prop +"/appengine:v1alpha/OperationMetadataV1/target": target +"/appengine:v1alpha/OperationMetadataV1/user": user +"/appengine:v1alpha/OperationMetadataV1/warning": warning +"/appengine:v1alpha/OperationMetadataV1/warning/warning": warning +"/appengine:v1alpha/OperationMetadataV1Alpha": operation_metadata_v1_alpha +"/appengine:v1alpha/OperationMetadataV1Alpha/endTime": end_time +"/appengine:v1alpha/OperationMetadataV1Alpha/ephemeralMessage": ephemeral_message +"/appengine:v1alpha/OperationMetadataV1Alpha/insertTime": insert_time +"/appengine:v1alpha/OperationMetadataV1Alpha/method": method_prop +"/appengine:v1alpha/OperationMetadataV1Alpha/target": target +"/appengine:v1alpha/OperationMetadataV1Alpha/user": user +"/appengine:v1alpha/OperationMetadataV1Alpha/warning": warning +"/appengine:v1alpha/OperationMetadataV1Alpha/warning/warning": warning +"/appengine:v1alpha/OperationMetadataV1Beta": operation_metadata_v1_beta +"/appengine:v1alpha/OperationMetadataV1Beta/endTime": end_time +"/appengine:v1alpha/OperationMetadataV1Beta/ephemeralMessage": ephemeral_message +"/appengine:v1alpha/OperationMetadataV1Beta/insertTime": insert_time +"/appengine:v1alpha/OperationMetadataV1Beta/method": method_prop +"/appengine:v1alpha/OperationMetadataV1Beta/target": target +"/appengine:v1alpha/OperationMetadataV1Beta/user": user +"/appengine:v1alpha/OperationMetadataV1Beta/warning": warning +"/appengine:v1alpha/OperationMetadataV1Beta/warning/warning": warning +"/appengine:v1alpha/OperationMetadataV1Beta5": operation_metadata_v1_beta5 +"/appengine:v1alpha/OperationMetadataV1Beta5/endTime": end_time +"/appengine:v1alpha/OperationMetadataV1Beta5/insertTime": insert_time +"/appengine:v1alpha/OperationMetadataV1Beta5/method": method_prop +"/appengine:v1alpha/OperationMetadataV1Beta5/target": target +"/appengine:v1alpha/OperationMetadataV1Beta5/user": user +"/appengine:v1alpha/ResourceRecord": resource_record +"/appengine:v1alpha/ResourceRecord/name": name +"/appengine:v1alpha/ResourceRecord/rrdata": rrdata +"/appengine:v1alpha/ResourceRecord/type": type +"/appengine:v1alpha/SslSettings": ssl_settings +"/appengine:v1alpha/SslSettings/certificateId": certificate_id +"/appengine:v1alpha/SslSettings/isManagedCertificate": is_managed_certificate +"/appengine:v1alpha/Status": status +"/appengine:v1alpha/Status/code": code +"/appengine:v1alpha/Status/details": details +"/appengine:v1alpha/Status/details/detail": detail +"/appengine:v1alpha/Status/details/detail/detail": detail +"/appengine:v1alpha/Status/message": message +"/appengine:v1alpha/appengine.apps.authorizedCertificates.create": create_app_authorized_certificate +"/appengine:v1alpha/appengine.apps.authorizedCertificates.create/appsId": apps_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.delete": delete_app_authorized_certificate +"/appengine:v1alpha/appengine.apps.authorizedCertificates.delete/appsId": apps_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.delete/authorizedCertificatesId": authorized_certificates_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.get": get_app_authorized_certificate +"/appengine:v1alpha/appengine.apps.authorizedCertificates.get/appsId": apps_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.get/authorizedCertificatesId": authorized_certificates_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.get/view": view +"/appengine:v1alpha/appengine.apps.authorizedCertificates.list": list_app_authorized_certificates +"/appengine:v1alpha/appengine.apps.authorizedCertificates.list/appsId": apps_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.list/pageSize": page_size +"/appengine:v1alpha/appengine.apps.authorizedCertificates.list/pageToken": page_token +"/appengine:v1alpha/appengine.apps.authorizedCertificates.list/view": view +"/appengine:v1alpha/appengine.apps.authorizedCertificates.patch": patch_app_authorized_certificate +"/appengine:v1alpha/appengine.apps.authorizedCertificates.patch/appsId": apps_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.patch/authorizedCertificatesId": authorized_certificates_id +"/appengine:v1alpha/appengine.apps.authorizedCertificates.patch/updateMask": update_mask +"/appengine:v1alpha/appengine.apps.authorizedDomains.list": list_app_authorized_domains +"/appengine:v1alpha/appengine.apps.authorizedDomains.list/appsId": apps_id +"/appengine:v1alpha/appengine.apps.authorizedDomains.list/pageSize": page_size +"/appengine:v1alpha/appengine.apps.authorizedDomains.list/pageToken": page_token +"/appengine:v1alpha/appengine.apps.domainMappings.create": create_app_domain_mapping +"/appengine:v1alpha/appengine.apps.domainMappings.create/appsId": apps_id +"/appengine:v1alpha/appengine.apps.domainMappings.create/noManagedCertificate": no_managed_certificate +"/appengine:v1alpha/appengine.apps.domainMappings.delete": delete_app_domain_mapping +"/appengine:v1alpha/appengine.apps.domainMappings.delete/appsId": apps_id +"/appengine:v1alpha/appengine.apps.domainMappings.delete/domainMappingsId": domain_mappings_id +"/appengine:v1alpha/appengine.apps.domainMappings.get": get_app_domain_mapping +"/appengine:v1alpha/appengine.apps.domainMappings.get/appsId": apps_id +"/appengine:v1alpha/appengine.apps.domainMappings.get/domainMappingsId": domain_mappings_id +"/appengine:v1alpha/appengine.apps.domainMappings.list": list_app_domain_mappings +"/appengine:v1alpha/appengine.apps.domainMappings.list/appsId": apps_id +"/appengine:v1alpha/appengine.apps.domainMappings.list/pageSize": page_size +"/appengine:v1alpha/appengine.apps.domainMappings.list/pageToken": page_token +"/appengine:v1alpha/appengine.apps.domainMappings.patch": patch_app_domain_mapping +"/appengine:v1alpha/appengine.apps.domainMappings.patch/appsId": apps_id +"/appengine:v1alpha/appengine.apps.domainMappings.patch/domainMappingsId": domain_mappings_id +"/appengine:v1alpha/appengine.apps.domainMappings.patch/noManagedCertificate": no_managed_certificate +"/appengine:v1alpha/appengine.apps.domainMappings.patch/updateMask": update_mask +"/appengine:v1alpha/appengine.apps.locations.get": get_app_location +"/appengine:v1alpha/appengine.apps.locations.get/appsId": apps_id +"/appengine:v1alpha/appengine.apps.locations.get/locationsId": locations_id +"/appengine:v1alpha/appengine.apps.locations.list": list_app_locations +"/appengine:v1alpha/appengine.apps.locations.list/appsId": apps_id +"/appengine:v1alpha/appengine.apps.locations.list/filter": filter +"/appengine:v1alpha/appengine.apps.locations.list/pageSize": page_size +"/appengine:v1alpha/appengine.apps.locations.list/pageToken": page_token +"/appengine:v1alpha/appengine.apps.operations.get": get_app_operation +"/appengine:v1alpha/appengine.apps.operations.get/appsId": apps_id +"/appengine:v1alpha/appengine.apps.operations.get/operationsId": operations_id +"/appengine:v1alpha/appengine.apps.operations.list": list_app_operations +"/appengine:v1alpha/appengine.apps.operations.list/appsId": apps_id +"/appengine:v1alpha/appengine.apps.operations.list/filter": filter +"/appengine:v1alpha/appengine.apps.operations.list/pageSize": page_size +"/appengine:v1alpha/appengine.apps.operations.list/pageToken": page_token +"/appengine:v1alpha/fields": fields +"/appengine:v1alpha/key": key +"/appengine:v1alpha/quotaUser": quota_user +"/appengine:v1beta/ApiConfigHandler": api_config_handler +"/appengine:v1beta/ApiConfigHandler/authFailAction": auth_fail_action +"/appengine:v1beta/ApiConfigHandler/login": login +"/appengine:v1beta/ApiConfigHandler/script": script +"/appengine:v1beta/ApiConfigHandler/securityLevel": security_level +"/appengine:v1beta/ApiConfigHandler/url": url +"/appengine:v1beta/ApiEndpointHandler": api_endpoint_handler +"/appengine:v1beta/ApiEndpointHandler/scriptPath": script_path +"/appengine:v1beta/Application": application +"/appengine:v1beta/Application/authDomain": auth_domain +"/appengine:v1beta/Application/codeBucket": code_bucket +"/appengine:v1beta/Application/defaultBucket": default_bucket +"/appengine:v1beta/Application/defaultCookieExpiration": default_cookie_expiration +"/appengine:v1beta/Application/defaultHostname": default_hostname +"/appengine:v1beta/Application/dispatchRules": dispatch_rules +"/appengine:v1beta/Application/dispatchRules/dispatch_rule": dispatch_rule +"/appengine:v1beta/Application/featureSettings": feature_settings +"/appengine:v1beta/Application/gcrDomain": gcr_domain +"/appengine:v1beta/Application/iap": iap +"/appengine:v1beta/Application/id": id +"/appengine:v1beta/Application/locationId": location_id +"/appengine:v1beta/Application/name": name +"/appengine:v1beta/Application/servingStatus": serving_status +"/appengine:v1beta/AuthorizedCertificate": authorized_certificate +"/appengine:v1beta/AuthorizedCertificate/certificateRawData": certificate_raw_data +"/appengine:v1beta/AuthorizedCertificate/displayName": display_name +"/appengine:v1beta/AuthorizedCertificate/domainMappingsCount": domain_mappings_count +"/appengine:v1beta/AuthorizedCertificate/domainNames": domain_names +"/appengine:v1beta/AuthorizedCertificate/domainNames/domain_name": domain_name +"/appengine:v1beta/AuthorizedCertificate/expireTime": expire_time +"/appengine:v1beta/AuthorizedCertificate/id": id +"/appengine:v1beta/AuthorizedCertificate/name": name +"/appengine:v1beta/AuthorizedCertificate/visibleDomainMappings": visible_domain_mappings +"/appengine:v1beta/AuthorizedCertificate/visibleDomainMappings/visible_domain_mapping": visible_domain_mapping +"/appengine:v1beta/AuthorizedDomain": authorized_domain +"/appengine:v1beta/AuthorizedDomain/id": id +"/appengine:v1beta/AuthorizedDomain/name": name +"/appengine:v1beta/AutomaticScaling": automatic_scaling +"/appengine:v1beta/AutomaticScaling/coolDownPeriod": cool_down_period +"/appengine:v1beta/AutomaticScaling/cpuUtilization": cpu_utilization +"/appengine:v1beta/AutomaticScaling/diskUtilization": disk_utilization +"/appengine:v1beta/AutomaticScaling/maxConcurrentRequests": max_concurrent_requests +"/appengine:v1beta/AutomaticScaling/maxIdleInstances": max_idle_instances +"/appengine:v1beta/AutomaticScaling/maxPendingLatency": max_pending_latency +"/appengine:v1beta/AutomaticScaling/maxTotalInstances": max_total_instances +"/appengine:v1beta/AutomaticScaling/minIdleInstances": min_idle_instances +"/appengine:v1beta/AutomaticScaling/minPendingLatency": min_pending_latency +"/appengine:v1beta/AutomaticScaling/minTotalInstances": min_total_instances +"/appengine:v1beta/AutomaticScaling/networkUtilization": network_utilization +"/appengine:v1beta/AutomaticScaling/requestUtilization": request_utilization +"/appengine:v1beta/AutomaticScaling/standardSchedulerSettings": standard_scheduler_settings +"/appengine:v1beta/BasicScaling": basic_scaling +"/appengine:v1beta/BasicScaling/idleTimeout": idle_timeout +"/appengine:v1beta/BasicScaling/maxInstances": max_instances +"/appengine:v1beta/BatchUpdateIngressRulesRequest": batch_update_ingress_rules_request +"/appengine:v1beta/BatchUpdateIngressRulesRequest/ingressRules": ingress_rules +"/appengine:v1beta/BatchUpdateIngressRulesRequest/ingressRules/ingress_rule": ingress_rule +"/appengine:v1beta/BatchUpdateIngressRulesResponse": batch_update_ingress_rules_response +"/appengine:v1beta/BatchUpdateIngressRulesResponse/ingressRules": ingress_rules +"/appengine:v1beta/BatchUpdateIngressRulesResponse/ingressRules/ingress_rule": ingress_rule +"/appengine:v1beta/BuildInfo": build_info +"/appengine:v1beta/BuildInfo/cloudBuildId": cloud_build_id +"/appengine:v1beta/CertificateRawData": certificate_raw_data +"/appengine:v1beta/CertificateRawData/privateKey": private_key +"/appengine:v1beta/CertificateRawData/publicCertificate": public_certificate +"/appengine:v1beta/ContainerInfo": container_info +"/appengine:v1beta/ContainerInfo/image": image +"/appengine:v1beta/CpuUtilization": cpu_utilization +"/appengine:v1beta/CpuUtilization/aggregationWindowLength": aggregation_window_length +"/appengine:v1beta/CpuUtilization/targetUtilization": target_utilization +"/appengine:v1beta/DebugInstanceRequest": debug_instance_request +"/appengine:v1beta/DebugInstanceRequest/sshKey": ssh_key +"/appengine:v1beta/Deployment": deployment +"/appengine:v1beta/Deployment/build": build +"/appengine:v1beta/Deployment/container": container +"/appengine:v1beta/Deployment/files": files +"/appengine:v1beta/Deployment/files/file": file +"/appengine:v1beta/Deployment/zip": zip +"/appengine:v1beta/DiskUtilization": disk_utilization +"/appengine:v1beta/DiskUtilization/targetReadBytesPerSecond": target_read_bytes_per_second +"/appengine:v1beta/DiskUtilization/targetReadOpsPerSecond": target_read_ops_per_second +"/appengine:v1beta/DiskUtilization/targetWriteBytesPerSecond": target_write_bytes_per_second +"/appengine:v1beta/DiskUtilization/targetWriteOpsPerSecond": target_write_ops_per_second +"/appengine:v1beta/DomainMapping": domain_mapping +"/appengine:v1beta/DomainMapping/id": id +"/appengine:v1beta/DomainMapping/name": name +"/appengine:v1beta/DomainMapping/resourceRecords": resource_records +"/appengine:v1beta/DomainMapping/resourceRecords/resource_record": resource_record +"/appengine:v1beta/DomainMapping/sslSettings": ssl_settings +"/appengine:v1beta/Empty": empty +"/appengine:v1beta/EndpointsApiService": endpoints_api_service +"/appengine:v1beta/EndpointsApiService/configId": config_id +"/appengine:v1beta/EndpointsApiService/name": name +"/appengine:v1beta/ErrorHandler": error_handler +"/appengine:v1beta/ErrorHandler/errorCode": error_code +"/appengine:v1beta/ErrorHandler/mimeType": mime_type +"/appengine:v1beta/ErrorHandler/staticFile": static_file +"/appengine:v1beta/FeatureSettings": feature_settings +"/appengine:v1beta/FeatureSettings/splitHealthChecks": split_health_checks +"/appengine:v1beta/FileInfo": file_info +"/appengine:v1beta/FileInfo/mimeType": mime_type +"/appengine:v1beta/FileInfo/sha1Sum": sha1_sum +"/appengine:v1beta/FileInfo/sourceUrl": source_url +"/appengine:v1beta/FirewallRule": firewall_rule +"/appengine:v1beta/FirewallRule/action": action +"/appengine:v1beta/FirewallRule/description": description +"/appengine:v1beta/FirewallRule/priority": priority +"/appengine:v1beta/FirewallRule/sourceRange": source_range +"/appengine:v1beta/HealthCheck": health_check +"/appengine:v1beta/HealthCheck/checkInterval": check_interval +"/appengine:v1beta/HealthCheck/disableHealthCheck": disable_health_check +"/appengine:v1beta/HealthCheck/healthyThreshold": healthy_threshold +"/appengine:v1beta/HealthCheck/host": host +"/appengine:v1beta/HealthCheck/restartThreshold": restart_threshold +"/appengine:v1beta/HealthCheck/timeout": timeout +"/appengine:v1beta/HealthCheck/unhealthyThreshold": unhealthy_threshold +"/appengine:v1beta/IdentityAwareProxy": identity_aware_proxy +"/appengine:v1beta/IdentityAwareProxy/enabled": enabled +"/appengine:v1beta/IdentityAwareProxy/oauth2ClientId": oauth2_client_id +"/appengine:v1beta/IdentityAwareProxy/oauth2ClientSecret": oauth2_client_secret +"/appengine:v1beta/IdentityAwareProxy/oauth2ClientSecretSha256": oauth2_client_secret_sha256 +"/appengine:v1beta/Instance": instance +"/appengine:v1beta/Instance/appEngineRelease": app_engine_release +"/appengine:v1beta/Instance/availability": availability +"/appengine:v1beta/Instance/averageLatency": average_latency +"/appengine:v1beta/Instance/errors": errors +"/appengine:v1beta/Instance/id": id +"/appengine:v1beta/Instance/memoryUsage": memory_usage +"/appengine:v1beta/Instance/name": name +"/appengine:v1beta/Instance/qps": qps +"/appengine:v1beta/Instance/requests": requests +"/appengine:v1beta/Instance/startTime": start_time +"/appengine:v1beta/Instance/vmDebugEnabled": vm_debug_enabled +"/appengine:v1beta/Instance/vmId": vm_id +"/appengine:v1beta/Instance/vmIp": vm_ip +"/appengine:v1beta/Instance/vmName": vm_name +"/appengine:v1beta/Instance/vmStatus": vm_status +"/appengine:v1beta/Instance/vmZoneName": vm_zone_name +"/appengine:v1beta/Library": library +"/appengine:v1beta/Library/name": name +"/appengine:v1beta/Library/version": version +"/appengine:v1beta/ListAuthorizedCertificatesResponse": list_authorized_certificates_response +"/appengine:v1beta/ListAuthorizedCertificatesResponse/certificates": certificates +"/appengine:v1beta/ListAuthorizedCertificatesResponse/certificates/certificate": certificate +"/appengine:v1beta/ListAuthorizedCertificatesResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListAuthorizedDomainsResponse": list_authorized_domains_response +"/appengine:v1beta/ListAuthorizedDomainsResponse/domains": domains +"/appengine:v1beta/ListAuthorizedDomainsResponse/domains/domain": domain +"/appengine:v1beta/ListAuthorizedDomainsResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListDomainMappingsResponse": list_domain_mappings_response +"/appengine:v1beta/ListDomainMappingsResponse/domainMappings": domain_mappings +"/appengine:v1beta/ListDomainMappingsResponse/domainMappings/domain_mapping": domain_mapping +"/appengine:v1beta/ListDomainMappingsResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListIngressRulesResponse": list_ingress_rules_response +"/appengine:v1beta/ListIngressRulesResponse/ingressRules": ingress_rules +"/appengine:v1beta/ListIngressRulesResponse/ingressRules/ingress_rule": ingress_rule +"/appengine:v1beta/ListIngressRulesResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListInstancesResponse": list_instances_response +"/appengine:v1beta/ListInstancesResponse/instances": instances +"/appengine:v1beta/ListInstancesResponse/instances/instance": instance +"/appengine:v1beta/ListInstancesResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListLocationsResponse": list_locations_response +"/appengine:v1beta/ListLocationsResponse/locations": locations +"/appengine:v1beta/ListLocationsResponse/locations/location": location +"/appengine:v1beta/ListLocationsResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListOperationsResponse": list_operations_response +"/appengine:v1beta/ListOperationsResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListOperationsResponse/operations": operations +"/appengine:v1beta/ListOperationsResponse/operations/operation": operation +"/appengine:v1beta/ListServicesResponse": list_services_response +"/appengine:v1beta/ListServicesResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListServicesResponse/services": services +"/appengine:v1beta/ListServicesResponse/services/service": service +"/appengine:v1beta/ListVersionsResponse": list_versions_response +"/appengine:v1beta/ListVersionsResponse/nextPageToken": next_page_token +"/appengine:v1beta/ListVersionsResponse/versions": versions +"/appengine:v1beta/ListVersionsResponse/versions/version": version +"/appengine:v1beta/LivenessCheck": liveness_check +"/appengine:v1beta/LivenessCheck/checkInterval": check_interval +"/appengine:v1beta/LivenessCheck/failureThreshold": failure_threshold +"/appengine:v1beta/LivenessCheck/host": host +"/appengine:v1beta/LivenessCheck/initialDelay": initial_delay +"/appengine:v1beta/LivenessCheck/path": path +"/appengine:v1beta/LivenessCheck/successThreshold": success_threshold +"/appengine:v1beta/LivenessCheck/timeout": timeout +"/appengine:v1beta/Location": location +"/appengine:v1beta/Location/labels": labels +"/appengine:v1beta/Location/labels/label": label +"/appengine:v1beta/Location/locationId": location_id +"/appengine:v1beta/Location/metadata": metadata +"/appengine:v1beta/Location/metadata/metadatum": metadatum +"/appengine:v1beta/Location/name": name +"/appengine:v1beta/LocationMetadata": location_metadata +"/appengine:v1beta/LocationMetadata/flexibleEnvironmentAvailable": flexible_environment_available +"/appengine:v1beta/LocationMetadata/standardEnvironmentAvailable": standard_environment_available +"/appengine:v1beta/ManualScaling": manual_scaling +"/appengine:v1beta/ManualScaling/instances": instances +"/appengine:v1beta/Network": network +"/appengine:v1beta/Network/forwardedPorts": forwarded_ports +"/appengine:v1beta/Network/forwardedPorts/forwarded_port": forwarded_port +"/appengine:v1beta/Network/instanceTag": instance_tag +"/appengine:v1beta/Network/name": name +"/appengine:v1beta/Network/subnetworkName": subnetwork_name +"/appengine:v1beta/NetworkUtilization": network_utilization +"/appengine:v1beta/NetworkUtilization/targetReceivedBytesPerSecond": target_received_bytes_per_second +"/appengine:v1beta/NetworkUtilization/targetReceivedPacketsPerSecond": target_received_packets_per_second +"/appengine:v1beta/NetworkUtilization/targetSentBytesPerSecond": target_sent_bytes_per_second +"/appengine:v1beta/NetworkUtilization/targetSentPacketsPerSecond": target_sent_packets_per_second +"/appengine:v1beta/Operation": operation +"/appengine:v1beta/Operation/done": done +"/appengine:v1beta/Operation/error": error +"/appengine:v1beta/Operation/metadata": metadata +"/appengine:v1beta/Operation/metadata/metadatum": metadatum +"/appengine:v1beta/Operation/name": name +"/appengine:v1beta/Operation/response": response +"/appengine:v1beta/Operation/response/response": response +"/appengine:v1beta/OperationMetadata": operation_metadata +"/appengine:v1beta/OperationMetadata/endTime": end_time +"/appengine:v1beta/OperationMetadata/insertTime": insert_time +"/appengine:v1beta/OperationMetadata/method": method_prop +"/appengine:v1beta/OperationMetadata/operationType": operation_type +"/appengine:v1beta/OperationMetadata/target": target +"/appengine:v1beta/OperationMetadata/user": user +"/appengine:v1beta/OperationMetadataExperimental": operation_metadata_experimental +"/appengine:v1beta/OperationMetadataExperimental/endTime": end_time +"/appengine:v1beta/OperationMetadataExperimental/insertTime": insert_time +"/appengine:v1beta/OperationMetadataExperimental/method": method_prop +"/appengine:v1beta/OperationMetadataExperimental/target": target +"/appengine:v1beta/OperationMetadataExperimental/user": user +"/appengine:v1beta/OperationMetadataV1": operation_metadata_v1 +"/appengine:v1beta/OperationMetadataV1/endTime": end_time +"/appengine:v1beta/OperationMetadataV1/ephemeralMessage": ephemeral_message +"/appengine:v1beta/OperationMetadataV1/insertTime": insert_time +"/appengine:v1beta/OperationMetadataV1/method": method_prop +"/appengine:v1beta/OperationMetadataV1/target": target +"/appengine:v1beta/OperationMetadataV1/user": user +"/appengine:v1beta/OperationMetadataV1/warning": warning +"/appengine:v1beta/OperationMetadataV1/warning/warning": warning +"/appengine:v1beta/OperationMetadataV1Alpha": operation_metadata_v1_alpha +"/appengine:v1beta/OperationMetadataV1Alpha/endTime": end_time +"/appengine:v1beta/OperationMetadataV1Alpha/ephemeralMessage": ephemeral_message +"/appengine:v1beta/OperationMetadataV1Alpha/insertTime": insert_time +"/appengine:v1beta/OperationMetadataV1Alpha/method": method_prop +"/appengine:v1beta/OperationMetadataV1Alpha/target": target +"/appengine:v1beta/OperationMetadataV1Alpha/user": user +"/appengine:v1beta/OperationMetadataV1Alpha/warning": warning +"/appengine:v1beta/OperationMetadataV1Alpha/warning/warning": warning +"/appengine:v1beta/OperationMetadataV1Beta": operation_metadata_v1_beta +"/appengine:v1beta/OperationMetadataV1Beta/endTime": end_time +"/appengine:v1beta/OperationMetadataV1Beta/ephemeralMessage": ephemeral_message +"/appengine:v1beta/OperationMetadataV1Beta/insertTime": insert_time +"/appengine:v1beta/OperationMetadataV1Beta/method": method_prop +"/appengine:v1beta/OperationMetadataV1Beta/target": target +"/appengine:v1beta/OperationMetadataV1Beta/user": user +"/appengine:v1beta/OperationMetadataV1Beta/warning": warning +"/appengine:v1beta/OperationMetadataV1Beta/warning/warning": warning +"/appengine:v1beta/OperationMetadataV1Beta5": operation_metadata_v1_beta5 +"/appengine:v1beta/OperationMetadataV1Beta5/endTime": end_time +"/appengine:v1beta/OperationMetadataV1Beta5/insertTime": insert_time +"/appengine:v1beta/OperationMetadataV1Beta5/method": method_prop +"/appengine:v1beta/OperationMetadataV1Beta5/target": target +"/appengine:v1beta/OperationMetadataV1Beta5/user": user +"/appengine:v1beta/ReadinessCheck": readiness_check +"/appengine:v1beta/ReadinessCheck/appStartTimeout": app_start_timeout +"/appengine:v1beta/ReadinessCheck/checkInterval": check_interval +"/appengine:v1beta/ReadinessCheck/failureThreshold": failure_threshold +"/appengine:v1beta/ReadinessCheck/host": host +"/appengine:v1beta/ReadinessCheck/path": path +"/appengine:v1beta/ReadinessCheck/successThreshold": success_threshold +"/appengine:v1beta/ReadinessCheck/timeout": timeout +"/appengine:v1beta/RepairApplicationRequest": repair_application_request +"/appengine:v1beta/RequestUtilization": request_utilization +"/appengine:v1beta/RequestUtilization/targetConcurrentRequests": target_concurrent_requests +"/appengine:v1beta/RequestUtilization/targetRequestCountPerSecond": target_request_count_per_second +"/appengine:v1beta/ResourceRecord": resource_record +"/appengine:v1beta/ResourceRecord/name": name +"/appengine:v1beta/ResourceRecord/rrdata": rrdata +"/appengine:v1beta/ResourceRecord/type": type +"/appengine:v1beta/Resources": resources +"/appengine:v1beta/Resources/cpu": cpu +"/appengine:v1beta/Resources/diskGb": disk_gb +"/appengine:v1beta/Resources/memoryGb": memory_gb +"/appengine:v1beta/Resources/volumes": volumes +"/appengine:v1beta/Resources/volumes/volume": volume +"/appengine:v1beta/ScriptHandler": script_handler +"/appengine:v1beta/ScriptHandler/scriptPath": script_path +"/appengine:v1beta/Service": service +"/appengine:v1beta/Service/id": id +"/appengine:v1beta/Service/name": name +"/appengine:v1beta/Service/split": split +"/appengine:v1beta/SslSettings": ssl_settings +"/appengine:v1beta/SslSettings/certificateId": certificate_id +"/appengine:v1beta/StandardSchedulerSettings": standard_scheduler_settings +"/appengine:v1beta/StandardSchedulerSettings/maxInstances": max_instances +"/appengine:v1beta/StandardSchedulerSettings/minInstances": min_instances +"/appengine:v1beta/StandardSchedulerSettings/targetCpuUtilization": target_cpu_utilization +"/appengine:v1beta/StandardSchedulerSettings/targetThroughputUtilization": target_throughput_utilization +"/appengine:v1beta/StaticFilesHandler": static_files_handler +"/appengine:v1beta/StaticFilesHandler/applicationReadable": application_readable +"/appengine:v1beta/StaticFilesHandler/expiration": expiration +"/appengine:v1beta/StaticFilesHandler/httpHeaders": http_headers +"/appengine:v1beta/StaticFilesHandler/httpHeaders/http_header": http_header +"/appengine:v1beta/StaticFilesHandler/mimeType": mime_type +"/appengine:v1beta/StaticFilesHandler/path": path +"/appengine:v1beta/StaticFilesHandler/requireMatchingFile": require_matching_file +"/appengine:v1beta/StaticFilesHandler/uploadPathRegex": upload_path_regex +"/appengine:v1beta/Status": status +"/appengine:v1beta/Status/code": code +"/appengine:v1beta/Status/details": details +"/appengine:v1beta/Status/details/detail": detail +"/appengine:v1beta/Status/details/detail/detail": detail +"/appengine:v1beta/Status/message": message +"/appengine:v1beta/TrafficSplit": traffic_split +"/appengine:v1beta/TrafficSplit/allocations": allocations +"/appengine:v1beta/TrafficSplit/allocations/allocation": allocation +"/appengine:v1beta/TrafficSplit/shardBy": shard_by +"/appengine:v1beta/UrlDispatchRule": url_dispatch_rule +"/appengine:v1beta/UrlDispatchRule/domain": domain +"/appengine:v1beta/UrlDispatchRule/path": path +"/appengine:v1beta/UrlDispatchRule/service": service +"/appengine:v1beta/UrlMap": url_map +"/appengine:v1beta/UrlMap/apiEndpoint": api_endpoint +"/appengine:v1beta/UrlMap/authFailAction": auth_fail_action +"/appengine:v1beta/UrlMap/login": login +"/appengine:v1beta/UrlMap/redirectHttpResponseCode": redirect_http_response_code +"/appengine:v1beta/UrlMap/script": script +"/appengine:v1beta/UrlMap/securityLevel": security_level +"/appengine:v1beta/UrlMap/staticFiles": static_files +"/appengine:v1beta/UrlMap/urlRegex": url_regex +"/appengine:v1beta/Version": version +"/appengine:v1beta/Version/apiConfig": api_config +"/appengine:v1beta/Version/automaticScaling": automatic_scaling +"/appengine:v1beta/Version/basicScaling": basic_scaling +"/appengine:v1beta/Version/betaSettings": beta_settings +"/appengine:v1beta/Version/betaSettings/beta_setting": beta_setting +"/appengine:v1beta/Version/createTime": create_time +"/appengine:v1beta/Version/createdBy": created_by +"/appengine:v1beta/Version/defaultExpiration": default_expiration +"/appengine:v1beta/Version/deployment": deployment +"/appengine:v1beta/Version/diskUsageBytes": disk_usage_bytes +"/appengine:v1beta/Version/endpointsApiService": endpoints_api_service +"/appengine:v1beta/Version/env": env +"/appengine:v1beta/Version/envVariables": env_variables +"/appengine:v1beta/Version/envVariables/env_variable": env_variable +"/appengine:v1beta/Version/errorHandlers": error_handlers +"/appengine:v1beta/Version/errorHandlers/error_handler": error_handler +"/appengine:v1beta/Version/handlers": handlers +"/appengine:v1beta/Version/handlers/handler": handler +"/appengine:v1beta/Version/healthCheck": health_check +"/appengine:v1beta/Version/id": id +"/appengine:v1beta/Version/inboundServices": inbound_services +"/appengine:v1beta/Version/inboundServices/inbound_service": inbound_service +"/appengine:v1beta/Version/instanceClass": instance_class +"/appengine:v1beta/Version/libraries": libraries +"/appengine:v1beta/Version/libraries/library": library +"/appengine:v1beta/Version/livenessCheck": liveness_check +"/appengine:v1beta/Version/manualScaling": manual_scaling +"/appengine:v1beta/Version/name": name +"/appengine:v1beta/Version/network": network +"/appengine:v1beta/Version/nobuildFilesRegex": nobuild_files_regex +"/appengine:v1beta/Version/readinessCheck": readiness_check +"/appengine:v1beta/Version/resources": resources +"/appengine:v1beta/Version/runtime": runtime +"/appengine:v1beta/Version/runtimeApiVersion": runtime_api_version +"/appengine:v1beta/Version/servingStatus": serving_status +"/appengine:v1beta/Version/threadsafe": threadsafe +"/appengine:v1beta/Version/versionUrl": version_url +"/appengine:v1beta/Version/vm": vm +"/appengine:v1beta/Volume": volume +"/appengine:v1beta/Volume/name": name +"/appengine:v1beta/Volume/sizeGb": size_gb +"/appengine:v1beta/Volume/volumeType": volume_type +"/appengine:v1beta/ZipInfo": zip_info +"/appengine:v1beta/ZipInfo/filesCount": files_count +"/appengine:v1beta/ZipInfo/sourceUrl": source_url +"/appengine:v1beta/appengine.apps.authorizedCertificates.create": create_app_authorized_certificate +"/appengine:v1beta/appengine.apps.authorizedCertificates.create/appsId": apps_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.delete": delete_app_authorized_certificate +"/appengine:v1beta/appengine.apps.authorizedCertificates.delete/appsId": apps_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.delete/authorizedCertificatesId": authorized_certificates_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.get": get_app_authorized_certificate +"/appengine:v1beta/appengine.apps.authorizedCertificates.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.get/authorizedCertificatesId": authorized_certificates_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.get/view": view +"/appengine:v1beta/appengine.apps.authorizedCertificates.list": list_app_authorized_certificates +"/appengine:v1beta/appengine.apps.authorizedCertificates.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.authorizedCertificates.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.authorizedCertificates.list/view": view +"/appengine:v1beta/appengine.apps.authorizedCertificates.patch": patch_app_authorized_certificate +"/appengine:v1beta/appengine.apps.authorizedCertificates.patch/appsId": apps_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.patch/authorizedCertificatesId": authorized_certificates_id +"/appengine:v1beta/appengine.apps.authorizedCertificates.patch/updateMask": update_mask +"/appengine:v1beta/appengine.apps.authorizedDomains.list": list_app_authorized_domains +"/appengine:v1beta/appengine.apps.authorizedDomains.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.authorizedDomains.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.authorizedDomains.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.create": create_app +"/appengine:v1beta/appengine.apps.domainMappings.create": create_app_domain_mapping +"/appengine:v1beta/appengine.apps.domainMappings.create/appsId": apps_id +"/appengine:v1beta/appengine.apps.domainMappings.delete": delete_app_domain_mapping +"/appengine:v1beta/appengine.apps.domainMappings.delete/appsId": apps_id +"/appengine:v1beta/appengine.apps.domainMappings.delete/domainMappingsId": domain_mappings_id +"/appengine:v1beta/appengine.apps.domainMappings.get": get_app_domain_mapping +"/appengine:v1beta/appengine.apps.domainMappings.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.domainMappings.get/domainMappingsId": domain_mappings_id +"/appengine:v1beta/appengine.apps.domainMappings.list": list_app_domain_mappings +"/appengine:v1beta/appengine.apps.domainMappings.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.domainMappings.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.domainMappings.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.domainMappings.patch": patch_app_domain_mapping +"/appengine:v1beta/appengine.apps.domainMappings.patch/appsId": apps_id +"/appengine:v1beta/appengine.apps.domainMappings.patch/domainMappingsId": domain_mappings_id +"/appengine:v1beta/appengine.apps.domainMappings.patch/updateMask": update_mask +"/appengine:v1beta/appengine.apps.firewall.ingressRules.batchUpdate": batch_update_ingress_rules +"/appengine:v1beta/appengine.apps.firewall.ingressRules.batchUpdate/appsId": apps_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.create": create_app_firewall_ingress_rule +"/appengine:v1beta/appengine.apps.firewall.ingressRules.create/appsId": apps_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.delete": delete_app_firewall_ingress_rule +"/appengine:v1beta/appengine.apps.firewall.ingressRules.delete/appsId": apps_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.delete/ingressRulesId": ingress_rules_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.get": get_app_firewall_ingress_rule +"/appengine:v1beta/appengine.apps.firewall.ingressRules.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.get/ingressRulesId": ingress_rules_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.list": list_app_firewall_ingress_rules +"/appengine:v1beta/appengine.apps.firewall.ingressRules.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.list/matchingAddress": matching_address +"/appengine:v1beta/appengine.apps.firewall.ingressRules.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.firewall.ingressRules.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.firewall.ingressRules.patch": patch_app_firewall_ingress_rule +"/appengine:v1beta/appengine.apps.firewall.ingressRules.patch/appsId": apps_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.patch/ingressRulesId": ingress_rules_id +"/appengine:v1beta/appengine.apps.firewall.ingressRules.patch/updateMask": update_mask +"/appengine:v1beta/appengine.apps.get": get_app +"/appengine:v1beta/appengine.apps.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.locations.get": get_app_location +"/appengine:v1beta/appengine.apps.locations.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.locations.get/locationsId": locations_id +"/appengine:v1beta/appengine.apps.locations.list": list_app_locations +"/appengine:v1beta/appengine.apps.locations.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.locations.list/filter": filter +"/appengine:v1beta/appengine.apps.locations.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.locations.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.operations.get": get_app_operation +"/appengine:v1beta/appengine.apps.operations.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.operations.get/operationsId": operations_id +"/appengine:v1beta/appengine.apps.operations.list": list_app_operations +"/appengine:v1beta/appengine.apps.operations.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.operations.list/filter": filter +"/appengine:v1beta/appengine.apps.operations.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.operations.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.patch": patch_app +"/appengine:v1beta/appengine.apps.patch/appsId": apps_id +"/appengine:v1beta/appengine.apps.patch/updateMask": update_mask +"/appengine:v1beta/appengine.apps.repair": repair_application +"/appengine:v1beta/appengine.apps.repair/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.delete": delete_app_service +"/appengine:v1beta/appengine.apps.services.delete/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.delete/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.get": get_app_service +"/appengine:v1beta/appengine.apps.services.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.get/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.list": list_app_services +"/appengine:v1beta/appengine.apps.services.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.services.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.services.patch": patch_app_service +"/appengine:v1beta/appengine.apps.services.patch/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.patch/migrateTraffic": migrate_traffic +"/appengine:v1beta/appengine.apps.services.patch/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.patch/updateMask": update_mask +"/appengine:v1beta/appengine.apps.services.versions.create": create_app_service_version +"/appengine:v1beta/appengine.apps.services.versions.create/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.create/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.delete": delete_app_service_version +"/appengine:v1beta/appengine.apps.services.versions.delete/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.delete/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.delete/versionsId": versions_id +"/appengine:v1beta/appengine.apps.services.versions.get": get_app_service_version +"/appengine:v1beta/appengine.apps.services.versions.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.get/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.get/versionsId": versions_id +"/appengine:v1beta/appengine.apps.services.versions.get/view": view +"/appengine:v1beta/appengine.apps.services.versions.instances.debug": debug_instance +"/appengine:v1beta/appengine.apps.services.versions.instances.debug/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.instances.debug/instancesId": instances_id +"/appengine:v1beta/appengine.apps.services.versions.instances.debug/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.instances.debug/versionsId": versions_id +"/appengine:v1beta/appengine.apps.services.versions.instances.delete": delete_app_service_version_instance +"/appengine:v1beta/appengine.apps.services.versions.instances.delete/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.instances.delete/instancesId": instances_id +"/appengine:v1beta/appengine.apps.services.versions.instances.delete/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.instances.delete/versionsId": versions_id +"/appengine:v1beta/appengine.apps.services.versions.instances.get": get_app_service_version_instance +"/appengine:v1beta/appengine.apps.services.versions.instances.get/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.instances.get/instancesId": instances_id +"/appengine:v1beta/appengine.apps.services.versions.instances.get/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.instances.get/versionsId": versions_id +"/appengine:v1beta/appengine.apps.services.versions.instances.list": list_app_service_version_instances +"/appengine:v1beta/appengine.apps.services.versions.instances.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.instances.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.services.versions.instances.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.services.versions.instances.list/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.instances.list/versionsId": versions_id +"/appengine:v1beta/appengine.apps.services.versions.list": list_app_service_versions +"/appengine:v1beta/appengine.apps.services.versions.list/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.list/pageSize": page_size +"/appengine:v1beta/appengine.apps.services.versions.list/pageToken": page_token +"/appengine:v1beta/appengine.apps.services.versions.list/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.list/view": view +"/appengine:v1beta/appengine.apps.services.versions.patch": patch_app_service_version +"/appengine:v1beta/appengine.apps.services.versions.patch/appsId": apps_id +"/appengine:v1beta/appengine.apps.services.versions.patch/servicesId": services_id +"/appengine:v1beta/appengine.apps.services.versions.patch/updateMask": update_mask +"/appengine:v1beta/appengine.apps.services.versions.patch/versionsId": versions_id +"/appengine:v1beta/fields": fields +"/appengine:v1beta/key": key +"/appengine:v1beta/quotaUser": quota_user +"/appengine:v1beta4/ApiConfigHandler": api_config_handler +"/appengine:v1beta4/ApiConfigHandler/authFailAction": auth_fail_action +"/appengine:v1beta4/ApiConfigHandler/login": login +"/appengine:v1beta4/ApiConfigHandler/script": script +"/appengine:v1beta4/ApiConfigHandler/securityLevel": security_level +"/appengine:v1beta4/ApiConfigHandler/url": url +"/appengine:v1beta4/ApiEndpointHandler": api_endpoint_handler +"/appengine:v1beta4/ApiEndpointHandler/scriptPath": script_path +"/appengine:v1beta4/Application": application +"/appengine:v1beta4/Application/authDomain": auth_domain +"/appengine:v1beta4/Application/codeBucket": code_bucket +"/appengine:v1beta4/Application/defaultBucket": default_bucket +"/appengine:v1beta4/Application/defaultCookieExpiration": default_cookie_expiration +"/appengine:v1beta4/Application/defaultHostname": default_hostname +"/appengine:v1beta4/Application/dispatchRules": dispatch_rules +"/appengine:v1beta4/Application/dispatchRules/dispatch_rule": dispatch_rule +"/appengine:v1beta4/Application/iap": iap +"/appengine:v1beta4/Application/id": id +"/appengine:v1beta4/Application/location": location +"/appengine:v1beta4/Application/name": name +"/appengine:v1beta4/AutomaticScaling": automatic_scaling +"/appengine:v1beta4/AutomaticScaling/coolDownPeriod": cool_down_period +"/appengine:v1beta4/AutomaticScaling/cpuUtilization": cpu_utilization +"/appengine:v1beta4/AutomaticScaling/diskUtilization": disk_utilization +"/appengine:v1beta4/AutomaticScaling/maxConcurrentRequests": max_concurrent_requests +"/appengine:v1beta4/AutomaticScaling/maxIdleInstances": max_idle_instances +"/appengine:v1beta4/AutomaticScaling/maxPendingLatency": max_pending_latency +"/appengine:v1beta4/AutomaticScaling/maxTotalInstances": max_total_instances +"/appengine:v1beta4/AutomaticScaling/minIdleInstances": min_idle_instances +"/appengine:v1beta4/AutomaticScaling/minPendingLatency": min_pending_latency +"/appengine:v1beta4/AutomaticScaling/minTotalInstances": min_total_instances +"/appengine:v1beta4/AutomaticScaling/networkUtilization": network_utilization +"/appengine:v1beta4/AutomaticScaling/requestUtilization": request_utilization +"/appengine:v1beta4/BasicScaling": basic_scaling +"/appengine:v1beta4/BasicScaling/idleTimeout": idle_timeout +"/appengine:v1beta4/BasicScaling/maxInstances": max_instances +"/appengine:v1beta4/ContainerInfo": container_info +"/appengine:v1beta4/ContainerInfo/image": image +"/appengine:v1beta4/CpuUtilization": cpu_utilization +"/appengine:v1beta4/CpuUtilization/aggregationWindowLength": aggregation_window_length +"/appengine:v1beta4/CpuUtilization/targetUtilization": target_utilization +"/appengine:v1beta4/DebugInstanceRequest": debug_instance_request +"/appengine:v1beta4/DebugInstanceRequest/sshKey": ssh_key +"/appengine:v1beta4/Deployment": deployment +"/appengine:v1beta4/Deployment/container": container +"/appengine:v1beta4/Deployment/files": files +"/appengine:v1beta4/Deployment/files/file": file +"/appengine:v1beta4/Deployment/sourceReferences": source_references +"/appengine:v1beta4/Deployment/sourceReferences/source_reference": source_reference +"/appengine:v1beta4/DiskUtilization": disk_utilization +"/appengine:v1beta4/DiskUtilization/targetReadBytesPerSec": target_read_bytes_per_sec +"/appengine:v1beta4/DiskUtilization/targetReadOpsPerSec": target_read_ops_per_sec +"/appengine:v1beta4/DiskUtilization/targetWriteBytesPerSec": target_write_bytes_per_sec +"/appengine:v1beta4/DiskUtilization/targetWriteOpsPerSec": target_write_ops_per_sec +"/appengine:v1beta4/ErrorHandler": error_handler +"/appengine:v1beta4/ErrorHandler/errorCode": error_code +"/appengine:v1beta4/ErrorHandler/mimeType": mime_type +"/appengine:v1beta4/ErrorHandler/staticFile": static_file +"/appengine:v1beta4/FileInfo": file_info +"/appengine:v1beta4/FileInfo/mimeType": mime_type +"/appengine:v1beta4/FileInfo/sha1Sum": sha1_sum +"/appengine:v1beta4/FileInfo/sourceUrl": source_url +"/appengine:v1beta4/HealthCheck": health_check +"/appengine:v1beta4/HealthCheck/checkInterval": check_interval +"/appengine:v1beta4/HealthCheck/disableHealthCheck": disable_health_check +"/appengine:v1beta4/HealthCheck/healthyThreshold": healthy_threshold +"/appengine:v1beta4/HealthCheck/host": host +"/appengine:v1beta4/HealthCheck/restartThreshold": restart_threshold +"/appengine:v1beta4/HealthCheck/timeout": timeout +"/appengine:v1beta4/HealthCheck/unhealthyThreshold": unhealthy_threshold +"/appengine:v1beta4/IdentityAwareProxy": identity_aware_proxy +"/appengine:v1beta4/IdentityAwareProxy/enabled": enabled +"/appengine:v1beta4/IdentityAwareProxy/oauth2ClientId": oauth2_client_id +"/appengine:v1beta4/IdentityAwareProxy/oauth2ClientSecret": oauth2_client_secret +"/appengine:v1beta4/IdentityAwareProxy/oauth2ClientSecretSha256": oauth2_client_secret_sha256 +"/appengine:v1beta4/Instance": instance +"/appengine:v1beta4/Instance/appEngineRelease": app_engine_release +"/appengine:v1beta4/Instance/availability": availability +"/appengine:v1beta4/Instance/averageLatency": average_latency +"/appengine:v1beta4/Instance/errors": errors +"/appengine:v1beta4/Instance/id": id +"/appengine:v1beta4/Instance/memoryUsage": memory_usage +"/appengine:v1beta4/Instance/name": name +"/appengine:v1beta4/Instance/qps": qps +"/appengine:v1beta4/Instance/requests": requests +"/appengine:v1beta4/Instance/startTimestamp": start_timestamp +"/appengine:v1beta4/Instance/vmId": vm_id +"/appengine:v1beta4/Instance/vmIp": vm_ip +"/appengine:v1beta4/Instance/vmName": vm_name +"/appengine:v1beta4/Instance/vmStatus": vm_status +"/appengine:v1beta4/Instance/vmUnlocked": vm_unlocked +"/appengine:v1beta4/Instance/vmZoneName": vm_zone_name +"/appengine:v1beta4/Library": library +"/appengine:v1beta4/Library/name": name +"/appengine:v1beta4/Library/version": version +"/appengine:v1beta4/ListInstancesResponse": list_instances_response +"/appengine:v1beta4/ListInstancesResponse/instances": instances +"/appengine:v1beta4/ListInstancesResponse/instances/instance": instance +"/appengine:v1beta4/ListInstancesResponse/nextPageToken": next_page_token +"/appengine:v1beta4/ListLocationsResponse": list_locations_response +"/appengine:v1beta4/ListLocationsResponse/locations": locations +"/appengine:v1beta4/ListLocationsResponse/locations/location": location +"/appengine:v1beta4/ListLocationsResponse/nextPageToken": next_page_token +"/appengine:v1beta4/ListModulesResponse": list_modules_response +"/appengine:v1beta4/ListModulesResponse/modules": modules +"/appengine:v1beta4/ListModulesResponse/modules/module": module +"/appengine:v1beta4/ListModulesResponse/nextPageToken": next_page_token +"/appengine:v1beta4/ListOperationsResponse": list_operations_response +"/appengine:v1beta4/ListOperationsResponse/nextPageToken": next_page_token +"/appengine:v1beta4/ListOperationsResponse/operations": operations +"/appengine:v1beta4/ListOperationsResponse/operations/operation": operation +"/appengine:v1beta4/ListVersionsResponse": list_versions_response +"/appengine:v1beta4/ListVersionsResponse/nextPageToken": next_page_token +"/appengine:v1beta4/ListVersionsResponse/versions": versions +"/appengine:v1beta4/ListVersionsResponse/versions/version": version +"/appengine:v1beta4/Location": location +"/appengine:v1beta4/Location/labels": labels +"/appengine:v1beta4/Location/labels/label": label +"/appengine:v1beta4/Location/locationId": location_id +"/appengine:v1beta4/Location/metadata": metadata +"/appengine:v1beta4/Location/metadata/metadatum": metadatum +"/appengine:v1beta4/Location/name": name +"/appengine:v1beta4/LocationMetadata": location_metadata +"/appengine:v1beta4/LocationMetadata/flexibleEnvironmentAvailable": flexible_environment_available +"/appengine:v1beta4/LocationMetadata/standardEnvironmentAvailable": standard_environment_available +"/appengine:v1beta4/ManualScaling": manual_scaling +"/appengine:v1beta4/ManualScaling/instances": instances +"/appengine:v1beta4/Module": module +"/appengine:v1beta4/Module/id": id +"/appengine:v1beta4/Module/name": name +"/appengine:v1beta4/Module/split": split +"/appengine:v1beta4/Network": network +"/appengine:v1beta4/Network/forwardedPorts": forwarded_ports +"/appengine:v1beta4/Network/forwardedPorts/forwarded_port": forwarded_port +"/appengine:v1beta4/Network/instanceTag": instance_tag +"/appengine:v1beta4/Network/name": name +"/appengine:v1beta4/NetworkUtilization": network_utilization +"/appengine:v1beta4/NetworkUtilization/targetReceivedBytesPerSec": target_received_bytes_per_sec +"/appengine:v1beta4/NetworkUtilization/targetReceivedPacketsPerSec": target_received_packets_per_sec +"/appengine:v1beta4/NetworkUtilization/targetSentBytesPerSec": target_sent_bytes_per_sec +"/appengine:v1beta4/NetworkUtilization/targetSentPacketsPerSec": target_sent_packets_per_sec +"/appengine:v1beta4/Operation": operation +"/appengine:v1beta4/Operation/done": done +"/appengine:v1beta4/Operation/error": error +"/appengine:v1beta4/Operation/metadata": metadata +"/appengine:v1beta4/Operation/metadata/metadatum": metadatum +"/appengine:v1beta4/Operation/name": name +"/appengine:v1beta4/Operation/response": response +"/appengine:v1beta4/Operation/response/response": response +"/appengine:v1beta4/OperationMetadata": operation_metadata +"/appengine:v1beta4/OperationMetadata/endTime": end_time +"/appengine:v1beta4/OperationMetadata/insertTime": insert_time +"/appengine:v1beta4/OperationMetadata/method": method_prop +"/appengine:v1beta4/OperationMetadata/operationType": operation_type +"/appengine:v1beta4/OperationMetadata/target": target +"/appengine:v1beta4/OperationMetadata/user": user +"/appengine:v1beta4/OperationMetadataExperimental": operation_metadata_experimental +"/appengine:v1beta4/OperationMetadataExperimental/endTime": end_time +"/appengine:v1beta4/OperationMetadataExperimental/insertTime": insert_time +"/appengine:v1beta4/OperationMetadataExperimental/method": method_prop +"/appengine:v1beta4/OperationMetadataExperimental/target": target +"/appengine:v1beta4/OperationMetadataExperimental/user": user +"/appengine:v1beta4/OperationMetadataV1": operation_metadata_v1 +"/appengine:v1beta4/OperationMetadataV1/endTime": end_time +"/appengine:v1beta4/OperationMetadataV1/ephemeralMessage": ephemeral_message +"/appengine:v1beta4/OperationMetadataV1/insertTime": insert_time +"/appengine:v1beta4/OperationMetadataV1/method": method_prop +"/appengine:v1beta4/OperationMetadataV1/target": target +"/appengine:v1beta4/OperationMetadataV1/user": user +"/appengine:v1beta4/OperationMetadataV1/warning": warning +"/appengine:v1beta4/OperationMetadataV1/warning/warning": warning +"/appengine:v1beta4/OperationMetadataV1Alpha": operation_metadata_v1_alpha +"/appengine:v1beta4/OperationMetadataV1Alpha/endTime": end_time +"/appengine:v1beta4/OperationMetadataV1Alpha/ephemeralMessage": ephemeral_message +"/appengine:v1beta4/OperationMetadataV1Alpha/insertTime": insert_time +"/appengine:v1beta4/OperationMetadataV1Alpha/method": method_prop +"/appengine:v1beta4/OperationMetadataV1Alpha/target": target +"/appengine:v1beta4/OperationMetadataV1Alpha/user": user +"/appengine:v1beta4/OperationMetadataV1Alpha/warning": warning +"/appengine:v1beta4/OperationMetadataV1Alpha/warning/warning": warning +"/appengine:v1beta4/OperationMetadataV1Beta": operation_metadata_v1_beta +"/appengine:v1beta4/OperationMetadataV1Beta/endTime": end_time +"/appengine:v1beta4/OperationMetadataV1Beta/ephemeralMessage": ephemeral_message +"/appengine:v1beta4/OperationMetadataV1Beta/insertTime": insert_time +"/appengine:v1beta4/OperationMetadataV1Beta/method": method_prop +"/appengine:v1beta4/OperationMetadataV1Beta/target": target +"/appengine:v1beta4/OperationMetadataV1Beta/user": user +"/appengine:v1beta4/OperationMetadataV1Beta/warning": warning +"/appengine:v1beta4/OperationMetadataV1Beta/warning/warning": warning +"/appengine:v1beta4/OperationMetadataV1Beta5": operation_metadata_v1_beta5 +"/appengine:v1beta4/OperationMetadataV1Beta5/endTime": end_time +"/appengine:v1beta4/OperationMetadataV1Beta5/insertTime": insert_time +"/appengine:v1beta4/OperationMetadataV1Beta5/method": method_prop +"/appengine:v1beta4/OperationMetadataV1Beta5/target": target +"/appengine:v1beta4/OperationMetadataV1Beta5/user": user +"/appengine:v1beta4/RequestUtilization": request_utilization +"/appengine:v1beta4/RequestUtilization/targetConcurrentRequests": target_concurrent_requests +"/appengine:v1beta4/RequestUtilization/targetRequestCountPerSec": target_request_count_per_sec +"/appengine:v1beta4/Resources": resources +"/appengine:v1beta4/Resources/cpu": cpu +"/appengine:v1beta4/Resources/diskGb": disk_gb +"/appengine:v1beta4/Resources/memoryGb": memory_gb +"/appengine:v1beta4/Resources/volumes": volumes +"/appengine:v1beta4/Resources/volumes/volume": volume +"/appengine:v1beta4/ScriptHandler": script_handler +"/appengine:v1beta4/ScriptHandler/scriptPath": script_path +"/appengine:v1beta4/SourceReference": source_reference +"/appengine:v1beta4/SourceReference/repository": repository +"/appengine:v1beta4/SourceReference/revisionId": revision_id +"/appengine:v1beta4/StaticDirectoryHandler": static_directory_handler +"/appengine:v1beta4/StaticDirectoryHandler/applicationReadable": application_readable +"/appengine:v1beta4/StaticDirectoryHandler/directory": directory +"/appengine:v1beta4/StaticDirectoryHandler/expiration": expiration +"/appengine:v1beta4/StaticDirectoryHandler/httpHeaders": http_headers +"/appengine:v1beta4/StaticDirectoryHandler/httpHeaders/http_header": http_header +"/appengine:v1beta4/StaticDirectoryHandler/mimeType": mime_type +"/appengine:v1beta4/StaticDirectoryHandler/requireMatchingFile": require_matching_file +"/appengine:v1beta4/StaticFilesHandler": static_files_handler +"/appengine:v1beta4/StaticFilesHandler/applicationReadable": application_readable +"/appengine:v1beta4/StaticFilesHandler/expiration": expiration +"/appengine:v1beta4/StaticFilesHandler/httpHeaders": http_headers +"/appengine:v1beta4/StaticFilesHandler/httpHeaders/http_header": http_header +"/appengine:v1beta4/StaticFilesHandler/mimeType": mime_type +"/appengine:v1beta4/StaticFilesHandler/path": path +"/appengine:v1beta4/StaticFilesHandler/requireMatchingFile": require_matching_file +"/appengine:v1beta4/StaticFilesHandler/uploadPathRegex": upload_path_regex +"/appengine:v1beta4/Status": status +"/appengine:v1beta4/Status/code": code +"/appengine:v1beta4/Status/details": details +"/appengine:v1beta4/Status/details/detail": detail +"/appengine:v1beta4/Status/details/detail/detail": detail +"/appengine:v1beta4/Status/message": message +"/appengine:v1beta4/TrafficSplit": traffic_split +"/appengine:v1beta4/TrafficSplit/allocations": allocations +"/appengine:v1beta4/TrafficSplit/allocations/allocation": allocation +"/appengine:v1beta4/TrafficSplit/shardBy": shard_by +"/appengine:v1beta4/UrlDispatchRule": url_dispatch_rule +"/appengine:v1beta4/UrlDispatchRule/domain": domain +"/appengine:v1beta4/UrlDispatchRule/module": module +"/appengine:v1beta4/UrlDispatchRule/path": path +"/appengine:v1beta4/UrlMap": url_map +"/appengine:v1beta4/UrlMap/apiEndpoint": api_endpoint +"/appengine:v1beta4/UrlMap/authFailAction": auth_fail_action +"/appengine:v1beta4/UrlMap/login": login +"/appengine:v1beta4/UrlMap/redirectHttpResponseCode": redirect_http_response_code +"/appengine:v1beta4/UrlMap/script": script +"/appengine:v1beta4/UrlMap/securityLevel": security_level +"/appengine:v1beta4/UrlMap/staticDirectory": static_directory +"/appengine:v1beta4/UrlMap/staticFiles": static_files +"/appengine:v1beta4/UrlMap/urlRegex": url_regex +"/appengine:v1beta4/Version": version +"/appengine:v1beta4/Version/apiConfig": api_config +"/appengine:v1beta4/Version/automaticScaling": automatic_scaling +"/appengine:v1beta4/Version/basicScaling": basic_scaling +"/appengine:v1beta4/Version/betaSettings": beta_settings +"/appengine:v1beta4/Version/betaSettings/beta_setting": beta_setting +"/appengine:v1beta4/Version/creationTime": creation_time +"/appengine:v1beta4/Version/defaultExpiration": default_expiration +"/appengine:v1beta4/Version/deployer": deployer +"/appengine:v1beta4/Version/deployment": deployment +"/appengine:v1beta4/Version/env": env +"/appengine:v1beta4/Version/envVariables": env_variables +"/appengine:v1beta4/Version/envVariables/env_variable": env_variable +"/appengine:v1beta4/Version/errorHandlers": error_handlers +"/appengine:v1beta4/Version/errorHandlers/error_handler": error_handler +"/appengine:v1beta4/Version/handlers": handlers +"/appengine:v1beta4/Version/handlers/handler": handler +"/appengine:v1beta4/Version/healthCheck": health_check +"/appengine:v1beta4/Version/id": id +"/appengine:v1beta4/Version/inboundServices": inbound_services +"/appengine:v1beta4/Version/inboundServices/inbound_service": inbound_service +"/appengine:v1beta4/Version/instanceClass": instance_class +"/appengine:v1beta4/Version/libraries": libraries +"/appengine:v1beta4/Version/libraries/library": library +"/appengine:v1beta4/Version/manualScaling": manual_scaling +"/appengine:v1beta4/Version/name": name +"/appengine:v1beta4/Version/network": network +"/appengine:v1beta4/Version/nobuildFilesRegex": nobuild_files_regex +"/appengine:v1beta4/Version/resources": resources +"/appengine:v1beta4/Version/runtime": runtime +"/appengine:v1beta4/Version/runtimeApiVersion": runtime_api_version +"/appengine:v1beta4/Version/servingStatus": serving_status +"/appengine:v1beta4/Version/threadsafe": threadsafe +"/appengine:v1beta4/Version/vm": vm +"/appengine:v1beta4/Volume": volume +"/appengine:v1beta4/Volume/name": name +"/appengine:v1beta4/Volume/sizeGb": size_gb +"/appengine:v1beta4/Volume/volumeType": volume_type +"/appengine:v1beta4/appengine.apps.create": create_app +"/appengine:v1beta4/appengine.apps.get": get_app +"/appengine:v1beta4/appengine.apps.get/appsId": apps_id +"/appengine:v1beta4/appengine.apps.get/ensureResourcesExist": ensure_resources_exist +"/appengine:v1beta4/appengine.apps.locations.get": get_app_location +"/appengine:v1beta4/appengine.apps.locations.get/appsId": apps_id +"/appengine:v1beta4/appengine.apps.locations.get/locationsId": locations_id +"/appengine:v1beta4/appengine.apps.locations.list": list_app_locations +"/appengine:v1beta4/appengine.apps.locations.list/appsId": apps_id +"/appengine:v1beta4/appengine.apps.locations.list/filter": filter +"/appengine:v1beta4/appengine.apps.locations.list/pageSize": page_size +"/appengine:v1beta4/appengine.apps.locations.list/pageToken": page_token +"/appengine:v1beta4/appengine.apps.modules.delete": delete_app_module +"/appengine:v1beta4/appengine.apps.modules.delete/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.delete/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.get": get_app_module +"/appengine:v1beta4/appengine.apps.modules.get/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.get/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.list": list_app_modules +"/appengine:v1beta4/appengine.apps.modules.list/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.list/pageSize": page_size +"/appengine:v1beta4/appengine.apps.modules.list/pageToken": page_token +"/appengine:v1beta4/appengine.apps.modules.patch": patch_app_module +"/appengine:v1beta4/appengine.apps.modules.patch/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.patch/mask": mask +"/appengine:v1beta4/appengine.apps.modules.patch/migrateTraffic": migrate_traffic +"/appengine:v1beta4/appengine.apps.modules.patch/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.create": create_app_module_version +"/appengine:v1beta4/appengine.apps.modules.versions.create/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.create/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.delete": delete_app_module_version +"/appengine:v1beta4/appengine.apps.modules.versions.delete/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.delete/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.delete/versionsId": versions_id +"/appengine:v1beta4/appengine.apps.modules.versions.get": get_app_module_version +"/appengine:v1beta4/appengine.apps.modules.versions.get/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.get/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.get/versionsId": versions_id +"/appengine:v1beta4/appengine.apps.modules.versions.get/view": view +"/appengine:v1beta4/appengine.apps.modules.versions.instances.debug": debug_instance +"/appengine:v1beta4/appengine.apps.modules.versions.instances.debug/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.debug/instancesId": instances_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.debug/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.debug/versionsId": versions_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.delete": delete_app_module_version_instance +"/appengine:v1beta4/appengine.apps.modules.versions.instances.delete/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.delete/instancesId": instances_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.delete/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.delete/versionsId": versions_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.get": get_app_module_version_instance +"/appengine:v1beta4/appengine.apps.modules.versions.instances.get/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.get/instancesId": instances_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.get/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.get/versionsId": versions_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.list": list_app_module_version_instances +"/appengine:v1beta4/appengine.apps.modules.versions.instances.list/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.list/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.instances.list/pageSize": page_size +"/appengine:v1beta4/appengine.apps.modules.versions.instances.list/pageToken": page_token +"/appengine:v1beta4/appengine.apps.modules.versions.instances.list/versionsId": versions_id +"/appengine:v1beta4/appengine.apps.modules.versions.list": list_app_module_versions +"/appengine:v1beta4/appengine.apps.modules.versions.list/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.list/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.list/pageSize": page_size +"/appengine:v1beta4/appengine.apps.modules.versions.list/pageToken": page_token +"/appengine:v1beta4/appengine.apps.modules.versions.list/view": view +"/appengine:v1beta4/appengine.apps.modules.versions.patch": patch_app_module_version +"/appengine:v1beta4/appengine.apps.modules.versions.patch/appsId": apps_id +"/appengine:v1beta4/appengine.apps.modules.versions.patch/mask": mask +"/appengine:v1beta4/appengine.apps.modules.versions.patch/modulesId": modules_id +"/appengine:v1beta4/appengine.apps.modules.versions.patch/versionsId": versions_id +"/appengine:v1beta4/appengine.apps.operations.get": get_app_operation +"/appengine:v1beta4/appengine.apps.operations.get/appsId": apps_id +"/appengine:v1beta4/appengine.apps.operations.get/operationsId": operations_id +"/appengine:v1beta4/appengine.apps.operations.list": list_app_operations +"/appengine:v1beta4/appengine.apps.operations.list/appsId": apps_id +"/appengine:v1beta4/appengine.apps.operations.list/filter": filter +"/appengine:v1beta4/appengine.apps.operations.list/pageSize": page_size +"/appengine:v1beta4/appengine.apps.operations.list/pageToken": page_token +"/appengine:v1beta4/appengine.apps.patch": patch_app +"/appengine:v1beta4/appengine.apps.patch/appsId": apps_id +"/appengine:v1beta4/appengine.apps.patch/mask": mask +"/appengine:v1beta4/fields": fields +"/appengine:v1beta4/key": key +"/appengine:v1beta4/quotaUser": quota_user +"/appengine:v1beta5/ApiConfigHandler": api_config_handler +"/appengine:v1beta5/ApiConfigHandler/authFailAction": auth_fail_action +"/appengine:v1beta5/ApiConfigHandler/login": login +"/appengine:v1beta5/ApiConfigHandler/script": script +"/appengine:v1beta5/ApiConfigHandler/securityLevel": security_level +"/appengine:v1beta5/ApiConfigHandler/url": url +"/appengine:v1beta5/ApiEndpointHandler": api_endpoint_handler +"/appengine:v1beta5/ApiEndpointHandler/scriptPath": script_path +"/appengine:v1beta5/Application": application +"/appengine:v1beta5/Application/authDomain": auth_domain +"/appengine:v1beta5/Application/codeBucket": code_bucket +"/appengine:v1beta5/Application/defaultBucket": default_bucket +"/appengine:v1beta5/Application/defaultCookieExpiration": default_cookie_expiration +"/appengine:v1beta5/Application/defaultHostname": default_hostname +"/appengine:v1beta5/Application/dispatchRules": dispatch_rules +"/appengine:v1beta5/Application/dispatchRules/dispatch_rule": dispatch_rule +"/appengine:v1beta5/Application/iap": iap +"/appengine:v1beta5/Application/id": id +"/appengine:v1beta5/Application/location": location +"/appengine:v1beta5/Application/name": name +"/appengine:v1beta5/AutomaticScaling": automatic_scaling +"/appengine:v1beta5/AutomaticScaling/coolDownPeriod": cool_down_period +"/appengine:v1beta5/AutomaticScaling/cpuUtilization": cpu_utilization +"/appengine:v1beta5/AutomaticScaling/diskUtilization": disk_utilization +"/appengine:v1beta5/AutomaticScaling/maxConcurrentRequests": max_concurrent_requests +"/appengine:v1beta5/AutomaticScaling/maxIdleInstances": max_idle_instances +"/appengine:v1beta5/AutomaticScaling/maxPendingLatency": max_pending_latency +"/appengine:v1beta5/AutomaticScaling/maxTotalInstances": max_total_instances +"/appengine:v1beta5/AutomaticScaling/minIdleInstances": min_idle_instances +"/appengine:v1beta5/AutomaticScaling/minPendingLatency": min_pending_latency +"/appengine:v1beta5/AutomaticScaling/minTotalInstances": min_total_instances +"/appengine:v1beta5/AutomaticScaling/networkUtilization": network_utilization +"/appengine:v1beta5/AutomaticScaling/requestUtilization": request_utilization +"/appengine:v1beta5/BasicScaling": basic_scaling +"/appengine:v1beta5/BasicScaling/idleTimeout": idle_timeout +"/appengine:v1beta5/BasicScaling/maxInstances": max_instances +"/appengine:v1beta5/ContainerInfo": container_info +"/appengine:v1beta5/ContainerInfo/image": image +"/appengine:v1beta5/CpuUtilization": cpu_utilization +"/appengine:v1beta5/CpuUtilization/aggregationWindowLength": aggregation_window_length +"/appengine:v1beta5/CpuUtilization/targetUtilization": target_utilization +"/appengine:v1beta5/DebugInstanceRequest": debug_instance_request +"/appengine:v1beta5/DebugInstanceRequest/sshKey": ssh_key +"/appengine:v1beta5/Deployment": deployment +"/appengine:v1beta5/Deployment/container": container +"/appengine:v1beta5/Deployment/files": files +"/appengine:v1beta5/Deployment/files/file": file +"/appengine:v1beta5/Deployment/sourceReferences": source_references +"/appengine:v1beta5/Deployment/sourceReferences/source_reference": source_reference +"/appengine:v1beta5/DiskUtilization": disk_utilization +"/appengine:v1beta5/DiskUtilization/targetReadBytesPerSec": target_read_bytes_per_sec +"/appengine:v1beta5/DiskUtilization/targetReadOpsPerSec": target_read_ops_per_sec +"/appengine:v1beta5/DiskUtilization/targetWriteBytesPerSec": target_write_bytes_per_sec +"/appengine:v1beta5/DiskUtilization/targetWriteOpsPerSec": target_write_ops_per_sec +"/appengine:v1beta5/EndpointsApiService": endpoints_api_service +"/appengine:v1beta5/EndpointsApiService/configId": config_id +"/appengine:v1beta5/EndpointsApiService/name": name +"/appengine:v1beta5/ErrorHandler": error_handler +"/appengine:v1beta5/ErrorHandler/errorCode": error_code +"/appengine:v1beta5/ErrorHandler/mimeType": mime_type +"/appengine:v1beta5/ErrorHandler/staticFile": static_file +"/appengine:v1beta5/FileInfo": file_info +"/appengine:v1beta5/FileInfo/mimeType": mime_type +"/appengine:v1beta5/FileInfo/sha1Sum": sha1_sum +"/appengine:v1beta5/FileInfo/sourceUrl": source_url +"/appengine:v1beta5/HealthCheck": health_check +"/appengine:v1beta5/HealthCheck/checkInterval": check_interval +"/appengine:v1beta5/HealthCheck/disableHealthCheck": disable_health_check +"/appengine:v1beta5/HealthCheck/healthyThreshold": healthy_threshold +"/appengine:v1beta5/HealthCheck/host": host +"/appengine:v1beta5/HealthCheck/restartThreshold": restart_threshold +"/appengine:v1beta5/HealthCheck/timeout": timeout +"/appengine:v1beta5/HealthCheck/unhealthyThreshold": unhealthy_threshold +"/appengine:v1beta5/IdentityAwareProxy": identity_aware_proxy +"/appengine:v1beta5/IdentityAwareProxy/enabled": enabled +"/appengine:v1beta5/IdentityAwareProxy/oauth2ClientId": oauth2_client_id +"/appengine:v1beta5/IdentityAwareProxy/oauth2ClientSecret": oauth2_client_secret +"/appengine:v1beta5/IdentityAwareProxy/oauth2ClientSecretSha256": oauth2_client_secret_sha256 +"/appengine:v1beta5/Instance": instance +"/appengine:v1beta5/Instance/appEngineRelease": app_engine_release +"/appengine:v1beta5/Instance/availability": availability +"/appengine:v1beta5/Instance/averageLatency": average_latency +"/appengine:v1beta5/Instance/errors": errors +"/appengine:v1beta5/Instance/id": id +"/appengine:v1beta5/Instance/memoryUsage": memory_usage +"/appengine:v1beta5/Instance/name": name +"/appengine:v1beta5/Instance/qps": qps +"/appengine:v1beta5/Instance/requests": requests +"/appengine:v1beta5/Instance/startTimestamp": start_timestamp +"/appengine:v1beta5/Instance/vmId": vm_id +"/appengine:v1beta5/Instance/vmIp": vm_ip +"/appengine:v1beta5/Instance/vmName": vm_name +"/appengine:v1beta5/Instance/vmStatus": vm_status +"/appengine:v1beta5/Instance/vmUnlocked": vm_unlocked +"/appengine:v1beta5/Instance/vmZoneName": vm_zone_name +"/appengine:v1beta5/Library": library +"/appengine:v1beta5/Library/name": name +"/appengine:v1beta5/Library/version": version +"/appengine:v1beta5/ListInstancesResponse": list_instances_response +"/appengine:v1beta5/ListInstancesResponse/instances": instances +"/appengine:v1beta5/ListInstancesResponse/instances/instance": instance +"/appengine:v1beta5/ListInstancesResponse/nextPageToken": next_page_token +"/appengine:v1beta5/ListLocationsResponse": list_locations_response +"/appengine:v1beta5/ListLocationsResponse/locations": locations +"/appengine:v1beta5/ListLocationsResponse/locations/location": location +"/appengine:v1beta5/ListLocationsResponse/nextPageToken": next_page_token +"/appengine:v1beta5/ListOperationsResponse": list_operations_response +"/appengine:v1beta5/ListOperationsResponse/nextPageToken": next_page_token +"/appengine:v1beta5/ListOperationsResponse/operations": operations +"/appengine:v1beta5/ListOperationsResponse/operations/operation": operation +"/appengine:v1beta5/ListServicesResponse": list_services_response +"/appengine:v1beta5/ListServicesResponse/nextPageToken": next_page_token +"/appengine:v1beta5/ListServicesResponse/services": services +"/appengine:v1beta5/ListServicesResponse/services/service": service +"/appengine:v1beta5/ListVersionsResponse": list_versions_response +"/appengine:v1beta5/ListVersionsResponse/nextPageToken": next_page_token +"/appengine:v1beta5/ListVersionsResponse/versions": versions +"/appengine:v1beta5/ListVersionsResponse/versions/version": version +"/appengine:v1beta5/Location": location +"/appengine:v1beta5/Location/labels": labels +"/appengine:v1beta5/Location/labels/label": label +"/appengine:v1beta5/Location/locationId": location_id +"/appengine:v1beta5/Location/metadata": metadata +"/appengine:v1beta5/Location/metadata/metadatum": metadatum +"/appengine:v1beta5/Location/name": name +"/appengine:v1beta5/LocationMetadata": location_metadata +"/appengine:v1beta5/LocationMetadata/flexibleEnvironmentAvailable": flexible_environment_available +"/appengine:v1beta5/LocationMetadata/standardEnvironmentAvailable": standard_environment_available +"/appengine:v1beta5/ManualScaling": manual_scaling +"/appengine:v1beta5/ManualScaling/instances": instances +"/appengine:v1beta5/Network": network +"/appengine:v1beta5/Network/forwardedPorts": forwarded_ports +"/appengine:v1beta5/Network/forwardedPorts/forwarded_port": forwarded_port +"/appengine:v1beta5/Network/instanceTag": instance_tag +"/appengine:v1beta5/Network/name": name +"/appengine:v1beta5/Network/subnetworkName": subnetwork_name +"/appengine:v1beta5/NetworkUtilization": network_utilization +"/appengine:v1beta5/NetworkUtilization/targetReceivedBytesPerSec": target_received_bytes_per_sec +"/appengine:v1beta5/NetworkUtilization/targetReceivedPacketsPerSec": target_received_packets_per_sec +"/appengine:v1beta5/NetworkUtilization/targetSentBytesPerSec": target_sent_bytes_per_sec +"/appengine:v1beta5/NetworkUtilization/targetSentPacketsPerSec": target_sent_packets_per_sec +"/appengine:v1beta5/Operation": operation +"/appengine:v1beta5/Operation/done": done +"/appengine:v1beta5/Operation/error": error +"/appengine:v1beta5/Operation/metadata": metadata +"/appengine:v1beta5/Operation/metadata/metadatum": metadatum +"/appengine:v1beta5/Operation/name": name +"/appengine:v1beta5/Operation/response": response +"/appengine:v1beta5/Operation/response/response": response +"/appengine:v1beta5/OperationMetadata": operation_metadata +"/appengine:v1beta5/OperationMetadata/endTime": end_time +"/appengine:v1beta5/OperationMetadata/insertTime": insert_time +"/appengine:v1beta5/OperationMetadata/method": method_prop +"/appengine:v1beta5/OperationMetadata/operationType": operation_type +"/appengine:v1beta5/OperationMetadata/target": target +"/appengine:v1beta5/OperationMetadata/user": user +"/appengine:v1beta5/OperationMetadataExperimental": operation_metadata_experimental +"/appengine:v1beta5/OperationMetadataExperimental/endTime": end_time +"/appengine:v1beta5/OperationMetadataExperimental/insertTime": insert_time +"/appengine:v1beta5/OperationMetadataExperimental/method": method_prop +"/appengine:v1beta5/OperationMetadataExperimental/target": target +"/appengine:v1beta5/OperationMetadataExperimental/user": user +"/appengine:v1beta5/OperationMetadataV1": operation_metadata_v1 +"/appengine:v1beta5/OperationMetadataV1/endTime": end_time +"/appengine:v1beta5/OperationMetadataV1/ephemeralMessage": ephemeral_message +"/appengine:v1beta5/OperationMetadataV1/insertTime": insert_time +"/appengine:v1beta5/OperationMetadataV1/method": method_prop +"/appengine:v1beta5/OperationMetadataV1/target": target +"/appengine:v1beta5/OperationMetadataV1/user": user +"/appengine:v1beta5/OperationMetadataV1/warning": warning +"/appengine:v1beta5/OperationMetadataV1/warning/warning": warning +"/appengine:v1beta5/OperationMetadataV1Alpha": operation_metadata_v1_alpha +"/appengine:v1beta5/OperationMetadataV1Alpha/endTime": end_time +"/appengine:v1beta5/OperationMetadataV1Alpha/ephemeralMessage": ephemeral_message +"/appengine:v1beta5/OperationMetadataV1Alpha/insertTime": insert_time +"/appengine:v1beta5/OperationMetadataV1Alpha/method": method_prop +"/appengine:v1beta5/OperationMetadataV1Alpha/target": target +"/appengine:v1beta5/OperationMetadataV1Alpha/user": user +"/appengine:v1beta5/OperationMetadataV1Alpha/warning": warning +"/appengine:v1beta5/OperationMetadataV1Alpha/warning/warning": warning +"/appengine:v1beta5/OperationMetadataV1Beta": operation_metadata_v1_beta +"/appengine:v1beta5/OperationMetadataV1Beta/endTime": end_time +"/appengine:v1beta5/OperationMetadataV1Beta/ephemeralMessage": ephemeral_message +"/appengine:v1beta5/OperationMetadataV1Beta/insertTime": insert_time +"/appengine:v1beta5/OperationMetadataV1Beta/method": method_prop +"/appengine:v1beta5/OperationMetadataV1Beta/target": target +"/appengine:v1beta5/OperationMetadataV1Beta/user": user +"/appengine:v1beta5/OperationMetadataV1Beta/warning": warning +"/appengine:v1beta5/OperationMetadataV1Beta/warning/warning": warning +"/appengine:v1beta5/OperationMetadataV1Beta5": operation_metadata_v1_beta5 +"/appengine:v1beta5/OperationMetadataV1Beta5/endTime": end_time +"/appengine:v1beta5/OperationMetadataV1Beta5/insertTime": insert_time +"/appengine:v1beta5/OperationMetadataV1Beta5/method": method_prop +"/appengine:v1beta5/OperationMetadataV1Beta5/target": target +"/appengine:v1beta5/OperationMetadataV1Beta5/user": user +"/appengine:v1beta5/RequestUtilization": request_utilization +"/appengine:v1beta5/RequestUtilization/targetConcurrentRequests": target_concurrent_requests +"/appengine:v1beta5/RequestUtilization/targetRequestCountPerSec": target_request_count_per_sec +"/appengine:v1beta5/Resources": resources +"/appengine:v1beta5/Resources/cpu": cpu +"/appengine:v1beta5/Resources/diskGb": disk_gb +"/appengine:v1beta5/Resources/memoryGb": memory_gb +"/appengine:v1beta5/Resources/volumes": volumes +"/appengine:v1beta5/Resources/volumes/volume": volume +"/appengine:v1beta5/ScriptHandler": script_handler +"/appengine:v1beta5/ScriptHandler/scriptPath": script_path +"/appengine:v1beta5/Service": service +"/appengine:v1beta5/Service/id": id +"/appengine:v1beta5/Service/name": name +"/appengine:v1beta5/Service/split": split +"/appengine:v1beta5/SourceReference": source_reference +"/appengine:v1beta5/SourceReference/repository": repository +"/appengine:v1beta5/SourceReference/revisionId": revision_id +"/appengine:v1beta5/StaticFilesHandler": static_files_handler +"/appengine:v1beta5/StaticFilesHandler/applicationReadable": application_readable +"/appengine:v1beta5/StaticFilesHandler/expiration": expiration +"/appengine:v1beta5/StaticFilesHandler/httpHeaders": http_headers +"/appengine:v1beta5/StaticFilesHandler/httpHeaders/http_header": http_header +"/appengine:v1beta5/StaticFilesHandler/mimeType": mime_type +"/appengine:v1beta5/StaticFilesHandler/path": path +"/appengine:v1beta5/StaticFilesHandler/requireMatchingFile": require_matching_file +"/appengine:v1beta5/StaticFilesHandler/uploadPathRegex": upload_path_regex +"/appengine:v1beta5/Status": status +"/appengine:v1beta5/Status/code": code +"/appengine:v1beta5/Status/details": details +"/appengine:v1beta5/Status/details/detail": detail +"/appengine:v1beta5/Status/details/detail/detail": detail +"/appengine:v1beta5/Status/message": message +"/appengine:v1beta5/TrafficSplit": traffic_split +"/appengine:v1beta5/TrafficSplit/allocations": allocations +"/appengine:v1beta5/TrafficSplit/allocations/allocation": allocation +"/appengine:v1beta5/TrafficSplit/shardBy": shard_by +"/appengine:v1beta5/UrlDispatchRule": url_dispatch_rule +"/appengine:v1beta5/UrlDispatchRule/domain": domain +"/appengine:v1beta5/UrlDispatchRule/path": path +"/appengine:v1beta5/UrlDispatchRule/service": service +"/appengine:v1beta5/UrlMap": url_map +"/appengine:v1beta5/UrlMap/apiEndpoint": api_endpoint +"/appengine:v1beta5/UrlMap/authFailAction": auth_fail_action +"/appengine:v1beta5/UrlMap/login": login +"/appengine:v1beta5/UrlMap/redirectHttpResponseCode": redirect_http_response_code +"/appengine:v1beta5/UrlMap/script": script +"/appengine:v1beta5/UrlMap/securityLevel": security_level +"/appengine:v1beta5/UrlMap/staticFiles": static_files +"/appengine:v1beta5/UrlMap/urlRegex": url_regex +"/appengine:v1beta5/Version": version +"/appengine:v1beta5/Version/apiConfig": api_config +"/appengine:v1beta5/Version/automaticScaling": automatic_scaling +"/appengine:v1beta5/Version/basicScaling": basic_scaling +"/appengine:v1beta5/Version/betaSettings": beta_settings +"/appengine:v1beta5/Version/betaSettings/beta_setting": beta_setting +"/appengine:v1beta5/Version/creationTime": creation_time +"/appengine:v1beta5/Version/defaultExpiration": default_expiration +"/appengine:v1beta5/Version/deployer": deployer +"/appengine:v1beta5/Version/deployment": deployment +"/appengine:v1beta5/Version/diskUsageBytes": disk_usage_bytes +"/appengine:v1beta5/Version/endpointsApiService": endpoints_api_service +"/appengine:v1beta5/Version/env": env +"/appengine:v1beta5/Version/envVariables": env_variables +"/appengine:v1beta5/Version/envVariables/env_variable": env_variable +"/appengine:v1beta5/Version/errorHandlers": error_handlers +"/appengine:v1beta5/Version/errorHandlers/error_handler": error_handler +"/appengine:v1beta5/Version/handlers": handlers +"/appengine:v1beta5/Version/handlers/handler": handler +"/appengine:v1beta5/Version/healthCheck": health_check +"/appengine:v1beta5/Version/id": id +"/appengine:v1beta5/Version/inboundServices": inbound_services +"/appengine:v1beta5/Version/inboundServices/inbound_service": inbound_service +"/appengine:v1beta5/Version/instanceClass": instance_class +"/appengine:v1beta5/Version/libraries": libraries +"/appengine:v1beta5/Version/libraries/library": library +"/appengine:v1beta5/Version/manualScaling": manual_scaling +"/appengine:v1beta5/Version/name": name +"/appengine:v1beta5/Version/network": network +"/appengine:v1beta5/Version/nobuildFilesRegex": nobuild_files_regex +"/appengine:v1beta5/Version/resources": resources +"/appengine:v1beta5/Version/runtime": runtime +"/appengine:v1beta5/Version/runtimeApiVersion": runtime_api_version +"/appengine:v1beta5/Version/servingStatus": serving_status +"/appengine:v1beta5/Version/threadsafe": threadsafe +"/appengine:v1beta5/Version/vm": vm +"/appengine:v1beta5/Volume": volume +"/appengine:v1beta5/Volume/name": name +"/appengine:v1beta5/Volume/sizeGb": size_gb +"/appengine:v1beta5/Volume/volumeType": volume_type +"/appengine:v1beta5/appengine.apps.create": create_app +"/appengine:v1beta5/appengine.apps.get": get_app +"/appengine:v1beta5/appengine.apps.get/appsId": apps_id +"/appengine:v1beta5/appengine.apps.get/ensureResourcesExist": ensure_resources_exist +"/appengine:v1beta5/appengine.apps.locations.get": get_app_location +"/appengine:v1beta5/appengine.apps.locations.get/appsId": apps_id +"/appengine:v1beta5/appengine.apps.locations.get/locationsId": locations_id +"/appengine:v1beta5/appengine.apps.locations.list": list_app_locations +"/appengine:v1beta5/appengine.apps.locations.list/appsId": apps_id +"/appengine:v1beta5/appengine.apps.locations.list/filter": filter +"/appengine:v1beta5/appengine.apps.locations.list/pageSize": page_size +"/appengine:v1beta5/appengine.apps.locations.list/pageToken": page_token +"/appengine:v1beta5/appengine.apps.operations.get": get_app_operation +"/appengine:v1beta5/appengine.apps.operations.get/appsId": apps_id +"/appengine:v1beta5/appengine.apps.operations.get/operationsId": operations_id +"/appengine:v1beta5/appengine.apps.operations.list": list_app_operations +"/appengine:v1beta5/appengine.apps.operations.list/appsId": apps_id +"/appengine:v1beta5/appengine.apps.operations.list/filter": filter +"/appengine:v1beta5/appengine.apps.operations.list/pageSize": page_size +"/appengine:v1beta5/appengine.apps.operations.list/pageToken": page_token +"/appengine:v1beta5/appengine.apps.patch": patch_app +"/appengine:v1beta5/appengine.apps.patch/appsId": apps_id +"/appengine:v1beta5/appengine.apps.patch/mask": mask +"/appengine:v1beta5/appengine.apps.services.delete": delete_app_service +"/appengine:v1beta5/appengine.apps.services.delete/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.delete/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.get": get_app_service +"/appengine:v1beta5/appengine.apps.services.get/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.get/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.list": list_app_services +"/appengine:v1beta5/appengine.apps.services.list/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.list/pageSize": page_size +"/appengine:v1beta5/appengine.apps.services.list/pageToken": page_token +"/appengine:v1beta5/appengine.apps.services.patch": patch_app_service +"/appengine:v1beta5/appengine.apps.services.patch/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.patch/mask": mask +"/appengine:v1beta5/appengine.apps.services.patch/migrateTraffic": migrate_traffic +"/appengine:v1beta5/appengine.apps.services.patch/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.create": create_app_service_version +"/appengine:v1beta5/appengine.apps.services.versions.create/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.create/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.delete": delete_app_service_version +"/appengine:v1beta5/appengine.apps.services.versions.delete/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.delete/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.delete/versionsId": versions_id +"/appengine:v1beta5/appengine.apps.services.versions.get": get_app_service_version +"/appengine:v1beta5/appengine.apps.services.versions.get/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.get/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.get/versionsId": versions_id +"/appengine:v1beta5/appengine.apps.services.versions.get/view": view +"/appengine:v1beta5/appengine.apps.services.versions.instances.debug": debug_instance +"/appengine:v1beta5/appengine.apps.services.versions.instances.debug/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.debug/instancesId": instances_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.debug/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.debug/versionsId": versions_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.delete": delete_app_service_version_instance +"/appengine:v1beta5/appengine.apps.services.versions.instances.delete/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.delete/instancesId": instances_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.delete/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.delete/versionsId": versions_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.get": get_app_service_version_instance +"/appengine:v1beta5/appengine.apps.services.versions.instances.get/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.get/instancesId": instances_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.get/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.get/versionsId": versions_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.list": list_app_service_version_instances +"/appengine:v1beta5/appengine.apps.services.versions.instances.list/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.list/pageSize": page_size +"/appengine:v1beta5/appengine.apps.services.versions.instances.list/pageToken": page_token +"/appengine:v1beta5/appengine.apps.services.versions.instances.list/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.instances.list/versionsId": versions_id +"/appengine:v1beta5/appengine.apps.services.versions.list": list_app_service_versions +"/appengine:v1beta5/appengine.apps.services.versions.list/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.list/pageSize": page_size +"/appengine:v1beta5/appengine.apps.services.versions.list/pageToken": page_token +"/appengine:v1beta5/appengine.apps.services.versions.list/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.list/view": view +"/appengine:v1beta5/appengine.apps.services.versions.patch": patch_app_service_version +"/appengine:v1beta5/appengine.apps.services.versions.patch/appsId": apps_id +"/appengine:v1beta5/appengine.apps.services.versions.patch/mask": mask +"/appengine:v1beta5/appengine.apps.services.versions.patch/servicesId": services_id +"/appengine:v1beta5/appengine.apps.services.versions.patch/versionsId": versions_id +"/appengine:v1beta5/fields": fields +"/appengine:v1beta5/key": key +"/appengine:v1beta5/quotaUser": quota_user "/appsactivity:v1/Activity": activity "/appsactivity:v1/Activity/combinedEvent": combined_event "/appsactivity:v1/Activity/singleEvents": single_events @@ -6964,6 +9169,153 @@ "/bigquerydatatransfer:v1/fields": fields "/bigquerydatatransfer:v1/key": key "/bigquerydatatransfer:v1/quotaUser": quota_user +"/blogger:v2/Blog": blog +"/blogger:v2/Blog/description": description +"/blogger:v2/Blog/id": id +"/blogger:v2/Blog/kind": kind +"/blogger:v2/Blog/locale": locale +"/blogger:v2/Blog/locale/country": country +"/blogger:v2/Blog/locale/language": language +"/blogger:v2/Blog/locale/variant": variant +"/blogger:v2/Blog/name": name +"/blogger:v2/Blog/pages": pages +"/blogger:v2/Blog/pages/selfLink": self_link +"/blogger:v2/Blog/pages/totalItems": total_items +"/blogger:v2/Blog/posts": posts +"/blogger:v2/Blog/posts/selfLink": self_link +"/blogger:v2/Blog/posts/totalItems": total_items +"/blogger:v2/Blog/published": published +"/blogger:v2/Blog/selfLink": self_link +"/blogger:v2/Blog/updated": updated +"/blogger:v2/Blog/url": url +"/blogger:v2/BlogList": blog_list +"/blogger:v2/BlogList/items": items +"/blogger:v2/BlogList/items/item": item +"/blogger:v2/BlogList/kind": kind +"/blogger:v2/Comment": comment +"/blogger:v2/Comment/author": author +"/blogger:v2/Comment/author/displayName": display_name +"/blogger:v2/Comment/author/id": id +"/blogger:v2/Comment/author/image": image +"/blogger:v2/Comment/author/image/url": url +"/blogger:v2/Comment/author/url": url +"/blogger:v2/Comment/blog": blog +"/blogger:v2/Comment/blog/id": id +"/blogger:v2/Comment/content": content +"/blogger:v2/Comment/id": id +"/blogger:v2/Comment/inReplyTo": in_reply_to +"/blogger:v2/Comment/inReplyTo/id": id +"/blogger:v2/Comment/kind": kind +"/blogger:v2/Comment/post": post +"/blogger:v2/Comment/post/id": id +"/blogger:v2/Comment/published": published +"/blogger:v2/Comment/selfLink": self_link +"/blogger:v2/Comment/updated": updated +"/blogger:v2/CommentList": comment_list +"/blogger:v2/CommentList/items": items +"/blogger:v2/CommentList/items/item": item +"/blogger:v2/CommentList/kind": kind +"/blogger:v2/CommentList/nextPageToken": next_page_token +"/blogger:v2/CommentList/prevPageToken": prev_page_token +"/blogger:v2/Page": page +"/blogger:v2/Page/author": author +"/blogger:v2/Page/author/displayName": display_name +"/blogger:v2/Page/author/id": id +"/blogger:v2/Page/author/image": image +"/blogger:v2/Page/author/image/url": url +"/blogger:v2/Page/author/url": url +"/blogger:v2/Page/blog": blog +"/blogger:v2/Page/blog/id": id +"/blogger:v2/Page/content": content +"/blogger:v2/Page/id": id +"/blogger:v2/Page/kind": kind +"/blogger:v2/Page/published": published +"/blogger:v2/Page/selfLink": self_link +"/blogger:v2/Page/title": title +"/blogger:v2/Page/updated": updated +"/blogger:v2/Page/url": url +"/blogger:v2/PageList": page_list +"/blogger:v2/PageList/items": items +"/blogger:v2/PageList/items/item": item +"/blogger:v2/PageList/kind": kind +"/blogger:v2/Post": post +"/blogger:v2/Post/author": author +"/blogger:v2/Post/author/displayName": display_name +"/blogger:v2/Post/author/id": id +"/blogger:v2/Post/author/image": image +"/blogger:v2/Post/author/image/url": url +"/blogger:v2/Post/author/url": url +"/blogger:v2/Post/blog": blog +"/blogger:v2/Post/blog/id": id +"/blogger:v2/Post/content": content +"/blogger:v2/Post/id": id +"/blogger:v2/Post/kind": kind +"/blogger:v2/Post/labels": labels +"/blogger:v2/Post/labels/label": label +"/blogger:v2/Post/published": published +"/blogger:v2/Post/replies": replies +"/blogger:v2/Post/replies/selfLink": self_link +"/blogger:v2/Post/replies/totalItems": total_items +"/blogger:v2/Post/selfLink": self_link +"/blogger:v2/Post/title": title +"/blogger:v2/Post/updated": updated +"/blogger:v2/Post/url": url +"/blogger:v2/PostList": post_list +"/blogger:v2/PostList/items": items +"/blogger:v2/PostList/items/item": item +"/blogger:v2/PostList/kind": kind +"/blogger:v2/PostList/nextPageToken": next_page_token +"/blogger:v2/PostList/prevPageToken": prev_page_token +"/blogger:v2/User": user +"/blogger:v2/User/about": about +"/blogger:v2/User/blogs": blogs +"/blogger:v2/User/blogs/selfLink": self_link +"/blogger:v2/User/created": created +"/blogger:v2/User/displayName": display_name +"/blogger:v2/User/id": id +"/blogger:v2/User/kind": kind +"/blogger:v2/User/locale": locale +"/blogger:v2/User/locale/country": country +"/blogger:v2/User/locale/language": language +"/blogger:v2/User/locale/variant": variant +"/blogger:v2/User/selfLink": self_link +"/blogger:v2/User/url": url +"/blogger:v2/blogger.blogs.get": get_blog +"/blogger:v2/blogger.blogs.get/blogId": blog_id +"/blogger:v2/blogger.comments.get": get_comment +"/blogger:v2/blogger.comments.get/blogId": blog_id +"/blogger:v2/blogger.comments.get/commentId": comment_id +"/blogger:v2/blogger.comments.get/postId": post_id +"/blogger:v2/blogger.comments.list": list_comments +"/blogger:v2/blogger.comments.list/blogId": blog_id +"/blogger:v2/blogger.comments.list/fetchBodies": fetch_bodies +"/blogger:v2/blogger.comments.list/maxResults": max_results +"/blogger:v2/blogger.comments.list/pageToken": page_token +"/blogger:v2/blogger.comments.list/postId": post_id +"/blogger:v2/blogger.comments.list/startDate": start_date +"/blogger:v2/blogger.pages.get": get_page +"/blogger:v2/blogger.pages.get/blogId": blog_id +"/blogger:v2/blogger.pages.get/pageId": page_id +"/blogger:v2/blogger.pages.list": list_pages +"/blogger:v2/blogger.pages.list/blogId": blog_id +"/blogger:v2/blogger.pages.list/fetchBodies": fetch_bodies +"/blogger:v2/blogger.posts.get": get_post +"/blogger:v2/blogger.posts.get/blogId": blog_id +"/blogger:v2/blogger.posts.get/postId": post_id +"/blogger:v2/blogger.posts.list": list_posts +"/blogger:v2/blogger.posts.list/blogId": blog_id +"/blogger:v2/blogger.posts.list/fetchBodies": fetch_bodies +"/blogger:v2/blogger.posts.list/maxResults": max_results +"/blogger:v2/blogger.posts.list/pageToken": page_token +"/blogger:v2/blogger.posts.list/startDate": start_date +"/blogger:v2/blogger.users.blogs.list": list_user_blogs +"/blogger:v2/blogger.users.blogs.list/userId": user_id +"/blogger:v2/blogger.users.get": get_user +"/blogger:v2/blogger.users.get/userId": user_id +"/blogger:v2/fields": fields +"/blogger:v2/key": key +"/blogger:v2/quotaUser": quota_user +"/blogger:v2/userIp": user_ip "/blogger:v3/Blog": blog "/blogger:v3/Blog/customMetaData": custom_meta_data "/blogger:v3/Blog/description": description @@ -9729,6 +12081,109 @@ "/cloudfunctions:v1/fields": fields "/cloudfunctions:v1/key": key "/cloudfunctions:v1/quotaUser": quota_user +"/cloudfunctions:v1beta2/CallFunctionRequest": call_function_request +"/cloudfunctions:v1beta2/CallFunctionRequest/data": data +"/cloudfunctions:v1beta2/CallFunctionResponse": call_function_response +"/cloudfunctions:v1beta2/CallFunctionResponse/error": error +"/cloudfunctions:v1beta2/CallFunctionResponse/executionId": execution_id +"/cloudfunctions:v1beta2/CallFunctionResponse/result": result +"/cloudfunctions:v1beta2/CloudFunction": cloud_function +"/cloudfunctions:v1beta2/CloudFunction/availableMemoryMb": available_memory_mb +"/cloudfunctions:v1beta2/CloudFunction/entryPoint": entry_point +"/cloudfunctions:v1beta2/CloudFunction/eventTrigger": event_trigger +"/cloudfunctions:v1beta2/CloudFunction/httpsTrigger": https_trigger +"/cloudfunctions:v1beta2/CloudFunction/latestOperation": latest_operation +"/cloudfunctions:v1beta2/CloudFunction/name": name +"/cloudfunctions:v1beta2/CloudFunction/serviceAccount": service_account +"/cloudfunctions:v1beta2/CloudFunction/sourceArchiveUrl": source_archive_url +"/cloudfunctions:v1beta2/CloudFunction/sourceRepository": source_repository +"/cloudfunctions:v1beta2/CloudFunction/sourceRepositoryUrl": source_repository_url +"/cloudfunctions:v1beta2/CloudFunction/status": status +"/cloudfunctions:v1beta2/CloudFunction/timeout": timeout +"/cloudfunctions:v1beta2/CloudFunction/updateTime": update_time +"/cloudfunctions:v1beta2/EventTrigger": event_trigger +"/cloudfunctions:v1beta2/EventTrigger/eventType": event_type +"/cloudfunctions:v1beta2/EventTrigger/failurePolicy": failure_policy +"/cloudfunctions:v1beta2/EventTrigger/resource": resource +"/cloudfunctions:v1beta2/FailurePolicy": failure_policy +"/cloudfunctions:v1beta2/FailurePolicy/retry": retry +"/cloudfunctions:v1beta2/HTTPSTrigger": https_trigger +"/cloudfunctions:v1beta2/HTTPSTrigger/url": url +"/cloudfunctions:v1beta2/ListFunctionsResponse": list_functions_response +"/cloudfunctions:v1beta2/ListFunctionsResponse/functions": functions +"/cloudfunctions:v1beta2/ListFunctionsResponse/functions/function": function +"/cloudfunctions:v1beta2/ListFunctionsResponse/nextPageToken": next_page_token +"/cloudfunctions:v1beta2/ListLocationsResponse": list_locations_response +"/cloudfunctions:v1beta2/ListLocationsResponse/locations": locations +"/cloudfunctions:v1beta2/ListLocationsResponse/locations/location": location +"/cloudfunctions:v1beta2/ListLocationsResponse/nextPageToken": next_page_token +"/cloudfunctions:v1beta2/ListOperationsResponse": list_operations_response +"/cloudfunctions:v1beta2/ListOperationsResponse/nextPageToken": next_page_token +"/cloudfunctions:v1beta2/ListOperationsResponse/operations": operations +"/cloudfunctions:v1beta2/ListOperationsResponse/operations/operation": operation +"/cloudfunctions:v1beta2/Location": location +"/cloudfunctions:v1beta2/Location/labels": labels +"/cloudfunctions:v1beta2/Location/labels/label": label +"/cloudfunctions:v1beta2/Location/locationId": location_id +"/cloudfunctions:v1beta2/Location/metadata": metadata +"/cloudfunctions:v1beta2/Location/metadata/metadatum": metadatum +"/cloudfunctions:v1beta2/Location/name": name +"/cloudfunctions:v1beta2/Operation": operation +"/cloudfunctions:v1beta2/Operation/done": done +"/cloudfunctions:v1beta2/Operation/error": error +"/cloudfunctions:v1beta2/Operation/metadata": metadata +"/cloudfunctions:v1beta2/Operation/metadata/metadatum": metadatum +"/cloudfunctions:v1beta2/Operation/name": name +"/cloudfunctions:v1beta2/Operation/response": response +"/cloudfunctions:v1beta2/Operation/response/response": response +"/cloudfunctions:v1beta2/OperationMetadataV1Beta2": operation_metadata_v1_beta2 +"/cloudfunctions:v1beta2/OperationMetadataV1Beta2/request": request +"/cloudfunctions:v1beta2/OperationMetadataV1Beta2/request/request": request +"/cloudfunctions:v1beta2/OperationMetadataV1Beta2/target": target +"/cloudfunctions:v1beta2/OperationMetadataV1Beta2/type": type +"/cloudfunctions:v1beta2/Retry": retry +"/cloudfunctions:v1beta2/SourceRepository": source_repository +"/cloudfunctions:v1beta2/SourceRepository/branch": branch +"/cloudfunctions:v1beta2/SourceRepository/deployedRevision": deployed_revision +"/cloudfunctions:v1beta2/SourceRepository/repositoryUrl": repository_url +"/cloudfunctions:v1beta2/SourceRepository/revision": revision +"/cloudfunctions:v1beta2/SourceRepository/sourcePath": source_path +"/cloudfunctions:v1beta2/SourceRepository/tag": tag +"/cloudfunctions:v1beta2/Status": status +"/cloudfunctions:v1beta2/Status/code": code +"/cloudfunctions:v1beta2/Status/details": details +"/cloudfunctions:v1beta2/Status/details/detail": detail +"/cloudfunctions:v1beta2/Status/details/detail/detail": detail +"/cloudfunctions:v1beta2/Status/message": message +"/cloudfunctions:v1beta2/cloudfunctions.operations.get": get_operation +"/cloudfunctions:v1beta2/cloudfunctions.operations.get/name": name +"/cloudfunctions:v1beta2/cloudfunctions.operations.list": list_operations +"/cloudfunctions:v1beta2/cloudfunctions.operations.list/filter": filter +"/cloudfunctions:v1beta2/cloudfunctions.operations.list/name": name +"/cloudfunctions:v1beta2/cloudfunctions.operations.list/pageSize": page_size +"/cloudfunctions:v1beta2/cloudfunctions.operations.list/pageToken": page_token +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.call": call_function +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.call/name": name +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.create": create_project_location_function +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.create/location": location +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.delete": delete_project_location_function +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.delete/name": name +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.get": get_project_location_function +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.get/name": name +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.list": list_project_location_functions +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.list/location": location +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.list/pageSize": page_size +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.list/pageToken": page_token +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.update": update_project_location_function +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.functions.update/name": name +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.list": list_project_locations +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.list/filter": filter +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.list/name": name +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.list/pageSize": page_size +"/cloudfunctions:v1beta2/cloudfunctions.projects.locations.list/pageToken": page_token +"/cloudfunctions:v1beta2/fields": fields +"/cloudfunctions:v1beta2/key": key +"/cloudfunctions:v1beta2/quotaUser": quota_user "/cloudkms:v1/AuditConfig": audit_config "/cloudkms:v1/AuditConfig/auditLogConfigs": audit_log_configs "/cloudkms:v1/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config @@ -10400,6 +12855,109 @@ "/cloudresourcemanager:v1beta1/fields": fields "/cloudresourcemanager:v1beta1/key": key "/cloudresourcemanager:v1beta1/quotaUser": quota_user +"/cloudresourcemanager:v2beta1/AuditConfig": audit_config +"/cloudresourcemanager:v2beta1/AuditConfig/auditLogConfigs": audit_log_configs +"/cloudresourcemanager:v2beta1/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config +"/cloudresourcemanager:v2beta1/AuditConfig/service": service +"/cloudresourcemanager:v2beta1/AuditLogConfig": audit_log_config +"/cloudresourcemanager:v2beta1/AuditLogConfig/exemptedMembers": exempted_members +"/cloudresourcemanager:v2beta1/AuditLogConfig/exemptedMembers/exempted_member": exempted_member +"/cloudresourcemanager:v2beta1/AuditLogConfig/logType": log_type +"/cloudresourcemanager:v2beta1/Binding": binding +"/cloudresourcemanager:v2beta1/Binding/members": members +"/cloudresourcemanager:v2beta1/Binding/members/member": member +"/cloudresourcemanager:v2beta1/Binding/role": role +"/cloudresourcemanager:v2beta1/Folder": folder +"/cloudresourcemanager:v2beta1/Folder/createTime": create_time +"/cloudresourcemanager:v2beta1/Folder/displayName": display_name +"/cloudresourcemanager:v2beta1/Folder/lifecycleState": lifecycle_state +"/cloudresourcemanager:v2beta1/Folder/name": name +"/cloudresourcemanager:v2beta1/Folder/parent": parent +"/cloudresourcemanager:v2beta1/FolderOperation": folder_operation +"/cloudresourcemanager:v2beta1/FolderOperation/destinationParent": destination_parent +"/cloudresourcemanager:v2beta1/FolderOperation/displayName": display_name +"/cloudresourcemanager:v2beta1/FolderOperation/operationType": operation_type +"/cloudresourcemanager:v2beta1/FolderOperation/sourceParent": source_parent +"/cloudresourcemanager:v2beta1/FolderOperationError": folder_operation_error +"/cloudresourcemanager:v2beta1/FolderOperationError/errorMessageId": error_message_id +"/cloudresourcemanager:v2beta1/GetIamPolicyRequest": get_iam_policy_request +"/cloudresourcemanager:v2beta1/ListFoldersResponse": list_folders_response +"/cloudresourcemanager:v2beta1/ListFoldersResponse/folders": folders +"/cloudresourcemanager:v2beta1/ListFoldersResponse/folders/folder": folder +"/cloudresourcemanager:v2beta1/ListFoldersResponse/nextPageToken": next_page_token +"/cloudresourcemanager:v2beta1/MoveFolderRequest": move_folder_request +"/cloudresourcemanager:v2beta1/MoveFolderRequest/destinationParent": destination_parent +"/cloudresourcemanager:v2beta1/Operation": operation +"/cloudresourcemanager:v2beta1/Operation/done": done +"/cloudresourcemanager:v2beta1/Operation/error": error +"/cloudresourcemanager:v2beta1/Operation/metadata": metadata +"/cloudresourcemanager:v2beta1/Operation/metadata/metadatum": metadatum +"/cloudresourcemanager:v2beta1/Operation/name": name +"/cloudresourcemanager:v2beta1/Operation/response": response +"/cloudresourcemanager:v2beta1/Operation/response/response": response +"/cloudresourcemanager:v2beta1/Policy": policy +"/cloudresourcemanager:v2beta1/Policy/auditConfigs": audit_configs +"/cloudresourcemanager:v2beta1/Policy/auditConfigs/audit_config": audit_config +"/cloudresourcemanager:v2beta1/Policy/bindings": bindings +"/cloudresourcemanager:v2beta1/Policy/bindings/binding": binding +"/cloudresourcemanager:v2beta1/Policy/etag": etag +"/cloudresourcemanager:v2beta1/Policy/version": version +"/cloudresourcemanager:v2beta1/ProjectCreationStatus": project_creation_status +"/cloudresourcemanager:v2beta1/ProjectCreationStatus/createTime": create_time +"/cloudresourcemanager:v2beta1/ProjectCreationStatus/gettable": gettable +"/cloudresourcemanager:v2beta1/ProjectCreationStatus/ready": ready +"/cloudresourcemanager:v2beta1/SearchFoldersRequest": search_folders_request +"/cloudresourcemanager:v2beta1/SearchFoldersRequest/pageSize": page_size +"/cloudresourcemanager:v2beta1/SearchFoldersRequest/pageToken": page_token +"/cloudresourcemanager:v2beta1/SearchFoldersRequest/query": query +"/cloudresourcemanager:v2beta1/SearchFoldersResponse": search_folders_response +"/cloudresourcemanager:v2beta1/SearchFoldersResponse/folders": folders +"/cloudresourcemanager:v2beta1/SearchFoldersResponse/folders/folder": folder +"/cloudresourcemanager:v2beta1/SearchFoldersResponse/nextPageToken": next_page_token +"/cloudresourcemanager:v2beta1/SetIamPolicyRequest": set_iam_policy_request +"/cloudresourcemanager:v2beta1/SetIamPolicyRequest/policy": policy +"/cloudresourcemanager:v2beta1/SetIamPolicyRequest/updateMask": update_mask +"/cloudresourcemanager:v2beta1/Status": status +"/cloudresourcemanager:v2beta1/Status/code": code +"/cloudresourcemanager:v2beta1/Status/details": details +"/cloudresourcemanager:v2beta1/Status/details/detail": detail +"/cloudresourcemanager:v2beta1/Status/details/detail/detail": detail +"/cloudresourcemanager:v2beta1/Status/message": message +"/cloudresourcemanager:v2beta1/TestIamPermissionsRequest": test_iam_permissions_request +"/cloudresourcemanager:v2beta1/TestIamPermissionsRequest/permissions": permissions +"/cloudresourcemanager:v2beta1/TestIamPermissionsRequest/permissions/permission": permission +"/cloudresourcemanager:v2beta1/TestIamPermissionsResponse": test_iam_permissions_response +"/cloudresourcemanager:v2beta1/TestIamPermissionsResponse/permissions": permissions +"/cloudresourcemanager:v2beta1/TestIamPermissionsResponse/permissions/permission": permission +"/cloudresourcemanager:v2beta1/UndeleteFolderRequest": undelete_folder_request +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.create": create_folder +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.create/parent": parent +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.delete": delete_folder +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.delete/name": name +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.get": get_folder +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.get/name": name +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.getIamPolicy": get_folder_iam_policy +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.getIamPolicy/resource": resource +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.list": list_folders +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.list/pageSize": page_size +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.list/pageToken": page_token +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.list/parent": parent +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.list/showDeleted": show_deleted +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.move": move_folder +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.move/name": name +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.patch": patch_folder +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.patch/name": name +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.patch/updateMask": update_mask +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.search": search_folders +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.setIamPolicy": set_folder_iam_policy +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.setIamPolicy/resource": resource +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.testIamPermissions": test_folder_iam_permissions +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.testIamPermissions/resource": resource +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.undelete": undelete_folder +"/cloudresourcemanager:v2beta1/cloudresourcemanager.folders.undelete/name": name +"/cloudresourcemanager:v2beta1/fields": fields +"/cloudresourcemanager:v2beta1/key": key +"/cloudresourcemanager:v2beta1/quotaUser": quota_user "/cloudtrace:v1/Empty": empty "/cloudtrace:v1/ListTracesResponse": list_traces_response "/cloudtrace:v1/ListTracesResponse/nextPageToken": next_page_token @@ -10546,6 +13104,261 @@ "/cloudtrace:v2/fields": fields "/cloudtrace:v2/key": key "/cloudtrace:v2/quotaUser": quota_user +"/clouduseraccounts:alpha/AuditConfig": audit_config +"/clouduseraccounts:alpha/AuditConfig/exemptedMembers": exempted_members +"/clouduseraccounts:alpha/AuditConfig/exemptedMembers/exempted_member": exempted_member +"/clouduseraccounts:alpha/AuditConfig/service": service +"/clouduseraccounts:alpha/AuthorizedKeysView": authorized_keys_view +"/clouduseraccounts:alpha/AuthorizedKeysView/keys": keys +"/clouduseraccounts:alpha/AuthorizedKeysView/keys/key": key +"/clouduseraccounts:alpha/AuthorizedKeysView/sudoer": sudoer +"/clouduseraccounts:alpha/Binding": binding +"/clouduseraccounts:alpha/Binding/members": members +"/clouduseraccounts:alpha/Binding/members/member": member +"/clouduseraccounts:alpha/Binding/role": role +"/clouduseraccounts:alpha/Condition": condition +"/clouduseraccounts:alpha/Condition/iam": iam +"/clouduseraccounts:alpha/Condition/op": op +"/clouduseraccounts:alpha/Condition/svc": svc +"/clouduseraccounts:alpha/Condition/sys": sys +"/clouduseraccounts:alpha/Condition/value": value +"/clouduseraccounts:alpha/Condition/values": values +"/clouduseraccounts:alpha/Condition/values/value": value +"/clouduseraccounts:alpha/Group": group +"/clouduseraccounts:alpha/Group/creationTimestamp": creation_timestamp +"/clouduseraccounts:alpha/Group/description": description +"/clouduseraccounts:alpha/Group/id": id +"/clouduseraccounts:alpha/Group/kind": kind +"/clouduseraccounts:alpha/Group/members": members +"/clouduseraccounts:alpha/Group/members/member": member +"/clouduseraccounts:alpha/Group/name": name +"/clouduseraccounts:alpha/Group/selfLink": self_link +"/clouduseraccounts:alpha/GroupList": group_list +"/clouduseraccounts:alpha/GroupList/id": id +"/clouduseraccounts:alpha/GroupList/items": items +"/clouduseraccounts:alpha/GroupList/items/item": item +"/clouduseraccounts:alpha/GroupList/kind": kind +"/clouduseraccounts:alpha/GroupList/nextPageToken": next_page_token +"/clouduseraccounts:alpha/GroupList/selfLink": self_link +"/clouduseraccounts:alpha/GroupsAddMemberRequest": groups_add_member_request +"/clouduseraccounts:alpha/GroupsAddMemberRequest/users": users +"/clouduseraccounts:alpha/GroupsAddMemberRequest/users/user": user +"/clouduseraccounts:alpha/GroupsRemoveMemberRequest": groups_remove_member_request +"/clouduseraccounts:alpha/GroupsRemoveMemberRequest/users": users +"/clouduseraccounts:alpha/GroupsRemoveMemberRequest/users/user": user +"/clouduseraccounts:alpha/LinuxAccountViews": linux_account_views +"/clouduseraccounts:alpha/LinuxAccountViews/groupViews": group_views +"/clouduseraccounts:alpha/LinuxAccountViews/groupViews/group_view": group_view +"/clouduseraccounts:alpha/LinuxAccountViews/kind": kind +"/clouduseraccounts:alpha/LinuxAccountViews/userViews": user_views +"/clouduseraccounts:alpha/LinuxAccountViews/userViews/user_view": user_view +"/clouduseraccounts:alpha/LinuxGetAuthorizedKeysViewResponse": linux_get_authorized_keys_view_response +"/clouduseraccounts:alpha/LinuxGetAuthorizedKeysViewResponse/resource": resource +"/clouduseraccounts:alpha/LinuxGetLinuxAccountViewsResponse": linux_get_linux_account_views_response +"/clouduseraccounts:alpha/LinuxGetLinuxAccountViewsResponse/resource": resource +"/clouduseraccounts:alpha/LinuxGroupView": linux_group_view +"/clouduseraccounts:alpha/LinuxGroupView/gid": gid +"/clouduseraccounts:alpha/LinuxGroupView/groupName": group_name +"/clouduseraccounts:alpha/LinuxGroupView/members": members +"/clouduseraccounts:alpha/LinuxGroupView/members/member": member +"/clouduseraccounts:alpha/LinuxUserView": linux_user_view +"/clouduseraccounts:alpha/LinuxUserView/gecos": gecos +"/clouduseraccounts:alpha/LinuxUserView/gid": gid +"/clouduseraccounts:alpha/LinuxUserView/homeDirectory": home_directory +"/clouduseraccounts:alpha/LinuxUserView/shell": shell +"/clouduseraccounts:alpha/LinuxUserView/uid": uid +"/clouduseraccounts:alpha/LinuxUserView/username": username +"/clouduseraccounts:alpha/LogConfig": log_config +"/clouduseraccounts:alpha/LogConfig/counter": counter +"/clouduseraccounts:alpha/LogConfigCounterOptions": log_config_counter_options +"/clouduseraccounts:alpha/LogConfigCounterOptions/field": field +"/clouduseraccounts:alpha/LogConfigCounterOptions/metric": metric +"/clouduseraccounts:alpha/Operation": operation +"/clouduseraccounts:alpha/Operation/clientOperationId": client_operation_id +"/clouduseraccounts:alpha/Operation/creationTimestamp": creation_timestamp +"/clouduseraccounts:alpha/Operation/description": description +"/clouduseraccounts:alpha/Operation/endTime": end_time +"/clouduseraccounts:alpha/Operation/error": error +"/clouduseraccounts:alpha/Operation/error/errors": errors +"/clouduseraccounts:alpha/Operation/error/errors/error": error +"/clouduseraccounts:alpha/Operation/error/errors/error/code": code +"/clouduseraccounts:alpha/Operation/error/errors/error/location": location +"/clouduseraccounts:alpha/Operation/error/errors/error/message": message +"/clouduseraccounts:alpha/Operation/httpErrorMessage": http_error_message +"/clouduseraccounts:alpha/Operation/httpErrorStatusCode": http_error_status_code +"/clouduseraccounts:alpha/Operation/id": id +"/clouduseraccounts:alpha/Operation/insertTime": insert_time +"/clouduseraccounts:alpha/Operation/kind": kind +"/clouduseraccounts:alpha/Operation/name": name +"/clouduseraccounts:alpha/Operation/operationType": operation_type +"/clouduseraccounts:alpha/Operation/progress": progress +"/clouduseraccounts:alpha/Operation/region": region +"/clouduseraccounts:alpha/Operation/selfLink": self_link +"/clouduseraccounts:alpha/Operation/startTime": start_time +"/clouduseraccounts:alpha/Operation/status": status +"/clouduseraccounts:alpha/Operation/statusMessage": status_message +"/clouduseraccounts:alpha/Operation/targetId": target_id +"/clouduseraccounts:alpha/Operation/targetLink": target_link +"/clouduseraccounts:alpha/Operation/user": user +"/clouduseraccounts:alpha/Operation/warnings": warnings +"/clouduseraccounts:alpha/Operation/warnings/warning": warning +"/clouduseraccounts:alpha/Operation/warnings/warning/code": code +"/clouduseraccounts:alpha/Operation/warnings/warning/data": data +"/clouduseraccounts:alpha/Operation/warnings/warning/data/datum": datum +"/clouduseraccounts:alpha/Operation/warnings/warning/data/datum/key": key +"/clouduseraccounts:alpha/Operation/warnings/warning/data/datum/value": value +"/clouduseraccounts:alpha/Operation/warnings/warning/message": message +"/clouduseraccounts:alpha/Operation/zone": zone +"/clouduseraccounts:alpha/OperationList": operation_list +"/clouduseraccounts:alpha/OperationList/id": id +"/clouduseraccounts:alpha/OperationList/items": items +"/clouduseraccounts:alpha/OperationList/items/item": item +"/clouduseraccounts:alpha/OperationList/kind": kind +"/clouduseraccounts:alpha/OperationList/nextPageToken": next_page_token +"/clouduseraccounts:alpha/OperationList/selfLink": self_link +"/clouduseraccounts:alpha/Policy": policy +"/clouduseraccounts:alpha/Policy/auditConfigs": audit_configs +"/clouduseraccounts:alpha/Policy/auditConfigs/audit_config": audit_config +"/clouduseraccounts:alpha/Policy/bindings": bindings +"/clouduseraccounts:alpha/Policy/bindings/binding": binding +"/clouduseraccounts:alpha/Policy/etag": etag +"/clouduseraccounts:alpha/Policy/iamOwned": iam_owned +"/clouduseraccounts:alpha/Policy/rules": rules +"/clouduseraccounts:alpha/Policy/rules/rule": rule +"/clouduseraccounts:alpha/Policy/version": version +"/clouduseraccounts:alpha/PublicKey": public_key +"/clouduseraccounts:alpha/PublicKey/creationTimestamp": creation_timestamp +"/clouduseraccounts:alpha/PublicKey/description": description +"/clouduseraccounts:alpha/PublicKey/expirationTimestamp": expiration_timestamp +"/clouduseraccounts:alpha/PublicKey/fingerprint": fingerprint +"/clouduseraccounts:alpha/PublicKey/key": key +"/clouduseraccounts:alpha/Rule": rule +"/clouduseraccounts:alpha/Rule/action": action +"/clouduseraccounts:alpha/Rule/conditions": conditions +"/clouduseraccounts:alpha/Rule/conditions/condition": condition +"/clouduseraccounts:alpha/Rule/description": description +"/clouduseraccounts:alpha/Rule/ins": ins +"/clouduseraccounts:alpha/Rule/ins/in": in +"/clouduseraccounts:alpha/Rule/logConfigs": log_configs +"/clouduseraccounts:alpha/Rule/logConfigs/log_config": log_config +"/clouduseraccounts:alpha/Rule/notIns": not_ins +"/clouduseraccounts:alpha/Rule/notIns/not_in": not_in +"/clouduseraccounts:alpha/Rule/permissions": permissions +"/clouduseraccounts:alpha/Rule/permissions/permission": permission +"/clouduseraccounts:alpha/TestPermissionsRequest": test_permissions_request +"/clouduseraccounts:alpha/TestPermissionsRequest/permissions": permissions +"/clouduseraccounts:alpha/TestPermissionsRequest/permissions/permission": permission +"/clouduseraccounts:alpha/TestPermissionsResponse": test_permissions_response +"/clouduseraccounts:alpha/TestPermissionsResponse/permissions": permissions +"/clouduseraccounts:alpha/TestPermissionsResponse/permissions/permission": permission +"/clouduseraccounts:alpha/User": user +"/clouduseraccounts:alpha/User/creationTimestamp": creation_timestamp +"/clouduseraccounts:alpha/User/description": description +"/clouduseraccounts:alpha/User/groups": groups +"/clouduseraccounts:alpha/User/groups/group": group +"/clouduseraccounts:alpha/User/id": id +"/clouduseraccounts:alpha/User/kind": kind +"/clouduseraccounts:alpha/User/name": name +"/clouduseraccounts:alpha/User/owner": owner +"/clouduseraccounts:alpha/User/publicKeys": public_keys +"/clouduseraccounts:alpha/User/publicKeys/public_key": public_key +"/clouduseraccounts:alpha/User/selfLink": self_link +"/clouduseraccounts:alpha/UserList": user_list +"/clouduseraccounts:alpha/UserList/id": id +"/clouduseraccounts:alpha/UserList/items": items +"/clouduseraccounts:alpha/UserList/items/item": item +"/clouduseraccounts:alpha/UserList/kind": kind +"/clouduseraccounts:alpha/UserList/nextPageToken": next_page_token +"/clouduseraccounts:alpha/UserList/selfLink": self_link +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.delete": delete_global_accounts_operation +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.delete/operation": operation +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.delete/project": project +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.get": get_global_accounts_operation +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.get/operation": operation +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.get/project": project +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.list": list_global_accounts_operations +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.list/filter": filter +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.list/maxResults": max_results +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.list/orderBy": order_by +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.list/pageToken": page_token +"/clouduseraccounts:alpha/clouduseraccounts.globalAccountsOperations.list/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.addMember": add_group_member +"/clouduseraccounts:alpha/clouduseraccounts.groups.addMember/groupName": group_name +"/clouduseraccounts:alpha/clouduseraccounts.groups.addMember/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.delete": delete_group +"/clouduseraccounts:alpha/clouduseraccounts.groups.delete/groupName": group_name +"/clouduseraccounts:alpha/clouduseraccounts.groups.delete/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.get": get_group +"/clouduseraccounts:alpha/clouduseraccounts.groups.get/groupName": group_name +"/clouduseraccounts:alpha/clouduseraccounts.groups.get/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.getIamPolicy": get_group_iam_policy +"/clouduseraccounts:alpha/clouduseraccounts.groups.getIamPolicy/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.getIamPolicy/resource": resource +"/clouduseraccounts:alpha/clouduseraccounts.groups.insert": insert_group +"/clouduseraccounts:alpha/clouduseraccounts.groups.insert/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.list": list_groups +"/clouduseraccounts:alpha/clouduseraccounts.groups.list/filter": filter +"/clouduseraccounts:alpha/clouduseraccounts.groups.list/maxResults": max_results +"/clouduseraccounts:alpha/clouduseraccounts.groups.list/orderBy": order_by +"/clouduseraccounts:alpha/clouduseraccounts.groups.list/pageToken": page_token +"/clouduseraccounts:alpha/clouduseraccounts.groups.list/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.removeMember": remove_group_member +"/clouduseraccounts:alpha/clouduseraccounts.groups.removeMember/groupName": group_name +"/clouduseraccounts:alpha/clouduseraccounts.groups.removeMember/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.setIamPolicy": set_group_iam_policy +"/clouduseraccounts:alpha/clouduseraccounts.groups.setIamPolicy/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.setIamPolicy/resource": resource +"/clouduseraccounts:alpha/clouduseraccounts.groups.testIamPermissions": test_group_iam_permissions +"/clouduseraccounts:alpha/clouduseraccounts.groups.testIamPermissions/project": project +"/clouduseraccounts:alpha/clouduseraccounts.groups.testIamPermissions/resource": resource +"/clouduseraccounts:alpha/clouduseraccounts.linux.getAuthorizedKeysView": get_linux_authorized_keys_view +"/clouduseraccounts:alpha/clouduseraccounts.linux.getAuthorizedKeysView/instance": instance +"/clouduseraccounts:alpha/clouduseraccounts.linux.getAuthorizedKeysView/login": login +"/clouduseraccounts:alpha/clouduseraccounts.linux.getAuthorizedKeysView/project": project +"/clouduseraccounts:alpha/clouduseraccounts.linux.getAuthorizedKeysView/user": user +"/clouduseraccounts:alpha/clouduseraccounts.linux.getAuthorizedKeysView/zone": zone +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews": get_linux_linux_account_views +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews/filter": filter +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews/instance": instance +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews/maxResults": max_results +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews/orderBy": order_by +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews/pageToken": page_token +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews/project": project +"/clouduseraccounts:alpha/clouduseraccounts.linux.getLinuxAccountViews/zone": zone +"/clouduseraccounts:alpha/clouduseraccounts.users.addPublicKey": add_user_public_key +"/clouduseraccounts:alpha/clouduseraccounts.users.addPublicKey/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.addPublicKey/user": user +"/clouduseraccounts:alpha/clouduseraccounts.users.delete": delete_user +"/clouduseraccounts:alpha/clouduseraccounts.users.delete/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.delete/user": user +"/clouduseraccounts:alpha/clouduseraccounts.users.get": get_user +"/clouduseraccounts:alpha/clouduseraccounts.users.get/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.get/user": user +"/clouduseraccounts:alpha/clouduseraccounts.users.getIamPolicy": get_user_iam_policy +"/clouduseraccounts:alpha/clouduseraccounts.users.getIamPolicy/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.getIamPolicy/resource": resource +"/clouduseraccounts:alpha/clouduseraccounts.users.insert": insert_user +"/clouduseraccounts:alpha/clouduseraccounts.users.insert/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.list": list_users +"/clouduseraccounts:alpha/clouduseraccounts.users.list/filter": filter +"/clouduseraccounts:alpha/clouduseraccounts.users.list/maxResults": max_results +"/clouduseraccounts:alpha/clouduseraccounts.users.list/orderBy": order_by +"/clouduseraccounts:alpha/clouduseraccounts.users.list/pageToken": page_token +"/clouduseraccounts:alpha/clouduseraccounts.users.list/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.removePublicKey": remove_user_public_key +"/clouduseraccounts:alpha/clouduseraccounts.users.removePublicKey/fingerprint": fingerprint +"/clouduseraccounts:alpha/clouduseraccounts.users.removePublicKey/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.removePublicKey/user": user +"/clouduseraccounts:alpha/clouduseraccounts.users.setIamPolicy": set_user_iam_policy +"/clouduseraccounts:alpha/clouduseraccounts.users.setIamPolicy/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.setIamPolicy/resource": resource +"/clouduseraccounts:alpha/clouduseraccounts.users.testIamPermissions": test_user_iam_permissions +"/clouduseraccounts:alpha/clouduseraccounts.users.testIamPermissions/project": project +"/clouduseraccounts:alpha/clouduseraccounts.users.testIamPermissions/resource": resource +"/clouduseraccounts:alpha/fields": fields +"/clouduseraccounts:alpha/key": key +"/clouduseraccounts:alpha/quotaUser": quota_user +"/clouduseraccounts:alpha/userIp": user_ip "/clouduseraccounts:beta/AuthorizedKeysView": authorized_keys_view "/clouduseraccounts:beta/AuthorizedKeysView/keys": keys "/clouduseraccounts:beta/AuthorizedKeysView/keys/key": key @@ -10988,6 +13801,5159 @@ "/clouduseraccounts:vm_alpha/key": key "/clouduseraccounts:vm_alpha/quotaUser": quota_user "/clouduseraccounts:vm_alpha/userIp": user_ip +"/clouduseraccounts:vm_beta/AuthorizedKeysView": authorized_keys_view +"/clouduseraccounts:vm_beta/AuthorizedKeysView/keys": keys +"/clouduseraccounts:vm_beta/AuthorizedKeysView/keys/key": key +"/clouduseraccounts:vm_beta/AuthorizedKeysView/sudoer": sudoer +"/clouduseraccounts:vm_beta/Group": group +"/clouduseraccounts:vm_beta/Group/creationTimestamp": creation_timestamp +"/clouduseraccounts:vm_beta/Group/description": description +"/clouduseraccounts:vm_beta/Group/id": id +"/clouduseraccounts:vm_beta/Group/kind": kind +"/clouduseraccounts:vm_beta/Group/members": members +"/clouduseraccounts:vm_beta/Group/members/member": member +"/clouduseraccounts:vm_beta/Group/name": name +"/clouduseraccounts:vm_beta/Group/selfLink": self_link +"/clouduseraccounts:vm_beta/GroupList": group_list +"/clouduseraccounts:vm_beta/GroupList/id": id +"/clouduseraccounts:vm_beta/GroupList/items": items +"/clouduseraccounts:vm_beta/GroupList/items/item": item +"/clouduseraccounts:vm_beta/GroupList/kind": kind +"/clouduseraccounts:vm_beta/GroupList/nextPageToken": next_page_token +"/clouduseraccounts:vm_beta/GroupList/selfLink": self_link +"/clouduseraccounts:vm_beta/GroupsAddMemberRequest": groups_add_member_request +"/clouduseraccounts:vm_beta/GroupsAddMemberRequest/users": users +"/clouduseraccounts:vm_beta/GroupsAddMemberRequest/users/user": user +"/clouduseraccounts:vm_beta/GroupsRemoveMemberRequest": groups_remove_member_request +"/clouduseraccounts:vm_beta/GroupsRemoveMemberRequest/users": users +"/clouduseraccounts:vm_beta/GroupsRemoveMemberRequest/users/user": user +"/clouduseraccounts:vm_beta/LinuxAccountViews": linux_account_views +"/clouduseraccounts:vm_beta/LinuxAccountViews/groupViews": group_views +"/clouduseraccounts:vm_beta/LinuxAccountViews/groupViews/group_view": group_view +"/clouduseraccounts:vm_beta/LinuxAccountViews/kind": kind +"/clouduseraccounts:vm_beta/LinuxAccountViews/userViews": user_views +"/clouduseraccounts:vm_beta/LinuxAccountViews/userViews/user_view": user_view +"/clouduseraccounts:vm_beta/LinuxGetAuthorizedKeysViewResponse": linux_get_authorized_keys_view_response +"/clouduseraccounts:vm_beta/LinuxGetAuthorizedKeysViewResponse/resource": resource +"/clouduseraccounts:vm_beta/LinuxGetLinuxAccountViewsResponse": linux_get_linux_account_views_response +"/clouduseraccounts:vm_beta/LinuxGetLinuxAccountViewsResponse/resource": resource +"/clouduseraccounts:vm_beta/LinuxGroupView": linux_group_view +"/clouduseraccounts:vm_beta/LinuxGroupView/gid": gid +"/clouduseraccounts:vm_beta/LinuxGroupView/groupName": group_name +"/clouduseraccounts:vm_beta/LinuxGroupView/members": members +"/clouduseraccounts:vm_beta/LinuxGroupView/members/member": member +"/clouduseraccounts:vm_beta/LinuxUserView": linux_user_view +"/clouduseraccounts:vm_beta/LinuxUserView/gecos": gecos +"/clouduseraccounts:vm_beta/LinuxUserView/gid": gid +"/clouduseraccounts:vm_beta/LinuxUserView/homeDirectory": home_directory +"/clouduseraccounts:vm_beta/LinuxUserView/shell": shell +"/clouduseraccounts:vm_beta/LinuxUserView/uid": uid +"/clouduseraccounts:vm_beta/LinuxUserView/username": username +"/clouduseraccounts:vm_beta/Operation": operation +"/clouduseraccounts:vm_beta/Operation/clientOperationId": client_operation_id +"/clouduseraccounts:vm_beta/Operation/creationTimestamp": creation_timestamp +"/clouduseraccounts:vm_beta/Operation/description": description +"/clouduseraccounts:vm_beta/Operation/endTime": end_time +"/clouduseraccounts:vm_beta/Operation/error": error +"/clouduseraccounts:vm_beta/Operation/error/errors": errors +"/clouduseraccounts:vm_beta/Operation/error/errors/error": error +"/clouduseraccounts:vm_beta/Operation/error/errors/error/code": code +"/clouduseraccounts:vm_beta/Operation/error/errors/error/location": location +"/clouduseraccounts:vm_beta/Operation/error/errors/error/message": message +"/clouduseraccounts:vm_beta/Operation/httpErrorMessage": http_error_message +"/clouduseraccounts:vm_beta/Operation/httpErrorStatusCode": http_error_status_code +"/clouduseraccounts:vm_beta/Operation/id": id +"/clouduseraccounts:vm_beta/Operation/insertTime": insert_time +"/clouduseraccounts:vm_beta/Operation/kind": kind +"/clouduseraccounts:vm_beta/Operation/name": name +"/clouduseraccounts:vm_beta/Operation/operationType": operation_type +"/clouduseraccounts:vm_beta/Operation/progress": progress +"/clouduseraccounts:vm_beta/Operation/region": region +"/clouduseraccounts:vm_beta/Operation/selfLink": self_link +"/clouduseraccounts:vm_beta/Operation/startTime": start_time +"/clouduseraccounts:vm_beta/Operation/status": status +"/clouduseraccounts:vm_beta/Operation/statusMessage": status_message +"/clouduseraccounts:vm_beta/Operation/targetId": target_id +"/clouduseraccounts:vm_beta/Operation/targetLink": target_link +"/clouduseraccounts:vm_beta/Operation/user": user +"/clouduseraccounts:vm_beta/Operation/warnings": warnings +"/clouduseraccounts:vm_beta/Operation/warnings/warning": warning +"/clouduseraccounts:vm_beta/Operation/warnings/warning/code": code +"/clouduseraccounts:vm_beta/Operation/warnings/warning/data": data +"/clouduseraccounts:vm_beta/Operation/warnings/warning/data/datum": datum +"/clouduseraccounts:vm_beta/Operation/warnings/warning/data/datum/key": key +"/clouduseraccounts:vm_beta/Operation/warnings/warning/data/datum/value": value +"/clouduseraccounts:vm_beta/Operation/warnings/warning/message": message +"/clouduseraccounts:vm_beta/Operation/zone": zone +"/clouduseraccounts:vm_beta/OperationList": operation_list +"/clouduseraccounts:vm_beta/OperationList/id": id +"/clouduseraccounts:vm_beta/OperationList/items": items +"/clouduseraccounts:vm_beta/OperationList/items/item": item +"/clouduseraccounts:vm_beta/OperationList/kind": kind +"/clouduseraccounts:vm_beta/OperationList/nextPageToken": next_page_token +"/clouduseraccounts:vm_beta/OperationList/selfLink": self_link +"/clouduseraccounts:vm_beta/PublicKey": public_key +"/clouduseraccounts:vm_beta/PublicKey/creationTimestamp": creation_timestamp +"/clouduseraccounts:vm_beta/PublicKey/description": description +"/clouduseraccounts:vm_beta/PublicKey/expirationTimestamp": expiration_timestamp +"/clouduseraccounts:vm_beta/PublicKey/fingerprint": fingerprint +"/clouduseraccounts:vm_beta/PublicKey/key": key +"/clouduseraccounts:vm_beta/User": user +"/clouduseraccounts:vm_beta/User/creationTimestamp": creation_timestamp +"/clouduseraccounts:vm_beta/User/description": description +"/clouduseraccounts:vm_beta/User/groups": groups +"/clouduseraccounts:vm_beta/User/groups/group": group +"/clouduseraccounts:vm_beta/User/id": id +"/clouduseraccounts:vm_beta/User/kind": kind +"/clouduseraccounts:vm_beta/User/name": name +"/clouduseraccounts:vm_beta/User/owner": owner +"/clouduseraccounts:vm_beta/User/publicKeys": public_keys +"/clouduseraccounts:vm_beta/User/publicKeys/public_key": public_key +"/clouduseraccounts:vm_beta/User/selfLink": self_link +"/clouduseraccounts:vm_beta/UserList": user_list +"/clouduseraccounts:vm_beta/UserList/id": id +"/clouduseraccounts:vm_beta/UserList/items": items +"/clouduseraccounts:vm_beta/UserList/items/item": item +"/clouduseraccounts:vm_beta/UserList/kind": kind +"/clouduseraccounts:vm_beta/UserList/nextPageToken": next_page_token +"/clouduseraccounts:vm_beta/UserList/selfLink": self_link +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.delete": delete_global_accounts_operation +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.delete/operation": operation +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.delete/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.get": get_global_accounts_operation +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.get/operation": operation +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.get/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.list": list_global_accounts_operations +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.list/filter": filter +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.list/maxResults": max_results +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.list/orderBy": order_by +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.list/pageToken": page_token +"/clouduseraccounts:vm_beta/clouduseraccounts.globalAccountsOperations.list/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.addMember": add_group_member +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.addMember/groupName": group_name +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.addMember/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.delete": delete_group +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.delete/groupName": group_name +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.delete/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.get": get_group +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.get/groupName": group_name +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.get/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.insert": insert_group +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.insert/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.list": list_groups +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.list/filter": filter +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.list/maxResults": max_results +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.list/orderBy": order_by +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.list/pageToken": page_token +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.list/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.removeMember": remove_group_member +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.removeMember/groupName": group_name +"/clouduseraccounts:vm_beta/clouduseraccounts.groups.removeMember/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getAuthorizedKeysView": get_linux_authorized_keys_view +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getAuthorizedKeysView/instance": instance +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getAuthorizedKeysView/login": login +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getAuthorizedKeysView/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getAuthorizedKeysView/user": user +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getAuthorizedKeysView/zone": zone +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews": get_linux_linux_account_views +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews/filter": filter +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews/instance": instance +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews/maxResults": max_results +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews/orderBy": order_by +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews/pageToken": page_token +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.linux.getLinuxAccountViews/zone": zone +"/clouduseraccounts:vm_beta/clouduseraccounts.users.addPublicKey": add_user_public_key +"/clouduseraccounts:vm_beta/clouduseraccounts.users.addPublicKey/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.users.addPublicKey/user": user +"/clouduseraccounts:vm_beta/clouduseraccounts.users.delete": delete_user +"/clouduseraccounts:vm_beta/clouduseraccounts.users.delete/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.users.delete/user": user +"/clouduseraccounts:vm_beta/clouduseraccounts.users.get": get_user +"/clouduseraccounts:vm_beta/clouduseraccounts.users.get/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.users.get/user": user +"/clouduseraccounts:vm_beta/clouduseraccounts.users.insert": insert_user +"/clouduseraccounts:vm_beta/clouduseraccounts.users.insert/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.users.list": list_users +"/clouduseraccounts:vm_beta/clouduseraccounts.users.list/filter": filter +"/clouduseraccounts:vm_beta/clouduseraccounts.users.list/maxResults": max_results +"/clouduseraccounts:vm_beta/clouduseraccounts.users.list/orderBy": order_by +"/clouduseraccounts:vm_beta/clouduseraccounts.users.list/pageToken": page_token +"/clouduseraccounts:vm_beta/clouduseraccounts.users.list/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.users.removePublicKey": remove_user_public_key +"/clouduseraccounts:vm_beta/clouduseraccounts.users.removePublicKey/fingerprint": fingerprint +"/clouduseraccounts:vm_beta/clouduseraccounts.users.removePublicKey/project": project +"/clouduseraccounts:vm_beta/clouduseraccounts.users.removePublicKey/user": user +"/clouduseraccounts:vm_beta/fields": fields +"/clouduseraccounts:vm_beta/key": key +"/clouduseraccounts:vm_beta/quotaUser": quota_user +"/clouduseraccounts:vm_beta/userIp": user_ip +"/compute:alpha/AcceleratorConfig": accelerator_config +"/compute:alpha/AcceleratorConfig/acceleratorCount": accelerator_count +"/compute:alpha/AcceleratorConfig/acceleratorType": accelerator_type +"/compute:alpha/AcceleratorType": accelerator_type +"/compute:alpha/AcceleratorType/creationTimestamp": creation_timestamp +"/compute:alpha/AcceleratorType/deprecated": deprecated +"/compute:alpha/AcceleratorType/description": description +"/compute:alpha/AcceleratorType/id": id +"/compute:alpha/AcceleratorType/kind": kind +"/compute:alpha/AcceleratorType/maximumCardsPerInstance": maximum_cards_per_instance +"/compute:alpha/AcceleratorType/name": name +"/compute:alpha/AcceleratorType/selfLink": self_link +"/compute:alpha/AcceleratorType/zone": zone +"/compute:alpha/AcceleratorTypeAggregatedList": accelerator_type_aggregated_list +"/compute:alpha/AcceleratorTypeAggregatedList/id": id +"/compute:alpha/AcceleratorTypeAggregatedList/items": items +"/compute:alpha/AcceleratorTypeAggregatedList/items/item": item +"/compute:alpha/AcceleratorTypeAggregatedList/kind": kind +"/compute:alpha/AcceleratorTypeAggregatedList/nextPageToken": next_page_token +"/compute:alpha/AcceleratorTypeAggregatedList/selfLink": self_link +"/compute:alpha/AcceleratorTypeAggregatedList/warning": warning +"/compute:alpha/AcceleratorTypeAggregatedList/warning/code": code +"/compute:alpha/AcceleratorTypeAggregatedList/warning/data": data +"/compute:alpha/AcceleratorTypeAggregatedList/warning/data/datum": datum +"/compute:alpha/AcceleratorTypeAggregatedList/warning/data/datum/key": key +"/compute:alpha/AcceleratorTypeAggregatedList/warning/data/datum/value": value +"/compute:alpha/AcceleratorTypeAggregatedList/warning/message": message +"/compute:alpha/AcceleratorTypeList": accelerator_type_list +"/compute:alpha/AcceleratorTypeList/id": id +"/compute:alpha/AcceleratorTypeList/items": items +"/compute:alpha/AcceleratorTypeList/items/item": item +"/compute:alpha/AcceleratorTypeList/kind": kind +"/compute:alpha/AcceleratorTypeList/nextPageToken": next_page_token +"/compute:alpha/AcceleratorTypeList/selfLink": self_link +"/compute:alpha/AcceleratorTypeList/warning": warning +"/compute:alpha/AcceleratorTypeList/warning/code": code +"/compute:alpha/AcceleratorTypeList/warning/data": data +"/compute:alpha/AcceleratorTypeList/warning/data/datum": datum +"/compute:alpha/AcceleratorTypeList/warning/data/datum/key": key +"/compute:alpha/AcceleratorTypeList/warning/data/datum/value": value +"/compute:alpha/AcceleratorTypeList/warning/message": message +"/compute:alpha/AcceleratorTypesScopedList": accelerator_types_scoped_list +"/compute:alpha/AcceleratorTypesScopedList/acceleratorTypes": accelerator_types +"/compute:alpha/AcceleratorTypesScopedList/acceleratorTypes/accelerator_type": accelerator_type +"/compute:alpha/AcceleratorTypesScopedList/warning": warning +"/compute:alpha/AcceleratorTypesScopedList/warning/code": code +"/compute:alpha/AcceleratorTypesScopedList/warning/data": data +"/compute:alpha/AcceleratorTypesScopedList/warning/data/datum": datum +"/compute:alpha/AcceleratorTypesScopedList/warning/data/datum/key": key +"/compute:alpha/AcceleratorTypesScopedList/warning/data/datum/value": value +"/compute:alpha/AcceleratorTypesScopedList/warning/message": message +"/compute:alpha/AccessConfig": access_config +"/compute:alpha/AccessConfig/kind": kind +"/compute:alpha/AccessConfig/name": name +"/compute:alpha/AccessConfig/natIP": nat_ip +"/compute:alpha/AccessConfig/networkTier": network_tier +"/compute:alpha/AccessConfig/publicDnsName": public_dns_name +"/compute:alpha/AccessConfig/publicPtrDomainName": public_ptr_domain_name +"/compute:alpha/AccessConfig/setPublicDns": set_public_dns +"/compute:alpha/AccessConfig/setPublicPtr": set_public_ptr +"/compute:alpha/AccessConfig/type": type +"/compute:alpha/Address": address +"/compute:alpha/Address/address": address +"/compute:alpha/Address/addressType": address_type +"/compute:alpha/Address/creationTimestamp": creation_timestamp +"/compute:alpha/Address/description": description +"/compute:alpha/Address/id": id +"/compute:alpha/Address/ipVersion": ip_version +"/compute:alpha/Address/kind": kind +"/compute:alpha/Address/labelFingerprint": label_fingerprint +"/compute:alpha/Address/labels": labels +"/compute:alpha/Address/labels/label": label +"/compute:alpha/Address/name": name +"/compute:alpha/Address/networkTier": network_tier +"/compute:alpha/Address/region": region +"/compute:alpha/Address/selfLink": self_link +"/compute:alpha/Address/status": status +"/compute:alpha/Address/subnetwork": subnetwork +"/compute:alpha/Address/users": users +"/compute:alpha/Address/users/user": user +"/compute:alpha/AddressAggregatedList": address_aggregated_list +"/compute:alpha/AddressAggregatedList/id": id +"/compute:alpha/AddressAggregatedList/items": items +"/compute:alpha/AddressAggregatedList/items/item": item +"/compute:alpha/AddressAggregatedList/kind": kind +"/compute:alpha/AddressAggregatedList/nextPageToken": next_page_token +"/compute:alpha/AddressAggregatedList/selfLink": self_link +"/compute:alpha/AddressAggregatedList/warning": warning +"/compute:alpha/AddressAggregatedList/warning/code": code +"/compute:alpha/AddressAggregatedList/warning/data": data +"/compute:alpha/AddressAggregatedList/warning/data/datum": datum +"/compute:alpha/AddressAggregatedList/warning/data/datum/key": key +"/compute:alpha/AddressAggregatedList/warning/data/datum/value": value +"/compute:alpha/AddressAggregatedList/warning/message": message +"/compute:alpha/AddressList": address_list +"/compute:alpha/AddressList/id": id +"/compute:alpha/AddressList/items": items +"/compute:alpha/AddressList/items/item": item +"/compute:alpha/AddressList/kind": kind +"/compute:alpha/AddressList/nextPageToken": next_page_token +"/compute:alpha/AddressList/selfLink": self_link +"/compute:alpha/AddressList/warning": warning +"/compute:alpha/AddressList/warning/code": code +"/compute:alpha/AddressList/warning/data": data +"/compute:alpha/AddressList/warning/data/datum": datum +"/compute:alpha/AddressList/warning/data/datum/key": key +"/compute:alpha/AddressList/warning/data/datum/value": value +"/compute:alpha/AddressList/warning/message": message +"/compute:alpha/AddressesScopedList": addresses_scoped_list +"/compute:alpha/AddressesScopedList/addresses": addresses +"/compute:alpha/AddressesScopedList/addresses/address": address +"/compute:alpha/AddressesScopedList/warning": warning +"/compute:alpha/AddressesScopedList/warning/code": code +"/compute:alpha/AddressesScopedList/warning/data": data +"/compute:alpha/AddressesScopedList/warning/data/datum": datum +"/compute:alpha/AddressesScopedList/warning/data/datum/key": key +"/compute:alpha/AddressesScopedList/warning/data/datum/value": value +"/compute:alpha/AddressesScopedList/warning/message": message +"/compute:alpha/AliasIpRange": alias_ip_range +"/compute:alpha/AliasIpRange/ipCidrRange": ip_cidr_range +"/compute:alpha/AliasIpRange/subnetworkRangeName": subnetwork_range_name +"/compute:alpha/AttachedDisk": attached_disk +"/compute:alpha/AttachedDisk/autoDelete": auto_delete +"/compute:alpha/AttachedDisk/boot": boot +"/compute:alpha/AttachedDisk/deviceName": device_name +"/compute:alpha/AttachedDisk/diskEncryptionKey": disk_encryption_key +"/compute:alpha/AttachedDisk/diskSizeGb": disk_size_gb +"/compute:alpha/AttachedDisk/index": index +"/compute:alpha/AttachedDisk/initializeParams": initialize_params +"/compute:alpha/AttachedDisk/interface": interface +"/compute:alpha/AttachedDisk/kind": kind +"/compute:alpha/AttachedDisk/licenses": licenses +"/compute:alpha/AttachedDisk/licenses/license": license +"/compute:alpha/AttachedDisk/mode": mode +"/compute:alpha/AttachedDisk/source": source +"/compute:alpha/AttachedDisk/type": type +"/compute:alpha/AttachedDiskInitializeParams": attached_disk_initialize_params +"/compute:alpha/AttachedDiskInitializeParams/diskName": disk_name +"/compute:alpha/AttachedDiskInitializeParams/diskSizeGb": disk_size_gb +"/compute:alpha/AttachedDiskInitializeParams/diskStorageType": disk_storage_type +"/compute:alpha/AttachedDiskInitializeParams/diskType": disk_type +"/compute:alpha/AttachedDiskInitializeParams/sourceImage": source_image +"/compute:alpha/AttachedDiskInitializeParams/sourceImageEncryptionKey": source_image_encryption_key +"/compute:alpha/AuditConfig": audit_config +"/compute:alpha/AuditConfig/auditLogConfigs": audit_log_configs +"/compute:alpha/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config +"/compute:alpha/AuditConfig/exemptedMembers": exempted_members +"/compute:alpha/AuditConfig/exemptedMembers/exempted_member": exempted_member +"/compute:alpha/AuditConfig/service": service +"/compute:alpha/AuditLogConfig": audit_log_config +"/compute:alpha/AuditLogConfig/exemptedMembers": exempted_members +"/compute:alpha/AuditLogConfig/exemptedMembers/exempted_member": exempted_member +"/compute:alpha/AuditLogConfig/logType": log_type +"/compute:alpha/AuthorizationLoggingOptions": authorization_logging_options +"/compute:alpha/AuthorizationLoggingOptions/permissionType": permission_type +"/compute:alpha/Autoscaler": autoscaler +"/compute:alpha/Autoscaler/autoscalingPolicy": autoscaling_policy +"/compute:alpha/Autoscaler/creationTimestamp": creation_timestamp +"/compute:alpha/Autoscaler/description": description +"/compute:alpha/Autoscaler/id": id +"/compute:alpha/Autoscaler/kind": kind +"/compute:alpha/Autoscaler/name": name +"/compute:alpha/Autoscaler/region": region +"/compute:alpha/Autoscaler/selfLink": self_link +"/compute:alpha/Autoscaler/status": status +"/compute:alpha/Autoscaler/statusDetails": status_details +"/compute:alpha/Autoscaler/statusDetails/status_detail": status_detail +"/compute:alpha/Autoscaler/target": target +"/compute:alpha/Autoscaler/zone": zone +"/compute:alpha/AutoscalerAggregatedList": autoscaler_aggregated_list +"/compute:alpha/AutoscalerAggregatedList/id": id +"/compute:alpha/AutoscalerAggregatedList/items": items +"/compute:alpha/AutoscalerAggregatedList/items/item": item +"/compute:alpha/AutoscalerAggregatedList/kind": kind +"/compute:alpha/AutoscalerAggregatedList/nextPageToken": next_page_token +"/compute:alpha/AutoscalerAggregatedList/selfLink": self_link +"/compute:alpha/AutoscalerAggregatedList/warning": warning +"/compute:alpha/AutoscalerAggregatedList/warning/code": code +"/compute:alpha/AutoscalerAggregatedList/warning/data": data +"/compute:alpha/AutoscalerAggregatedList/warning/data/datum": datum +"/compute:alpha/AutoscalerAggregatedList/warning/data/datum/key": key +"/compute:alpha/AutoscalerAggregatedList/warning/data/datum/value": value +"/compute:alpha/AutoscalerAggregatedList/warning/message": message +"/compute:alpha/AutoscalerList": autoscaler_list +"/compute:alpha/AutoscalerList/id": id +"/compute:alpha/AutoscalerList/items": items +"/compute:alpha/AutoscalerList/items/item": item +"/compute:alpha/AutoscalerList/kind": kind +"/compute:alpha/AutoscalerList/nextPageToken": next_page_token +"/compute:alpha/AutoscalerList/selfLink": self_link +"/compute:alpha/AutoscalerList/warning": warning +"/compute:alpha/AutoscalerList/warning/code": code +"/compute:alpha/AutoscalerList/warning/data": data +"/compute:alpha/AutoscalerList/warning/data/datum": datum +"/compute:alpha/AutoscalerList/warning/data/datum/key": key +"/compute:alpha/AutoscalerList/warning/data/datum/value": value +"/compute:alpha/AutoscalerList/warning/message": message +"/compute:alpha/AutoscalerStatusDetails": autoscaler_status_details +"/compute:alpha/AutoscalerStatusDetails/message": message +"/compute:alpha/AutoscalerStatusDetails/type": type +"/compute:alpha/AutoscalersScopedList": autoscalers_scoped_list +"/compute:alpha/AutoscalersScopedList/autoscalers": autoscalers +"/compute:alpha/AutoscalersScopedList/autoscalers/autoscaler": autoscaler +"/compute:alpha/AutoscalersScopedList/warning": warning +"/compute:alpha/AutoscalersScopedList/warning/code": code +"/compute:alpha/AutoscalersScopedList/warning/data": data +"/compute:alpha/AutoscalersScopedList/warning/data/datum": datum +"/compute:alpha/AutoscalersScopedList/warning/data/datum/key": key +"/compute:alpha/AutoscalersScopedList/warning/data/datum/value": value +"/compute:alpha/AutoscalersScopedList/warning/message": message +"/compute:alpha/AutoscalingPolicy": autoscaling_policy +"/compute:alpha/AutoscalingPolicy/coolDownPeriodSec": cool_down_period_sec +"/compute:alpha/AutoscalingPolicy/cpuUtilization": cpu_utilization +"/compute:alpha/AutoscalingPolicy/customMetricUtilizations": custom_metric_utilizations +"/compute:alpha/AutoscalingPolicy/customMetricUtilizations/custom_metric_utilization": custom_metric_utilization +"/compute:alpha/AutoscalingPolicy/loadBalancingUtilization": load_balancing_utilization +"/compute:alpha/AutoscalingPolicy/maxNumReplicas": max_num_replicas +"/compute:alpha/AutoscalingPolicy/minNumReplicas": min_num_replicas +"/compute:alpha/AutoscalingPolicy/mode": mode +"/compute:alpha/AutoscalingPolicy/queueBasedScaling": queue_based_scaling +"/compute:alpha/AutoscalingPolicyCpuUtilization": autoscaling_policy_cpu_utilization +"/compute:alpha/AutoscalingPolicyCpuUtilization/utilizationTarget": utilization_target +"/compute:alpha/AutoscalingPolicyCustomMetricUtilization": autoscaling_policy_custom_metric_utilization +"/compute:alpha/AutoscalingPolicyCustomMetricUtilization/filter": filter +"/compute:alpha/AutoscalingPolicyCustomMetricUtilization/metric": metric +"/compute:alpha/AutoscalingPolicyCustomMetricUtilization/singleInstanceAssignment": single_instance_assignment +"/compute:alpha/AutoscalingPolicyCustomMetricUtilization/utilizationTarget": utilization_target +"/compute:alpha/AutoscalingPolicyCustomMetricUtilization/utilizationTargetType": utilization_target_type +"/compute:alpha/AutoscalingPolicyLoadBalancingUtilization": autoscaling_policy_load_balancing_utilization +"/compute:alpha/AutoscalingPolicyLoadBalancingUtilization/utilizationTarget": utilization_target +"/compute:alpha/AutoscalingPolicyQueueBasedScaling": autoscaling_policy_queue_based_scaling +"/compute:alpha/AutoscalingPolicyQueueBasedScaling/acceptableBacklogPerInstance": acceptable_backlog_per_instance +"/compute:alpha/AutoscalingPolicyQueueBasedScaling/cloudPubSub": cloud_pub_sub +"/compute:alpha/AutoscalingPolicyQueueBasedScaling/singleWorkerThroughputPerSec": single_worker_throughput_per_sec +"/compute:alpha/AutoscalingPolicyQueueBasedScalingCloudPubSub": autoscaling_policy_queue_based_scaling_cloud_pub_sub +"/compute:alpha/AutoscalingPolicyQueueBasedScalingCloudPubSub/subscription": subscription +"/compute:alpha/AutoscalingPolicyQueueBasedScalingCloudPubSub/topic": topic +"/compute:alpha/Backend": backend +"/compute:alpha/Backend/balancingMode": balancing_mode +"/compute:alpha/Backend/capacityScaler": capacity_scaler +"/compute:alpha/Backend/description": description +"/compute:alpha/Backend/failover": failover +"/compute:alpha/Backend/group": group +"/compute:alpha/Backend/maxConnections": max_connections +"/compute:alpha/Backend/maxConnectionsPerInstance": max_connections_per_instance +"/compute:alpha/Backend/maxRate": max_rate +"/compute:alpha/Backend/maxRatePerInstance": max_rate_per_instance +"/compute:alpha/Backend/maxUtilization": max_utilization +"/compute:alpha/BackendBucket": backend_bucket +"/compute:alpha/BackendBucket/bucketName": bucket_name +"/compute:alpha/BackendBucket/cdnPolicy": cdn_policy +"/compute:alpha/BackendBucket/creationTimestamp": creation_timestamp +"/compute:alpha/BackendBucket/description": description +"/compute:alpha/BackendBucket/enableCdn": enable_cdn +"/compute:alpha/BackendBucket/id": id +"/compute:alpha/BackendBucket/kind": kind +"/compute:alpha/BackendBucket/name": name +"/compute:alpha/BackendBucket/selfLink": self_link +"/compute:alpha/BackendBucketCdnPolicy": backend_bucket_cdn_policy +"/compute:alpha/BackendBucketCdnPolicy/signedUrlCacheMaxAgeSec": signed_url_cache_max_age_sec +"/compute:alpha/BackendBucketCdnPolicy/signedUrlKeyNames": signed_url_key_names +"/compute:alpha/BackendBucketCdnPolicy/signedUrlKeyNames/signed_url_key_name": signed_url_key_name +"/compute:alpha/BackendBucketList": backend_bucket_list +"/compute:alpha/BackendBucketList/id": id +"/compute:alpha/BackendBucketList/items": items +"/compute:alpha/BackendBucketList/items/item": item +"/compute:alpha/BackendBucketList/kind": kind +"/compute:alpha/BackendBucketList/nextPageToken": next_page_token +"/compute:alpha/BackendBucketList/selfLink": self_link +"/compute:alpha/BackendBucketList/warning": warning +"/compute:alpha/BackendBucketList/warning/code": code +"/compute:alpha/BackendBucketList/warning/data": data +"/compute:alpha/BackendBucketList/warning/data/datum": datum +"/compute:alpha/BackendBucketList/warning/data/datum/key": key +"/compute:alpha/BackendBucketList/warning/data/datum/value": value +"/compute:alpha/BackendBucketList/warning/message": message +"/compute:alpha/BackendService": backend_service +"/compute:alpha/BackendService/affinityCookieTtlSec": affinity_cookie_ttl_sec +"/compute:alpha/BackendService/backends": backends +"/compute:alpha/BackendService/backends/backend": backend +"/compute:alpha/BackendService/cdnPolicy": cdn_policy +"/compute:alpha/BackendService/connectionDraining": connection_draining +"/compute:alpha/BackendService/creationTimestamp": creation_timestamp +"/compute:alpha/BackendService/customRequestHeaders": custom_request_headers +"/compute:alpha/BackendService/customRequestHeaders/custom_request_header": custom_request_header +"/compute:alpha/BackendService/description": description +"/compute:alpha/BackendService/enableCDN": enable_cdn +"/compute:alpha/BackendService/failoverRatio": failover_ratio +"/compute:alpha/BackendService/fingerprint": fingerprint +"/compute:alpha/BackendService/healthChecks": health_checks +"/compute:alpha/BackendService/healthChecks/health_check": health_check +"/compute:alpha/BackendService/iap": iap +"/compute:alpha/BackendService/id": id +"/compute:alpha/BackendService/kind": kind +"/compute:alpha/BackendService/loadBalancingScheme": load_balancing_scheme +"/compute:alpha/BackendService/name": name +"/compute:alpha/BackendService/port": port +"/compute:alpha/BackendService/portName": port_name +"/compute:alpha/BackendService/protocol": protocol +"/compute:alpha/BackendService/region": region +"/compute:alpha/BackendService/securityPolicy": security_policy +"/compute:alpha/BackendService/selfLink": self_link +"/compute:alpha/BackendService/sessionAffinity": session_affinity +"/compute:alpha/BackendService/timeoutSec": timeout_sec +"/compute:alpha/BackendServiceAggregatedList": backend_service_aggregated_list +"/compute:alpha/BackendServiceAggregatedList/id": id +"/compute:alpha/BackendServiceAggregatedList/items": items +"/compute:alpha/BackendServiceAggregatedList/items/item": item +"/compute:alpha/BackendServiceAggregatedList/kind": kind +"/compute:alpha/BackendServiceAggregatedList/nextPageToken": next_page_token +"/compute:alpha/BackendServiceAggregatedList/selfLink": self_link +"/compute:alpha/BackendServiceAggregatedList/warning": warning +"/compute:alpha/BackendServiceAggregatedList/warning/code": code +"/compute:alpha/BackendServiceAggregatedList/warning/data": data +"/compute:alpha/BackendServiceAggregatedList/warning/data/datum": datum +"/compute:alpha/BackendServiceAggregatedList/warning/data/datum/key": key +"/compute:alpha/BackendServiceAggregatedList/warning/data/datum/value": value +"/compute:alpha/BackendServiceAggregatedList/warning/message": message +"/compute:alpha/BackendServiceCdnPolicy": backend_service_cdn_policy +"/compute:alpha/BackendServiceCdnPolicy/cacheKeyPolicy": cache_key_policy +"/compute:alpha/BackendServiceCdnPolicy/signedUrlCacheMaxAgeSec": signed_url_cache_max_age_sec +"/compute:alpha/BackendServiceCdnPolicy/signedUrlKeyNames": signed_url_key_names +"/compute:alpha/BackendServiceCdnPolicy/signedUrlKeyNames/signed_url_key_name": signed_url_key_name +"/compute:alpha/BackendServiceGroupHealth": backend_service_group_health +"/compute:alpha/BackendServiceGroupHealth/healthStatus": health_status +"/compute:alpha/BackendServiceGroupHealth/healthStatus/health_status": health_status +"/compute:alpha/BackendServiceGroupHealth/kind": kind +"/compute:alpha/BackendServiceIAP": backend_service_iap +"/compute:alpha/BackendServiceIAP/enabled": enabled +"/compute:alpha/BackendServiceIAP/oauth2ClientId": oauth2_client_id +"/compute:alpha/BackendServiceIAP/oauth2ClientSecret": oauth2_client_secret +"/compute:alpha/BackendServiceIAP/oauth2ClientSecretSha256": oauth2_client_secret_sha256 +"/compute:alpha/BackendServiceList": backend_service_list +"/compute:alpha/BackendServiceList/id": id +"/compute:alpha/BackendServiceList/items": items +"/compute:alpha/BackendServiceList/items/item": item +"/compute:alpha/BackendServiceList/kind": kind +"/compute:alpha/BackendServiceList/nextPageToken": next_page_token +"/compute:alpha/BackendServiceList/selfLink": self_link +"/compute:alpha/BackendServiceList/warning": warning +"/compute:alpha/BackendServiceList/warning/code": code +"/compute:alpha/BackendServiceList/warning/data": data +"/compute:alpha/BackendServiceList/warning/data/datum": datum +"/compute:alpha/BackendServiceList/warning/data/datum/key": key +"/compute:alpha/BackendServiceList/warning/data/datum/value": value +"/compute:alpha/BackendServiceList/warning/message": message +"/compute:alpha/BackendServiceReference": backend_service_reference +"/compute:alpha/BackendServiceReference/backendService": backend_service +"/compute:alpha/BackendServicesScopedList": backend_services_scoped_list +"/compute:alpha/BackendServicesScopedList/backendServices": backend_services +"/compute:alpha/BackendServicesScopedList/backendServices/backend_service": backend_service +"/compute:alpha/BackendServicesScopedList/warning": warning +"/compute:alpha/BackendServicesScopedList/warning/code": code +"/compute:alpha/BackendServicesScopedList/warning/data": data +"/compute:alpha/BackendServicesScopedList/warning/data/datum": datum +"/compute:alpha/BackendServicesScopedList/warning/data/datum/key": key +"/compute:alpha/BackendServicesScopedList/warning/data/datum/value": value +"/compute:alpha/BackendServicesScopedList/warning/message": message +"/compute:alpha/Binding": binding +"/compute:alpha/Binding/condition": condition +"/compute:alpha/Binding/members": members +"/compute:alpha/Binding/members/member": member +"/compute:alpha/Binding/role": role +"/compute:alpha/CacheInvalidationRule": cache_invalidation_rule +"/compute:alpha/CacheInvalidationRule/host": host +"/compute:alpha/CacheInvalidationRule/path": path +"/compute:alpha/CacheKeyPolicy": cache_key_policy +"/compute:alpha/CacheKeyPolicy/includeHost": include_host +"/compute:alpha/CacheKeyPolicy/includeProtocol": include_protocol +"/compute:alpha/CacheKeyPolicy/includeQueryString": include_query_string +"/compute:alpha/CacheKeyPolicy/queryStringBlacklist": query_string_blacklist +"/compute:alpha/CacheKeyPolicy/queryStringBlacklist/query_string_blacklist": query_string_blacklist +"/compute:alpha/CacheKeyPolicy/queryStringWhitelist": query_string_whitelist +"/compute:alpha/CacheKeyPolicy/queryStringWhitelist/query_string_whitelist": query_string_whitelist +"/compute:alpha/Commitment": commitment +"/compute:alpha/Commitment/creationTimestamp": creation_timestamp +"/compute:alpha/Commitment/description": description +"/compute:alpha/Commitment/endTimestamp": end_timestamp +"/compute:alpha/Commitment/id": id +"/compute:alpha/Commitment/kind": kind +"/compute:alpha/Commitment/name": name +"/compute:alpha/Commitment/plan": plan +"/compute:alpha/Commitment/region": region +"/compute:alpha/Commitment/resources": resources +"/compute:alpha/Commitment/resources/resource": resource +"/compute:alpha/Commitment/selfLink": self_link +"/compute:alpha/Commitment/startTimestamp": start_timestamp +"/compute:alpha/Commitment/status": status +"/compute:alpha/Commitment/statusMessage": status_message +"/compute:alpha/CommitmentAggregatedList": commitment_aggregated_list +"/compute:alpha/CommitmentAggregatedList/id": id +"/compute:alpha/CommitmentAggregatedList/items": items +"/compute:alpha/CommitmentAggregatedList/items/item": item +"/compute:alpha/CommitmentAggregatedList/kind": kind +"/compute:alpha/CommitmentAggregatedList/nextPageToken": next_page_token +"/compute:alpha/CommitmentAggregatedList/selfLink": self_link +"/compute:alpha/CommitmentAggregatedList/warning": warning +"/compute:alpha/CommitmentAggregatedList/warning/code": code +"/compute:alpha/CommitmentAggregatedList/warning/data": data +"/compute:alpha/CommitmentAggregatedList/warning/data/datum": datum +"/compute:alpha/CommitmentAggregatedList/warning/data/datum/key": key +"/compute:alpha/CommitmentAggregatedList/warning/data/datum/value": value +"/compute:alpha/CommitmentAggregatedList/warning/message": message +"/compute:alpha/CommitmentList": commitment_list +"/compute:alpha/CommitmentList/id": id +"/compute:alpha/CommitmentList/items": items +"/compute:alpha/CommitmentList/items/item": item +"/compute:alpha/CommitmentList/kind": kind +"/compute:alpha/CommitmentList/nextPageToken": next_page_token +"/compute:alpha/CommitmentList/selfLink": self_link +"/compute:alpha/CommitmentList/warning": warning +"/compute:alpha/CommitmentList/warning/code": code +"/compute:alpha/CommitmentList/warning/data": data +"/compute:alpha/CommitmentList/warning/data/datum": datum +"/compute:alpha/CommitmentList/warning/data/datum/key": key +"/compute:alpha/CommitmentList/warning/data/datum/value": value +"/compute:alpha/CommitmentList/warning/message": message +"/compute:alpha/CommitmentsScopedList": commitments_scoped_list +"/compute:alpha/CommitmentsScopedList/commitments": commitments +"/compute:alpha/CommitmentsScopedList/commitments/commitment": commitment +"/compute:alpha/CommitmentsScopedList/warning": warning +"/compute:alpha/CommitmentsScopedList/warning/code": code +"/compute:alpha/CommitmentsScopedList/warning/data": data +"/compute:alpha/CommitmentsScopedList/warning/data/datum": datum +"/compute:alpha/CommitmentsScopedList/warning/data/datum/key": key +"/compute:alpha/CommitmentsScopedList/warning/data/datum/value": value +"/compute:alpha/CommitmentsScopedList/warning/message": message +"/compute:alpha/Condition": condition +"/compute:alpha/Condition/iam": iam +"/compute:alpha/Condition/op": op +"/compute:alpha/Condition/svc": svc +"/compute:alpha/Condition/sys": sys +"/compute:alpha/Condition/value": value +"/compute:alpha/Condition/values": values +"/compute:alpha/Condition/values/value": value +"/compute:alpha/ConnectionDraining": connection_draining +"/compute:alpha/ConnectionDraining/drainingTimeoutSec": draining_timeout_sec +"/compute:alpha/CustomerEncryptionKey": customer_encryption_key +"/compute:alpha/CustomerEncryptionKey/kmsKeyName": kms_key_name +"/compute:alpha/CustomerEncryptionKey/rawKey": raw_key +"/compute:alpha/CustomerEncryptionKey/rsaEncryptedKey": rsa_encrypted_key +"/compute:alpha/CustomerEncryptionKey/sha256": sha256 +"/compute:alpha/CustomerEncryptionKeyProtectedDisk": customer_encryption_key_protected_disk +"/compute:alpha/CustomerEncryptionKeyProtectedDisk/diskEncryptionKey": disk_encryption_key +"/compute:alpha/CustomerEncryptionKeyProtectedDisk/source": source +"/compute:alpha/DeprecationStatus": deprecation_status +"/compute:alpha/DeprecationStatus/deleted": deleted +"/compute:alpha/DeprecationStatus/deprecated": deprecated +"/compute:alpha/DeprecationStatus/obsolete": obsolete +"/compute:alpha/DeprecationStatus/replacement": replacement +"/compute:alpha/DeprecationStatus/state": state +"/compute:alpha/Disk": disk +"/compute:alpha/Disk/creationTimestamp": creation_timestamp +"/compute:alpha/Disk/description": description +"/compute:alpha/Disk/diskEncryptionKey": disk_encryption_key +"/compute:alpha/Disk/id": id +"/compute:alpha/Disk/kind": kind +"/compute:alpha/Disk/labelFingerprint": label_fingerprint +"/compute:alpha/Disk/labels": labels +"/compute:alpha/Disk/labels/label": label +"/compute:alpha/Disk/lastAttachTimestamp": last_attach_timestamp +"/compute:alpha/Disk/lastDetachTimestamp": last_detach_timestamp +"/compute:alpha/Disk/licenseCodes": license_codes +"/compute:alpha/Disk/licenseCodes/license_code": license_code +"/compute:alpha/Disk/licenses": licenses +"/compute:alpha/Disk/licenses/license": license +"/compute:alpha/Disk/name": name +"/compute:alpha/Disk/options": options +"/compute:alpha/Disk/physicalBlockSizeBytes": physical_block_size_bytes +"/compute:alpha/Disk/region": region +"/compute:alpha/Disk/replicaZones": replica_zones +"/compute:alpha/Disk/replicaZones/replica_zone": replica_zone +"/compute:alpha/Disk/selfLink": self_link +"/compute:alpha/Disk/sizeGb": size_gb +"/compute:alpha/Disk/sourceImage": source_image +"/compute:alpha/Disk/sourceImageEncryptionKey": source_image_encryption_key +"/compute:alpha/Disk/sourceImageId": source_image_id +"/compute:alpha/Disk/sourceSnapshot": source_snapshot +"/compute:alpha/Disk/sourceSnapshotEncryptionKey": source_snapshot_encryption_key +"/compute:alpha/Disk/sourceSnapshotId": source_snapshot_id +"/compute:alpha/Disk/status": status +"/compute:alpha/Disk/storageType": storage_type +"/compute:alpha/Disk/type": type +"/compute:alpha/Disk/users": users +"/compute:alpha/Disk/users/user": user +"/compute:alpha/Disk/zone": zone +"/compute:alpha/DiskAggregatedList": disk_aggregated_list +"/compute:alpha/DiskAggregatedList/id": id +"/compute:alpha/DiskAggregatedList/items": items +"/compute:alpha/DiskAggregatedList/items/item": item +"/compute:alpha/DiskAggregatedList/kind": kind +"/compute:alpha/DiskAggregatedList/nextPageToken": next_page_token +"/compute:alpha/DiskAggregatedList/selfLink": self_link +"/compute:alpha/DiskAggregatedList/warning": warning +"/compute:alpha/DiskAggregatedList/warning/code": code +"/compute:alpha/DiskAggregatedList/warning/data": data +"/compute:alpha/DiskAggregatedList/warning/data/datum": datum +"/compute:alpha/DiskAggregatedList/warning/data/datum/key": key +"/compute:alpha/DiskAggregatedList/warning/data/datum/value": value +"/compute:alpha/DiskAggregatedList/warning/message": message +"/compute:alpha/DiskList": disk_list +"/compute:alpha/DiskList/id": id +"/compute:alpha/DiskList/items": items +"/compute:alpha/DiskList/items/item": item +"/compute:alpha/DiskList/kind": kind +"/compute:alpha/DiskList/nextPageToken": next_page_token +"/compute:alpha/DiskList/selfLink": self_link +"/compute:alpha/DiskList/warning": warning +"/compute:alpha/DiskList/warning/code": code +"/compute:alpha/DiskList/warning/data": data +"/compute:alpha/DiskList/warning/data/datum": datum +"/compute:alpha/DiskList/warning/data/datum/key": key +"/compute:alpha/DiskList/warning/data/datum/value": value +"/compute:alpha/DiskList/warning/message": message +"/compute:alpha/DiskMoveRequest": disk_move_request +"/compute:alpha/DiskMoveRequest/destinationZone": destination_zone +"/compute:alpha/DiskMoveRequest/targetDisk": target_disk +"/compute:alpha/DiskType": disk_type +"/compute:alpha/DiskType/creationTimestamp": creation_timestamp +"/compute:alpha/DiskType/defaultDiskSizeGb": default_disk_size_gb +"/compute:alpha/DiskType/deprecated": deprecated +"/compute:alpha/DiskType/description": description +"/compute:alpha/DiskType/id": id +"/compute:alpha/DiskType/kind": kind +"/compute:alpha/DiskType/name": name +"/compute:alpha/DiskType/selfLink": self_link +"/compute:alpha/DiskType/validDiskSize": valid_disk_size +"/compute:alpha/DiskType/zone": zone +"/compute:alpha/DiskTypeAggregatedList": disk_type_aggregated_list +"/compute:alpha/DiskTypeAggregatedList/id": id +"/compute:alpha/DiskTypeAggregatedList/items": items +"/compute:alpha/DiskTypeAggregatedList/items/item": item +"/compute:alpha/DiskTypeAggregatedList/kind": kind +"/compute:alpha/DiskTypeAggregatedList/nextPageToken": next_page_token +"/compute:alpha/DiskTypeAggregatedList/selfLink": self_link +"/compute:alpha/DiskTypeAggregatedList/warning": warning +"/compute:alpha/DiskTypeAggregatedList/warning/code": code +"/compute:alpha/DiskTypeAggregatedList/warning/data": data +"/compute:alpha/DiskTypeAggregatedList/warning/data/datum": datum +"/compute:alpha/DiskTypeAggregatedList/warning/data/datum/key": key +"/compute:alpha/DiskTypeAggregatedList/warning/data/datum/value": value +"/compute:alpha/DiskTypeAggregatedList/warning/message": message +"/compute:alpha/DiskTypeList": disk_type_list +"/compute:alpha/DiskTypeList/id": id +"/compute:alpha/DiskTypeList/items": items +"/compute:alpha/DiskTypeList/items/item": item +"/compute:alpha/DiskTypeList/kind": kind +"/compute:alpha/DiskTypeList/nextPageToken": next_page_token +"/compute:alpha/DiskTypeList/selfLink": self_link +"/compute:alpha/DiskTypeList/warning": warning +"/compute:alpha/DiskTypeList/warning/code": code +"/compute:alpha/DiskTypeList/warning/data": data +"/compute:alpha/DiskTypeList/warning/data/datum": datum +"/compute:alpha/DiskTypeList/warning/data/datum/key": key +"/compute:alpha/DiskTypeList/warning/data/datum/value": value +"/compute:alpha/DiskTypeList/warning/message": message +"/compute:alpha/DiskTypesScopedList": disk_types_scoped_list +"/compute:alpha/DiskTypesScopedList/diskTypes": disk_types +"/compute:alpha/DiskTypesScopedList/diskTypes/disk_type": disk_type +"/compute:alpha/DiskTypesScopedList/warning": warning +"/compute:alpha/DiskTypesScopedList/warning/code": code +"/compute:alpha/DiskTypesScopedList/warning/data": data +"/compute:alpha/DiskTypesScopedList/warning/data/datum": datum +"/compute:alpha/DiskTypesScopedList/warning/data/datum/key": key +"/compute:alpha/DiskTypesScopedList/warning/data/datum/value": value +"/compute:alpha/DiskTypesScopedList/warning/message": message +"/compute:alpha/DisksResizeRequest": disks_resize_request +"/compute:alpha/DisksResizeRequest/sizeGb": size_gb +"/compute:alpha/DisksScopedList": disks_scoped_list +"/compute:alpha/DisksScopedList/disks": disks +"/compute:alpha/DisksScopedList/disks/disk": disk +"/compute:alpha/DisksScopedList/warning": warning +"/compute:alpha/DisksScopedList/warning/code": code +"/compute:alpha/DisksScopedList/warning/data": data +"/compute:alpha/DisksScopedList/warning/data/datum": datum +"/compute:alpha/DisksScopedList/warning/data/datum/key": key +"/compute:alpha/DisksScopedList/warning/data/datum/value": value +"/compute:alpha/DisksScopedList/warning/message": message +"/compute:alpha/DistributionPolicy": distribution_policy +"/compute:alpha/DistributionPolicy/zones": zones +"/compute:alpha/DistributionPolicy/zones/zone": zone +"/compute:alpha/DistributionPolicyZoneConfiguration": distribution_policy_zone_configuration +"/compute:alpha/DistributionPolicyZoneConfiguration/zone": zone +"/compute:alpha/Expr": expr +"/compute:alpha/Expr/description": description +"/compute:alpha/Expr/expression": expression +"/compute:alpha/Expr/location": location +"/compute:alpha/Expr/title": title +"/compute:alpha/Firewall": firewall +"/compute:alpha/Firewall/allowed": allowed +"/compute:alpha/Firewall/allowed/allowed": allowed +"/compute:alpha/Firewall/allowed/allowed/IPProtocol": ip_protocol +"/compute:alpha/Firewall/allowed/allowed/ports": ports +"/compute:alpha/Firewall/allowed/allowed/ports/port": port +"/compute:alpha/Firewall/creationTimestamp": creation_timestamp +"/compute:alpha/Firewall/denied": denied +"/compute:alpha/Firewall/denied/denied": denied +"/compute:alpha/Firewall/denied/denied/IPProtocol": ip_protocol +"/compute:alpha/Firewall/denied/denied/ports": ports +"/compute:alpha/Firewall/denied/denied/ports/port": port +"/compute:alpha/Firewall/description": description +"/compute:alpha/Firewall/destinationRanges": destination_ranges +"/compute:alpha/Firewall/destinationRanges/destination_range": destination_range +"/compute:alpha/Firewall/direction": direction +"/compute:alpha/Firewall/enableLogging": enable_logging +"/compute:alpha/Firewall/id": id +"/compute:alpha/Firewall/kind": kind +"/compute:alpha/Firewall/name": name +"/compute:alpha/Firewall/network": network +"/compute:alpha/Firewall/priority": priority +"/compute:alpha/Firewall/selfLink": self_link +"/compute:alpha/Firewall/sourceRanges": source_ranges +"/compute:alpha/Firewall/sourceRanges/source_range": source_range +"/compute:alpha/Firewall/sourceServiceAccounts": source_service_accounts +"/compute:alpha/Firewall/sourceServiceAccounts/source_service_account": source_service_account +"/compute:alpha/Firewall/sourceTags": source_tags +"/compute:alpha/Firewall/sourceTags/source_tag": source_tag +"/compute:alpha/Firewall/targetServiceAccounts": target_service_accounts +"/compute:alpha/Firewall/targetServiceAccounts/target_service_account": target_service_account +"/compute:alpha/Firewall/targetTags": target_tags +"/compute:alpha/Firewall/targetTags/target_tag": target_tag +"/compute:alpha/FirewallList": firewall_list +"/compute:alpha/FirewallList/id": id +"/compute:alpha/FirewallList/items": items +"/compute:alpha/FirewallList/items/item": item +"/compute:alpha/FirewallList/kind": kind +"/compute:alpha/FirewallList/nextPageToken": next_page_token +"/compute:alpha/FirewallList/selfLink": self_link +"/compute:alpha/FirewallList/warning": warning +"/compute:alpha/FirewallList/warning/code": code +"/compute:alpha/FirewallList/warning/data": data +"/compute:alpha/FirewallList/warning/data/datum": datum +"/compute:alpha/FirewallList/warning/data/datum/key": key +"/compute:alpha/FirewallList/warning/data/datum/value": value +"/compute:alpha/FirewallList/warning/message": message +"/compute:alpha/FixedOrPercent": fixed_or_percent +"/compute:alpha/FixedOrPercent/calculated": calculated +"/compute:alpha/FixedOrPercent/fixed": fixed +"/compute:alpha/FixedOrPercent/percent": percent +"/compute:alpha/ForwardingRule": forwarding_rule +"/compute:alpha/ForwardingRule/IPAddress": ip_address +"/compute:alpha/ForwardingRule/IPProtocol": ip_protocol +"/compute:alpha/ForwardingRule/backendService": backend_service +"/compute:alpha/ForwardingRule/creationTimestamp": creation_timestamp +"/compute:alpha/ForwardingRule/description": description +"/compute:alpha/ForwardingRule/id": id +"/compute:alpha/ForwardingRule/ipVersion": ip_version +"/compute:alpha/ForwardingRule/kind": kind +"/compute:alpha/ForwardingRule/labelFingerprint": label_fingerprint +"/compute:alpha/ForwardingRule/labels": labels +"/compute:alpha/ForwardingRule/labels/label": label +"/compute:alpha/ForwardingRule/loadBalancingScheme": load_balancing_scheme +"/compute:alpha/ForwardingRule/name": name +"/compute:alpha/ForwardingRule/network": network +"/compute:alpha/ForwardingRule/networkTier": network_tier +"/compute:alpha/ForwardingRule/portRange": port_range +"/compute:alpha/ForwardingRule/ports": ports +"/compute:alpha/ForwardingRule/ports/port": port +"/compute:alpha/ForwardingRule/region": region +"/compute:alpha/ForwardingRule/selfLink": self_link +"/compute:alpha/ForwardingRule/serviceLabel": service_label +"/compute:alpha/ForwardingRule/serviceName": service_name +"/compute:alpha/ForwardingRule/subnetwork": subnetwork +"/compute:alpha/ForwardingRule/target": target +"/compute:alpha/ForwardingRuleAggregatedList": forwarding_rule_aggregated_list +"/compute:alpha/ForwardingRuleAggregatedList/id": id +"/compute:alpha/ForwardingRuleAggregatedList/items": items +"/compute:alpha/ForwardingRuleAggregatedList/items/item": item +"/compute:alpha/ForwardingRuleAggregatedList/kind": kind +"/compute:alpha/ForwardingRuleAggregatedList/nextPageToken": next_page_token +"/compute:alpha/ForwardingRuleAggregatedList/selfLink": self_link +"/compute:alpha/ForwardingRuleAggregatedList/warning": warning +"/compute:alpha/ForwardingRuleAggregatedList/warning/code": code +"/compute:alpha/ForwardingRuleAggregatedList/warning/data": data +"/compute:alpha/ForwardingRuleAggregatedList/warning/data/datum": datum +"/compute:alpha/ForwardingRuleAggregatedList/warning/data/datum/key": key +"/compute:alpha/ForwardingRuleAggregatedList/warning/data/datum/value": value +"/compute:alpha/ForwardingRuleAggregatedList/warning/message": message +"/compute:alpha/ForwardingRuleList": forwarding_rule_list +"/compute:alpha/ForwardingRuleList/id": id +"/compute:alpha/ForwardingRuleList/items": items +"/compute:alpha/ForwardingRuleList/items/item": item +"/compute:alpha/ForwardingRuleList/kind": kind +"/compute:alpha/ForwardingRuleList/nextPageToken": next_page_token +"/compute:alpha/ForwardingRuleList/selfLink": self_link +"/compute:alpha/ForwardingRuleList/warning": warning +"/compute:alpha/ForwardingRuleList/warning/code": code +"/compute:alpha/ForwardingRuleList/warning/data": data +"/compute:alpha/ForwardingRuleList/warning/data/datum": datum +"/compute:alpha/ForwardingRuleList/warning/data/datum/key": key +"/compute:alpha/ForwardingRuleList/warning/data/datum/value": value +"/compute:alpha/ForwardingRuleList/warning/message": message +"/compute:alpha/ForwardingRuleReference": forwarding_rule_reference +"/compute:alpha/ForwardingRuleReference/forwardingRule": forwarding_rule +"/compute:alpha/ForwardingRulesScopedList": forwarding_rules_scoped_list +"/compute:alpha/ForwardingRulesScopedList/forwardingRules": forwarding_rules +"/compute:alpha/ForwardingRulesScopedList/forwardingRules/forwarding_rule": forwarding_rule +"/compute:alpha/ForwardingRulesScopedList/warning": warning +"/compute:alpha/ForwardingRulesScopedList/warning/code": code +"/compute:alpha/ForwardingRulesScopedList/warning/data": data +"/compute:alpha/ForwardingRulesScopedList/warning/data/datum": datum +"/compute:alpha/ForwardingRulesScopedList/warning/data/datum/key": key +"/compute:alpha/ForwardingRulesScopedList/warning/data/datum/value": value +"/compute:alpha/ForwardingRulesScopedList/warning/message": message +"/compute:alpha/GlobalSetLabelsRequest": global_set_labels_request +"/compute:alpha/GlobalSetLabelsRequest/labelFingerprint": label_fingerprint +"/compute:alpha/GlobalSetLabelsRequest/labels": labels +"/compute:alpha/GlobalSetLabelsRequest/labels/label": label +"/compute:alpha/GuestAttributes": guest_attributes +"/compute:alpha/GuestAttributes/kind": kind +"/compute:alpha/GuestAttributes/selfLink": self_link +"/compute:alpha/GuestAttributes/variableKey": variable_key +"/compute:alpha/GuestAttributes/variableValue": variable_value +"/compute:alpha/GuestOsFeature": guest_os_feature +"/compute:alpha/GuestOsFeature/type": type +"/compute:alpha/HTTP2HealthCheck": http2_health_check +"/compute:alpha/HTTP2HealthCheck/host": host +"/compute:alpha/HTTP2HealthCheck/port": port +"/compute:alpha/HTTP2HealthCheck/portName": port_name +"/compute:alpha/HTTP2HealthCheck/proxyHeader": proxy_header +"/compute:alpha/HTTP2HealthCheck/requestPath": request_path +"/compute:alpha/HTTP2HealthCheck/response": response +"/compute:alpha/HTTPHealthCheck": http_health_check +"/compute:alpha/HTTPHealthCheck/host": host +"/compute:alpha/HTTPHealthCheck/port": port +"/compute:alpha/HTTPHealthCheck/portName": port_name +"/compute:alpha/HTTPHealthCheck/proxyHeader": proxy_header +"/compute:alpha/HTTPHealthCheck/requestPath": request_path +"/compute:alpha/HTTPHealthCheck/response": response +"/compute:alpha/HTTPSHealthCheck": https_health_check +"/compute:alpha/HTTPSHealthCheck/host": host +"/compute:alpha/HTTPSHealthCheck/port": port +"/compute:alpha/HTTPSHealthCheck/portName": port_name +"/compute:alpha/HTTPSHealthCheck/proxyHeader": proxy_header +"/compute:alpha/HTTPSHealthCheck/requestPath": request_path +"/compute:alpha/HTTPSHealthCheck/response": response +"/compute:alpha/HealthCheck": health_check +"/compute:alpha/HealthCheck/checkIntervalSec": check_interval_sec +"/compute:alpha/HealthCheck/creationTimestamp": creation_timestamp +"/compute:alpha/HealthCheck/description": description +"/compute:alpha/HealthCheck/healthyThreshold": healthy_threshold +"/compute:alpha/HealthCheck/http2HealthCheck": http2_health_check +"/compute:alpha/HealthCheck/httpHealthCheck": http_health_check +"/compute:alpha/HealthCheck/httpsHealthCheck": https_health_check +"/compute:alpha/HealthCheck/id": id +"/compute:alpha/HealthCheck/kind": kind +"/compute:alpha/HealthCheck/name": name +"/compute:alpha/HealthCheck/selfLink": self_link +"/compute:alpha/HealthCheck/sslHealthCheck": ssl_health_check +"/compute:alpha/HealthCheck/tcpHealthCheck": tcp_health_check +"/compute:alpha/HealthCheck/timeoutSec": timeout_sec +"/compute:alpha/HealthCheck/type": type +"/compute:alpha/HealthCheck/udpHealthCheck": udp_health_check +"/compute:alpha/HealthCheck/unhealthyThreshold": unhealthy_threshold +"/compute:alpha/HealthCheckList": health_check_list +"/compute:alpha/HealthCheckList/id": id +"/compute:alpha/HealthCheckList/items": items +"/compute:alpha/HealthCheckList/items/item": item +"/compute:alpha/HealthCheckList/kind": kind +"/compute:alpha/HealthCheckList/nextPageToken": next_page_token +"/compute:alpha/HealthCheckList/selfLink": self_link +"/compute:alpha/HealthCheckList/warning": warning +"/compute:alpha/HealthCheckList/warning/code": code +"/compute:alpha/HealthCheckList/warning/data": data +"/compute:alpha/HealthCheckList/warning/data/datum": datum +"/compute:alpha/HealthCheckList/warning/data/datum/key": key +"/compute:alpha/HealthCheckList/warning/data/datum/value": value +"/compute:alpha/HealthCheckList/warning/message": message +"/compute:alpha/HealthCheckReference": health_check_reference +"/compute:alpha/HealthCheckReference/healthCheck": health_check +"/compute:alpha/HealthStatus": health_status +"/compute:alpha/HealthStatus/healthState": health_state +"/compute:alpha/HealthStatus/instance": instance +"/compute:alpha/HealthStatus/ipAddress": ip_address +"/compute:alpha/HealthStatus/port": port +"/compute:alpha/HealthStatusForNetworkEndpoint": health_status_for_network_endpoint +"/compute:alpha/HealthStatusForNetworkEndpoint/backendService": backend_service +"/compute:alpha/HealthStatusForNetworkEndpoint/forwardingRule": forwarding_rule +"/compute:alpha/HealthStatusForNetworkEndpoint/healthCheck": health_check +"/compute:alpha/HealthStatusForNetworkEndpoint/healthState": health_state +"/compute:alpha/Host": host +"/compute:alpha/Host/creationTimestamp": creation_timestamp +"/compute:alpha/Host/description": description +"/compute:alpha/Host/hostType": host_type +"/compute:alpha/Host/id": id +"/compute:alpha/Host/instances": instances +"/compute:alpha/Host/instances/instance": instance +"/compute:alpha/Host/kind": kind +"/compute:alpha/Host/labelFingerprint": label_fingerprint +"/compute:alpha/Host/labels": labels +"/compute:alpha/Host/labels/label": label +"/compute:alpha/Host/name": name +"/compute:alpha/Host/selfLink": self_link +"/compute:alpha/Host/status": status +"/compute:alpha/Host/statusMessage": status_message +"/compute:alpha/Host/zone": zone +"/compute:alpha/HostAggregatedList": host_aggregated_list +"/compute:alpha/HostAggregatedList/id": id +"/compute:alpha/HostAggregatedList/items": items +"/compute:alpha/HostAggregatedList/items/item": item +"/compute:alpha/HostAggregatedList/kind": kind +"/compute:alpha/HostAggregatedList/nextPageToken": next_page_token +"/compute:alpha/HostAggregatedList/selfLink": self_link +"/compute:alpha/HostAggregatedList/warning": warning +"/compute:alpha/HostAggregatedList/warning/code": code +"/compute:alpha/HostAggregatedList/warning/data": data +"/compute:alpha/HostAggregatedList/warning/data/datum": datum +"/compute:alpha/HostAggregatedList/warning/data/datum/key": key +"/compute:alpha/HostAggregatedList/warning/data/datum/value": value +"/compute:alpha/HostAggregatedList/warning/message": message +"/compute:alpha/HostList": host_list +"/compute:alpha/HostList/id": id +"/compute:alpha/HostList/items": items +"/compute:alpha/HostList/items/item": item +"/compute:alpha/HostList/kind": kind +"/compute:alpha/HostList/nextPageToken": next_page_token +"/compute:alpha/HostList/selfLink": self_link +"/compute:alpha/HostList/warning": warning +"/compute:alpha/HostList/warning/code": code +"/compute:alpha/HostList/warning/data": data +"/compute:alpha/HostList/warning/data/datum": datum +"/compute:alpha/HostList/warning/data/datum/key": key +"/compute:alpha/HostList/warning/data/datum/value": value +"/compute:alpha/HostList/warning/message": message +"/compute:alpha/HostRule": host_rule +"/compute:alpha/HostRule/description": description +"/compute:alpha/HostRule/hosts": hosts +"/compute:alpha/HostRule/hosts/host": host +"/compute:alpha/HostRule/pathMatcher": path_matcher +"/compute:alpha/HostType": host_type +"/compute:alpha/HostType/cpuPlatform": cpu_platform +"/compute:alpha/HostType/creationTimestamp": creation_timestamp +"/compute:alpha/HostType/deprecated": deprecated +"/compute:alpha/HostType/description": description +"/compute:alpha/HostType/guestCpus": guest_cpus +"/compute:alpha/HostType/id": id +"/compute:alpha/HostType/kind": kind +"/compute:alpha/HostType/localSsdGb": local_ssd_gb +"/compute:alpha/HostType/memoryMb": memory_mb +"/compute:alpha/HostType/name": name +"/compute:alpha/HostType/selfLink": self_link +"/compute:alpha/HostType/zone": zone +"/compute:alpha/HostTypeAggregatedList": host_type_aggregated_list +"/compute:alpha/HostTypeAggregatedList/id": id +"/compute:alpha/HostTypeAggregatedList/items": items +"/compute:alpha/HostTypeAggregatedList/items/item": item +"/compute:alpha/HostTypeAggregatedList/kind": kind +"/compute:alpha/HostTypeAggregatedList/nextPageToken": next_page_token +"/compute:alpha/HostTypeAggregatedList/selfLink": self_link +"/compute:alpha/HostTypeAggregatedList/warning": warning +"/compute:alpha/HostTypeAggregatedList/warning/code": code +"/compute:alpha/HostTypeAggregatedList/warning/data": data +"/compute:alpha/HostTypeAggregatedList/warning/data/datum": datum +"/compute:alpha/HostTypeAggregatedList/warning/data/datum/key": key +"/compute:alpha/HostTypeAggregatedList/warning/data/datum/value": value +"/compute:alpha/HostTypeAggregatedList/warning/message": message +"/compute:alpha/HostTypeList": host_type_list +"/compute:alpha/HostTypeList/id": id +"/compute:alpha/HostTypeList/items": items +"/compute:alpha/HostTypeList/items/item": item +"/compute:alpha/HostTypeList/kind": kind +"/compute:alpha/HostTypeList/nextPageToken": next_page_token +"/compute:alpha/HostTypeList/selfLink": self_link +"/compute:alpha/HostTypeList/warning": warning +"/compute:alpha/HostTypeList/warning/code": code +"/compute:alpha/HostTypeList/warning/data": data +"/compute:alpha/HostTypeList/warning/data/datum": datum +"/compute:alpha/HostTypeList/warning/data/datum/key": key +"/compute:alpha/HostTypeList/warning/data/datum/value": value +"/compute:alpha/HostTypeList/warning/message": message +"/compute:alpha/HostTypesScopedList": host_types_scoped_list +"/compute:alpha/HostTypesScopedList/hostTypes": host_types +"/compute:alpha/HostTypesScopedList/hostTypes/host_type": host_type +"/compute:alpha/HostTypesScopedList/warning": warning +"/compute:alpha/HostTypesScopedList/warning/code": code +"/compute:alpha/HostTypesScopedList/warning/data": data +"/compute:alpha/HostTypesScopedList/warning/data/datum": datum +"/compute:alpha/HostTypesScopedList/warning/data/datum/key": key +"/compute:alpha/HostTypesScopedList/warning/data/datum/value": value +"/compute:alpha/HostTypesScopedList/warning/message": message +"/compute:alpha/HostsScopedList": hosts_scoped_list +"/compute:alpha/HostsScopedList/hosts": hosts +"/compute:alpha/HostsScopedList/hosts/host": host +"/compute:alpha/HostsScopedList/warning": warning +"/compute:alpha/HostsScopedList/warning/code": code +"/compute:alpha/HostsScopedList/warning/data": data +"/compute:alpha/HostsScopedList/warning/data/datum": datum +"/compute:alpha/HostsScopedList/warning/data/datum/key": key +"/compute:alpha/HostsScopedList/warning/data/datum/value": value +"/compute:alpha/HostsScopedList/warning/message": message +"/compute:alpha/HttpHealthCheck": http_health_check +"/compute:alpha/HttpHealthCheck/checkIntervalSec": check_interval_sec +"/compute:alpha/HttpHealthCheck/creationTimestamp": creation_timestamp +"/compute:alpha/HttpHealthCheck/description": description +"/compute:alpha/HttpHealthCheck/healthyThreshold": healthy_threshold +"/compute:alpha/HttpHealthCheck/host": host +"/compute:alpha/HttpHealthCheck/id": id +"/compute:alpha/HttpHealthCheck/kind": kind +"/compute:alpha/HttpHealthCheck/name": name +"/compute:alpha/HttpHealthCheck/port": port +"/compute:alpha/HttpHealthCheck/requestPath": request_path +"/compute:alpha/HttpHealthCheck/selfLink": self_link +"/compute:alpha/HttpHealthCheck/timeoutSec": timeout_sec +"/compute:alpha/HttpHealthCheck/unhealthyThreshold": unhealthy_threshold +"/compute:alpha/HttpHealthCheckList": http_health_check_list +"/compute:alpha/HttpHealthCheckList/id": id +"/compute:alpha/HttpHealthCheckList/items": items +"/compute:alpha/HttpHealthCheckList/items/item": item +"/compute:alpha/HttpHealthCheckList/kind": kind +"/compute:alpha/HttpHealthCheckList/nextPageToken": next_page_token +"/compute:alpha/HttpHealthCheckList/selfLink": self_link +"/compute:alpha/HttpHealthCheckList/warning": warning +"/compute:alpha/HttpHealthCheckList/warning/code": code +"/compute:alpha/HttpHealthCheckList/warning/data": data +"/compute:alpha/HttpHealthCheckList/warning/data/datum": datum +"/compute:alpha/HttpHealthCheckList/warning/data/datum/key": key +"/compute:alpha/HttpHealthCheckList/warning/data/datum/value": value +"/compute:alpha/HttpHealthCheckList/warning/message": message +"/compute:alpha/HttpsHealthCheck": https_health_check +"/compute:alpha/HttpsHealthCheck/checkIntervalSec": check_interval_sec +"/compute:alpha/HttpsHealthCheck/creationTimestamp": creation_timestamp +"/compute:alpha/HttpsHealthCheck/description": description +"/compute:alpha/HttpsHealthCheck/healthyThreshold": healthy_threshold +"/compute:alpha/HttpsHealthCheck/host": host +"/compute:alpha/HttpsHealthCheck/id": id +"/compute:alpha/HttpsHealthCheck/kind": kind +"/compute:alpha/HttpsHealthCheck/name": name +"/compute:alpha/HttpsHealthCheck/port": port +"/compute:alpha/HttpsHealthCheck/requestPath": request_path +"/compute:alpha/HttpsHealthCheck/selfLink": self_link +"/compute:alpha/HttpsHealthCheck/timeoutSec": timeout_sec +"/compute:alpha/HttpsHealthCheck/unhealthyThreshold": unhealthy_threshold +"/compute:alpha/HttpsHealthCheckList": https_health_check_list +"/compute:alpha/HttpsHealthCheckList/id": id +"/compute:alpha/HttpsHealthCheckList/items": items +"/compute:alpha/HttpsHealthCheckList/items/item": item +"/compute:alpha/HttpsHealthCheckList/kind": kind +"/compute:alpha/HttpsHealthCheckList/nextPageToken": next_page_token +"/compute:alpha/HttpsHealthCheckList/selfLink": self_link +"/compute:alpha/HttpsHealthCheckList/warning": warning +"/compute:alpha/HttpsHealthCheckList/warning/code": code +"/compute:alpha/HttpsHealthCheckList/warning/data": data +"/compute:alpha/HttpsHealthCheckList/warning/data/datum": datum +"/compute:alpha/HttpsHealthCheckList/warning/data/datum/key": key +"/compute:alpha/HttpsHealthCheckList/warning/data/datum/value": value +"/compute:alpha/HttpsHealthCheckList/warning/message": message +"/compute:alpha/Image": image +"/compute:alpha/Image/archiveSizeBytes": archive_size_bytes +"/compute:alpha/Image/creationTimestamp": creation_timestamp +"/compute:alpha/Image/deprecated": deprecated +"/compute:alpha/Image/description": description +"/compute:alpha/Image/diskSizeGb": disk_size_gb +"/compute:alpha/Image/family": family +"/compute:alpha/Image/guestOsFeatures": guest_os_features +"/compute:alpha/Image/guestOsFeatures/guest_os_feature": guest_os_feature +"/compute:alpha/Image/id": id +"/compute:alpha/Image/imageEncryptionKey": image_encryption_key +"/compute:alpha/Image/kind": kind +"/compute:alpha/Image/labelFingerprint": label_fingerprint +"/compute:alpha/Image/labels": labels +"/compute:alpha/Image/labels/label": label +"/compute:alpha/Image/licenseCodes": license_codes +"/compute:alpha/Image/licenseCodes/license_code": license_code +"/compute:alpha/Image/licenses": licenses +"/compute:alpha/Image/licenses/license": license +"/compute:alpha/Image/name": name +"/compute:alpha/Image/rawDisk": raw_disk +"/compute:alpha/Image/rawDisk/containerType": container_type +"/compute:alpha/Image/rawDisk/sha1Checksum": sha1_checksum +"/compute:alpha/Image/rawDisk/source": source +"/compute:alpha/Image/selfLink": self_link +"/compute:alpha/Image/sourceDisk": source_disk +"/compute:alpha/Image/sourceDiskEncryptionKey": source_disk_encryption_key +"/compute:alpha/Image/sourceDiskId": source_disk_id +"/compute:alpha/Image/sourceImage": source_image +"/compute:alpha/Image/sourceImageEncryptionKey": source_image_encryption_key +"/compute:alpha/Image/sourceImageId": source_image_id +"/compute:alpha/Image/sourceType": source_type +"/compute:alpha/Image/status": status +"/compute:alpha/ImageList": image_list +"/compute:alpha/ImageList/id": id +"/compute:alpha/ImageList/items": items +"/compute:alpha/ImageList/items/item": item +"/compute:alpha/ImageList/kind": kind +"/compute:alpha/ImageList/nextPageToken": next_page_token +"/compute:alpha/ImageList/selfLink": self_link +"/compute:alpha/ImageList/warning": warning +"/compute:alpha/ImageList/warning/code": code +"/compute:alpha/ImageList/warning/data": data +"/compute:alpha/ImageList/warning/data/datum": datum +"/compute:alpha/ImageList/warning/data/datum/key": key +"/compute:alpha/ImageList/warning/data/datum/value": value +"/compute:alpha/ImageList/warning/message": message +"/compute:alpha/Instance": instance +"/compute:alpha/Instance/canIpForward": can_ip_forward +"/compute:alpha/Instance/cpuPlatform": cpu_platform +"/compute:alpha/Instance/creationTimestamp": creation_timestamp +"/compute:alpha/Instance/description": description +"/compute:alpha/Instance/disks": disks +"/compute:alpha/Instance/disks/disk": disk +"/compute:alpha/Instance/guestAccelerators": guest_accelerators +"/compute:alpha/Instance/guestAccelerators/guest_accelerator": guest_accelerator +"/compute:alpha/Instance/host": host +"/compute:alpha/Instance/id": id +"/compute:alpha/Instance/instanceEncryptionKey": instance_encryption_key +"/compute:alpha/Instance/kind": kind +"/compute:alpha/Instance/labelFingerprint": label_fingerprint +"/compute:alpha/Instance/labels": labels +"/compute:alpha/Instance/labels/label": label +"/compute:alpha/Instance/machineType": machine_type +"/compute:alpha/Instance/metadata": metadata +"/compute:alpha/Instance/minCpuPlatform": min_cpu_platform +"/compute:alpha/Instance/name": name +"/compute:alpha/Instance/networkInterfaces": network_interfaces +"/compute:alpha/Instance/networkInterfaces/network_interface": network_interface +"/compute:alpha/Instance/scheduling": scheduling +"/compute:alpha/Instance/selfLink": self_link +"/compute:alpha/Instance/serviceAccounts": service_accounts +"/compute:alpha/Instance/serviceAccounts/service_account": service_account +"/compute:alpha/Instance/startRestricted": start_restricted +"/compute:alpha/Instance/status": status +"/compute:alpha/Instance/statusMessage": status_message +"/compute:alpha/Instance/tags": tags +"/compute:alpha/Instance/zone": zone +"/compute:alpha/InstanceAggregatedList": instance_aggregated_list +"/compute:alpha/InstanceAggregatedList/id": id +"/compute:alpha/InstanceAggregatedList/items": items +"/compute:alpha/InstanceAggregatedList/items/item": item +"/compute:alpha/InstanceAggregatedList/kind": kind +"/compute:alpha/InstanceAggregatedList/nextPageToken": next_page_token +"/compute:alpha/InstanceAggregatedList/selfLink": self_link +"/compute:alpha/InstanceAggregatedList/warning": warning +"/compute:alpha/InstanceAggregatedList/warning/code": code +"/compute:alpha/InstanceAggregatedList/warning/data": data +"/compute:alpha/InstanceAggregatedList/warning/data/datum": datum +"/compute:alpha/InstanceAggregatedList/warning/data/datum/key": key +"/compute:alpha/InstanceAggregatedList/warning/data/datum/value": value +"/compute:alpha/InstanceAggregatedList/warning/message": message +"/compute:alpha/InstanceGroup": instance_group +"/compute:alpha/InstanceGroup/creationTimestamp": creation_timestamp +"/compute:alpha/InstanceGroup/description": description +"/compute:alpha/InstanceGroup/fingerprint": fingerprint +"/compute:alpha/InstanceGroup/id": id +"/compute:alpha/InstanceGroup/kind": kind +"/compute:alpha/InstanceGroup/name": name +"/compute:alpha/InstanceGroup/namedPorts": named_ports +"/compute:alpha/InstanceGroup/namedPorts/named_port": named_port +"/compute:alpha/InstanceGroup/network": network +"/compute:alpha/InstanceGroup/region": region +"/compute:alpha/InstanceGroup/selfLink": self_link +"/compute:alpha/InstanceGroup/size": size +"/compute:alpha/InstanceGroup/subnetwork": subnetwork +"/compute:alpha/InstanceGroup/zone": zone +"/compute:alpha/InstanceGroupAggregatedList": instance_group_aggregated_list +"/compute:alpha/InstanceGroupAggregatedList/id": id +"/compute:alpha/InstanceGroupAggregatedList/items": items +"/compute:alpha/InstanceGroupAggregatedList/items/item": item +"/compute:alpha/InstanceGroupAggregatedList/kind": kind +"/compute:alpha/InstanceGroupAggregatedList/nextPageToken": next_page_token +"/compute:alpha/InstanceGroupAggregatedList/selfLink": self_link +"/compute:alpha/InstanceGroupAggregatedList/warning": warning +"/compute:alpha/InstanceGroupAggregatedList/warning/code": code +"/compute:alpha/InstanceGroupAggregatedList/warning/data": data +"/compute:alpha/InstanceGroupAggregatedList/warning/data/datum": datum +"/compute:alpha/InstanceGroupAggregatedList/warning/data/datum/key": key +"/compute:alpha/InstanceGroupAggregatedList/warning/data/datum/value": value +"/compute:alpha/InstanceGroupAggregatedList/warning/message": message +"/compute:alpha/InstanceGroupList": instance_group_list +"/compute:alpha/InstanceGroupList/id": id +"/compute:alpha/InstanceGroupList/items": items +"/compute:alpha/InstanceGroupList/items/item": item +"/compute:alpha/InstanceGroupList/kind": kind +"/compute:alpha/InstanceGroupList/nextPageToken": next_page_token +"/compute:alpha/InstanceGroupList/selfLink": self_link +"/compute:alpha/InstanceGroupList/warning": warning +"/compute:alpha/InstanceGroupList/warning/code": code +"/compute:alpha/InstanceGroupList/warning/data": data +"/compute:alpha/InstanceGroupList/warning/data/datum": datum +"/compute:alpha/InstanceGroupList/warning/data/datum/key": key +"/compute:alpha/InstanceGroupList/warning/data/datum/value": value +"/compute:alpha/InstanceGroupList/warning/message": message +"/compute:alpha/InstanceGroupManager": instance_group_manager +"/compute:alpha/InstanceGroupManager/activities": activities +"/compute:alpha/InstanceGroupManager/autoHealingPolicies": auto_healing_policies +"/compute:alpha/InstanceGroupManager/autoHealingPolicies/auto_healing_policy": auto_healing_policy +"/compute:alpha/InstanceGroupManager/baseInstanceName": base_instance_name +"/compute:alpha/InstanceGroupManager/creationTimestamp": creation_timestamp +"/compute:alpha/InstanceGroupManager/currentActions": current_actions +"/compute:alpha/InstanceGroupManager/description": description +"/compute:alpha/InstanceGroupManager/distributionPolicy": distribution_policy +"/compute:alpha/InstanceGroupManager/failoverAction": failover_action +"/compute:alpha/InstanceGroupManager/fingerprint": fingerprint +"/compute:alpha/InstanceGroupManager/id": id +"/compute:alpha/InstanceGroupManager/instanceGroup": instance_group +"/compute:alpha/InstanceGroupManager/instanceTemplate": instance_template +"/compute:alpha/InstanceGroupManager/kind": kind +"/compute:alpha/InstanceGroupManager/name": name +"/compute:alpha/InstanceGroupManager/namedPorts": named_ports +"/compute:alpha/InstanceGroupManager/namedPorts/named_port": named_port +"/compute:alpha/InstanceGroupManager/pendingActions": pending_actions +"/compute:alpha/InstanceGroupManager/region": region +"/compute:alpha/InstanceGroupManager/selfLink": self_link +"/compute:alpha/InstanceGroupManager/serviceAccount": service_account +"/compute:alpha/InstanceGroupManager/statefulPolicy": stateful_policy +"/compute:alpha/InstanceGroupManager/targetPools": target_pools +"/compute:alpha/InstanceGroupManager/targetPools/target_pool": target_pool +"/compute:alpha/InstanceGroupManager/targetSize": target_size +"/compute:alpha/InstanceGroupManager/updatePolicy": update_policy +"/compute:alpha/InstanceGroupManager/versions": versions +"/compute:alpha/InstanceGroupManager/versions/version": version +"/compute:alpha/InstanceGroupManager/zone": zone +"/compute:alpha/InstanceGroupManagerActionsSummary": instance_group_manager_actions_summary +"/compute:alpha/InstanceGroupManagerActionsSummary/abandoning": abandoning +"/compute:alpha/InstanceGroupManagerActionsSummary/creating": creating +"/compute:alpha/InstanceGroupManagerActionsSummary/creatingWithoutRetries": creating_without_retries +"/compute:alpha/InstanceGroupManagerActionsSummary/deleting": deleting +"/compute:alpha/InstanceGroupManagerActionsSummary/none": none +"/compute:alpha/InstanceGroupManagerActionsSummary/recreating": recreating +"/compute:alpha/InstanceGroupManagerActionsSummary/refreshing": refreshing +"/compute:alpha/InstanceGroupManagerActionsSummary/restarting": restarting +"/compute:alpha/InstanceGroupManagerActionsSummary/verifying": verifying +"/compute:alpha/InstanceGroupManagerActivities": instance_group_manager_activities +"/compute:alpha/InstanceGroupManagerActivities/autohealing": autohealing +"/compute:alpha/InstanceGroupManagerActivities/autohealingHealthCheckBased": autohealing_health_check_based +"/compute:alpha/InstanceGroupManagerActivities/autoscalingDown": autoscaling_down +"/compute:alpha/InstanceGroupManagerActivities/autoscalingUp": autoscaling_up +"/compute:alpha/InstanceGroupManagerActivities/creatingInstances": creating_instances +"/compute:alpha/InstanceGroupManagerActivities/deletingInstances": deleting_instances +"/compute:alpha/InstanceGroupManagerActivities/recreatingInstances": recreating_instances +"/compute:alpha/InstanceGroupManagerAggregatedList": instance_group_manager_aggregated_list +"/compute:alpha/InstanceGroupManagerAggregatedList/id": id +"/compute:alpha/InstanceGroupManagerAggregatedList/items": items +"/compute:alpha/InstanceGroupManagerAggregatedList/items/item": item +"/compute:alpha/InstanceGroupManagerAggregatedList/kind": kind +"/compute:alpha/InstanceGroupManagerAggregatedList/nextPageToken": next_page_token +"/compute:alpha/InstanceGroupManagerAggregatedList/selfLink": self_link +"/compute:alpha/InstanceGroupManagerAggregatedList/warning": warning +"/compute:alpha/InstanceGroupManagerAggregatedList/warning/code": code +"/compute:alpha/InstanceGroupManagerAggregatedList/warning/data": data +"/compute:alpha/InstanceGroupManagerAggregatedList/warning/data/datum": datum +"/compute:alpha/InstanceGroupManagerAggregatedList/warning/data/datum/key": key +"/compute:alpha/InstanceGroupManagerAggregatedList/warning/data/datum/value": value +"/compute:alpha/InstanceGroupManagerAggregatedList/warning/message": message +"/compute:alpha/InstanceGroupManagerAutoHealingPolicy": instance_group_manager_auto_healing_policy +"/compute:alpha/InstanceGroupManagerAutoHealingPolicy/healthCheck": health_check +"/compute:alpha/InstanceGroupManagerAutoHealingPolicy/initialDelaySec": initial_delay_sec +"/compute:alpha/InstanceGroupManagerAutoHealingPolicy/maxUnavailable": max_unavailable +"/compute:alpha/InstanceGroupManagerList": instance_group_manager_list +"/compute:alpha/InstanceGroupManagerList/id": id +"/compute:alpha/InstanceGroupManagerList/items": items +"/compute:alpha/InstanceGroupManagerList/items/item": item +"/compute:alpha/InstanceGroupManagerList/kind": kind +"/compute:alpha/InstanceGroupManagerList/nextPageToken": next_page_token +"/compute:alpha/InstanceGroupManagerList/selfLink": self_link +"/compute:alpha/InstanceGroupManagerList/warning": warning +"/compute:alpha/InstanceGroupManagerList/warning/code": code +"/compute:alpha/InstanceGroupManagerList/warning/data": data +"/compute:alpha/InstanceGroupManagerList/warning/data/datum": datum +"/compute:alpha/InstanceGroupManagerList/warning/data/datum/key": key +"/compute:alpha/InstanceGroupManagerList/warning/data/datum/value": value +"/compute:alpha/InstanceGroupManagerList/warning/message": message +"/compute:alpha/InstanceGroupManagerPendingActionsSummary": instance_group_manager_pending_actions_summary +"/compute:alpha/InstanceGroupManagerPendingActionsSummary/creating": creating +"/compute:alpha/InstanceGroupManagerPendingActionsSummary/deleting": deleting +"/compute:alpha/InstanceGroupManagerPendingActionsSummary/recreating": recreating +"/compute:alpha/InstanceGroupManagerPendingActionsSummary/restarting": restarting +"/compute:alpha/InstanceGroupManagerStatefulPolicy": instance_group_manager_stateful_policy +"/compute:alpha/InstanceGroupManagerStatefulPolicy/preservedDisks": preserved_disks +"/compute:alpha/InstanceGroupManagerStatefulPolicy/preservedDisks/preserved_disk": preserved_disk +"/compute:alpha/InstanceGroupManagerStatefulPolicyDiskPolicy": instance_group_manager_stateful_policy_disk_policy +"/compute:alpha/InstanceGroupManagerStatefulPolicyDiskPolicy/deviceName": device_name +"/compute:alpha/InstanceGroupManagerUpdatePolicy": instance_group_manager_update_policy +"/compute:alpha/InstanceGroupManagerUpdatePolicy/maxSurge": max_surge +"/compute:alpha/InstanceGroupManagerUpdatePolicy/maxUnavailable": max_unavailable +"/compute:alpha/InstanceGroupManagerUpdatePolicy/minReadySec": min_ready_sec +"/compute:alpha/InstanceGroupManagerUpdatePolicy/minimalAction": minimal_action +"/compute:alpha/InstanceGroupManagerUpdatePolicy/type": type +"/compute:alpha/InstanceGroupManagerVersion": instance_group_manager_version +"/compute:alpha/InstanceGroupManagerVersion/instanceTemplate": instance_template +"/compute:alpha/InstanceGroupManagerVersion/name": name +"/compute:alpha/InstanceGroupManagerVersion/tag": tag +"/compute:alpha/InstanceGroupManagerVersion/targetSize": target_size +"/compute:alpha/InstanceGroupManagersAbandonInstancesRequest": instance_group_managers_abandon_instances_request +"/compute:alpha/InstanceGroupManagersAbandonInstancesRequest/instances": instances +"/compute:alpha/InstanceGroupManagersAbandonInstancesRequest/instances/instance": instance +"/compute:alpha/InstanceGroupManagersApplyUpdatesRequest": instance_group_managers_apply_updates_request +"/compute:alpha/InstanceGroupManagersApplyUpdatesRequest/instances": instances +"/compute:alpha/InstanceGroupManagersApplyUpdatesRequest/instances/instance": instance +"/compute:alpha/InstanceGroupManagersApplyUpdatesRequest/maximalAction": maximal_action +"/compute:alpha/InstanceGroupManagersApplyUpdatesRequest/minimalAction": minimal_action +"/compute:alpha/InstanceGroupManagersDeleteInstancesRequest": instance_group_managers_delete_instances_request +"/compute:alpha/InstanceGroupManagersDeleteInstancesRequest/instances": instances +"/compute:alpha/InstanceGroupManagersDeleteInstancesRequest/instances/instance": instance +"/compute:alpha/InstanceGroupManagersDeletePerInstanceConfigsReq": instance_group_managers_delete_per_instance_configs_req +"/compute:alpha/InstanceGroupManagersDeletePerInstanceConfigsReq/instances": instances +"/compute:alpha/InstanceGroupManagersDeletePerInstanceConfigsReq/instances/instance": instance +"/compute:alpha/InstanceGroupManagersListManagedInstancesResponse": instance_group_managers_list_managed_instances_response +"/compute:alpha/InstanceGroupManagersListManagedInstancesResponse/managedInstances": managed_instances +"/compute:alpha/InstanceGroupManagersListManagedInstancesResponse/managedInstances/managed_instance": managed_instance +"/compute:alpha/InstanceGroupManagersListManagedInstancesResponse/nextPageToken": next_page_token +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp": instance_group_managers_list_per_instance_configs_resp +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/items": items +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/items/item": item +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/nextPageToken": next_page_token +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/warning": warning +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/warning/code": code +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/warning/data": data +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/warning/data/datum": datum +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/warning/data/datum/key": key +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/warning/data/datum/value": value +"/compute:alpha/InstanceGroupManagersListPerInstanceConfigsResp/warning/message": message +"/compute:alpha/InstanceGroupManagersRecreateInstancesRequest": instance_group_managers_recreate_instances_request +"/compute:alpha/InstanceGroupManagersRecreateInstancesRequest/instances": instances +"/compute:alpha/InstanceGroupManagersRecreateInstancesRequest/instances/instance": instance +"/compute:alpha/InstanceGroupManagersResizeAdvancedRequest": instance_group_managers_resize_advanced_request +"/compute:alpha/InstanceGroupManagersResizeAdvancedRequest/noCreationRetries": no_creation_retries +"/compute:alpha/InstanceGroupManagersResizeAdvancedRequest/targetSize": target_size +"/compute:alpha/InstanceGroupManagersScopedList": instance_group_managers_scoped_list +"/compute:alpha/InstanceGroupManagersScopedList/instanceGroupManagers": instance_group_managers +"/compute:alpha/InstanceGroupManagersScopedList/instanceGroupManagers/instance_group_manager": instance_group_manager +"/compute:alpha/InstanceGroupManagersScopedList/warning": warning +"/compute:alpha/InstanceGroupManagersScopedList/warning/code": code +"/compute:alpha/InstanceGroupManagersScopedList/warning/data": data +"/compute:alpha/InstanceGroupManagersScopedList/warning/data/datum": datum +"/compute:alpha/InstanceGroupManagersScopedList/warning/data/datum/key": key +"/compute:alpha/InstanceGroupManagersScopedList/warning/data/datum/value": value +"/compute:alpha/InstanceGroupManagersScopedList/warning/message": message +"/compute:alpha/InstanceGroupManagersSetAutoHealingRequest": instance_group_managers_set_auto_healing_request +"/compute:alpha/InstanceGroupManagersSetAutoHealingRequest/autoHealingPolicies": auto_healing_policies +"/compute:alpha/InstanceGroupManagersSetAutoHealingRequest/autoHealingPolicies/auto_healing_policy": auto_healing_policy +"/compute:alpha/InstanceGroupManagersSetInstanceTemplateRequest": instance_group_managers_set_instance_template_request +"/compute:alpha/InstanceGroupManagersSetInstanceTemplateRequest/instanceTemplate": instance_template +"/compute:alpha/InstanceGroupManagersSetTargetPoolsRequest": instance_group_managers_set_target_pools_request +"/compute:alpha/InstanceGroupManagersSetTargetPoolsRequest/fingerprint": fingerprint +"/compute:alpha/InstanceGroupManagersSetTargetPoolsRequest/targetPools": target_pools +"/compute:alpha/InstanceGroupManagersSetTargetPoolsRequest/targetPools/target_pool": target_pool +"/compute:alpha/InstanceGroupManagersUpdatePerInstanceConfigsReq": instance_group_managers_update_per_instance_configs_req +"/compute:alpha/InstanceGroupManagersUpdatePerInstanceConfigsReq/perInstanceConfigs": per_instance_configs +"/compute:alpha/InstanceGroupManagersUpdatePerInstanceConfigsReq/perInstanceConfigs/per_instance_config": per_instance_config +"/compute:alpha/InstanceGroupsAddInstancesRequest": instance_groups_add_instances_request +"/compute:alpha/InstanceGroupsAddInstancesRequest/instances": instances +"/compute:alpha/InstanceGroupsAddInstancesRequest/instances/instance": instance +"/compute:alpha/InstanceGroupsListInstances": instance_groups_list_instances +"/compute:alpha/InstanceGroupsListInstances/id": id +"/compute:alpha/InstanceGroupsListInstances/items": items +"/compute:alpha/InstanceGroupsListInstances/items/item": item +"/compute:alpha/InstanceGroupsListInstances/kind": kind +"/compute:alpha/InstanceGroupsListInstances/nextPageToken": next_page_token +"/compute:alpha/InstanceGroupsListInstances/selfLink": self_link +"/compute:alpha/InstanceGroupsListInstances/warning": warning +"/compute:alpha/InstanceGroupsListInstances/warning/code": code +"/compute:alpha/InstanceGroupsListInstances/warning/data": data +"/compute:alpha/InstanceGroupsListInstances/warning/data/datum": datum +"/compute:alpha/InstanceGroupsListInstances/warning/data/datum/key": key +"/compute:alpha/InstanceGroupsListInstances/warning/data/datum/value": value +"/compute:alpha/InstanceGroupsListInstances/warning/message": message +"/compute:alpha/InstanceGroupsListInstancesRequest": instance_groups_list_instances_request +"/compute:alpha/InstanceGroupsListInstancesRequest/instanceState": instance_state +"/compute:alpha/InstanceGroupsRemoveInstancesRequest": instance_groups_remove_instances_request +"/compute:alpha/InstanceGroupsRemoveInstancesRequest/instances": instances +"/compute:alpha/InstanceGroupsRemoveInstancesRequest/instances/instance": instance +"/compute:alpha/InstanceGroupsScopedList": instance_groups_scoped_list +"/compute:alpha/InstanceGroupsScopedList/instanceGroups": instance_groups +"/compute:alpha/InstanceGroupsScopedList/instanceGroups/instance_group": instance_group +"/compute:alpha/InstanceGroupsScopedList/warning": warning +"/compute:alpha/InstanceGroupsScopedList/warning/code": code +"/compute:alpha/InstanceGroupsScopedList/warning/data": data +"/compute:alpha/InstanceGroupsScopedList/warning/data/datum": datum +"/compute:alpha/InstanceGroupsScopedList/warning/data/datum/key": key +"/compute:alpha/InstanceGroupsScopedList/warning/data/datum/value": value +"/compute:alpha/InstanceGroupsScopedList/warning/message": message +"/compute:alpha/InstanceGroupsSetNamedPortsRequest": instance_groups_set_named_ports_request +"/compute:alpha/InstanceGroupsSetNamedPortsRequest/fingerprint": fingerprint +"/compute:alpha/InstanceGroupsSetNamedPortsRequest/namedPorts": named_ports +"/compute:alpha/InstanceGroupsSetNamedPortsRequest/namedPorts/named_port": named_port +"/compute:alpha/InstanceList": instance_list +"/compute:alpha/InstanceList/id": id +"/compute:alpha/InstanceList/items": items +"/compute:alpha/InstanceList/items/item": item +"/compute:alpha/InstanceList/kind": kind +"/compute:alpha/InstanceList/nextPageToken": next_page_token +"/compute:alpha/InstanceList/selfLink": self_link +"/compute:alpha/InstanceList/warning": warning +"/compute:alpha/InstanceList/warning/code": code +"/compute:alpha/InstanceList/warning/data": data +"/compute:alpha/InstanceList/warning/data/datum": datum +"/compute:alpha/InstanceList/warning/data/datum/key": key +"/compute:alpha/InstanceList/warning/data/datum/value": value +"/compute:alpha/InstanceList/warning/message": message +"/compute:alpha/InstanceListReferrers": instance_list_referrers +"/compute:alpha/InstanceListReferrers/id": id +"/compute:alpha/InstanceListReferrers/items": items +"/compute:alpha/InstanceListReferrers/items/item": item +"/compute:alpha/InstanceListReferrers/kind": kind +"/compute:alpha/InstanceListReferrers/nextPageToken": next_page_token +"/compute:alpha/InstanceListReferrers/selfLink": self_link +"/compute:alpha/InstanceListReferrers/warning": warning +"/compute:alpha/InstanceListReferrers/warning/code": code +"/compute:alpha/InstanceListReferrers/warning/data": data +"/compute:alpha/InstanceListReferrers/warning/data/datum": datum +"/compute:alpha/InstanceListReferrers/warning/data/datum/key": key +"/compute:alpha/InstanceListReferrers/warning/data/datum/value": value +"/compute:alpha/InstanceListReferrers/warning/message": message +"/compute:alpha/InstanceMoveRequest": instance_move_request +"/compute:alpha/InstanceMoveRequest/destinationZone": destination_zone +"/compute:alpha/InstanceMoveRequest/targetInstance": target_instance +"/compute:alpha/InstanceProperties": instance_properties +"/compute:alpha/InstanceProperties/canIpForward": can_ip_forward +"/compute:alpha/InstanceProperties/description": description +"/compute:alpha/InstanceProperties/disks": disks +"/compute:alpha/InstanceProperties/disks/disk": disk +"/compute:alpha/InstanceProperties/guestAccelerators": guest_accelerators +"/compute:alpha/InstanceProperties/guestAccelerators/guest_accelerator": guest_accelerator +"/compute:alpha/InstanceProperties/labels": labels +"/compute:alpha/InstanceProperties/labels/label": label +"/compute:alpha/InstanceProperties/machineType": machine_type +"/compute:alpha/InstanceProperties/metadata": metadata +"/compute:alpha/InstanceProperties/minCpuPlatform": min_cpu_platform +"/compute:alpha/InstanceProperties/networkInterfaces": network_interfaces +"/compute:alpha/InstanceProperties/networkInterfaces/network_interface": network_interface +"/compute:alpha/InstanceProperties/scheduling": scheduling +"/compute:alpha/InstanceProperties/serviceAccounts": service_accounts +"/compute:alpha/InstanceProperties/serviceAccounts/service_account": service_account +"/compute:alpha/InstanceProperties/tags": tags +"/compute:alpha/InstanceReference": instance_reference +"/compute:alpha/InstanceReference/instance": instance +"/compute:alpha/InstanceTemplate": instance_template +"/compute:alpha/InstanceTemplate/creationTimestamp": creation_timestamp +"/compute:alpha/InstanceTemplate/description": description +"/compute:alpha/InstanceTemplate/id": id +"/compute:alpha/InstanceTemplate/kind": kind +"/compute:alpha/InstanceTemplate/name": name +"/compute:alpha/InstanceTemplate/properties": properties +"/compute:alpha/InstanceTemplate/selfLink": self_link +"/compute:alpha/InstanceTemplate/sourceInstance": source_instance +"/compute:alpha/InstanceTemplateList": instance_template_list +"/compute:alpha/InstanceTemplateList/id": id +"/compute:alpha/InstanceTemplateList/items": items +"/compute:alpha/InstanceTemplateList/items/item": item +"/compute:alpha/InstanceTemplateList/kind": kind +"/compute:alpha/InstanceTemplateList/nextPageToken": next_page_token +"/compute:alpha/InstanceTemplateList/selfLink": self_link +"/compute:alpha/InstanceTemplateList/warning": warning +"/compute:alpha/InstanceTemplateList/warning/code": code +"/compute:alpha/InstanceTemplateList/warning/data": data +"/compute:alpha/InstanceTemplateList/warning/data/datum": datum +"/compute:alpha/InstanceTemplateList/warning/data/datum/key": key +"/compute:alpha/InstanceTemplateList/warning/data/datum/value": value +"/compute:alpha/InstanceTemplateList/warning/message": message +"/compute:alpha/InstanceWithNamedPorts": instance_with_named_ports +"/compute:alpha/InstanceWithNamedPorts/instance": instance +"/compute:alpha/InstanceWithNamedPorts/namedPorts": named_ports +"/compute:alpha/InstanceWithNamedPorts/namedPorts/named_port": named_port +"/compute:alpha/InstanceWithNamedPorts/status": status +"/compute:alpha/InstancesScopedList": instances_scoped_list +"/compute:alpha/InstancesScopedList/instances": instances +"/compute:alpha/InstancesScopedList/instances/instance": instance +"/compute:alpha/InstancesScopedList/warning": warning +"/compute:alpha/InstancesScopedList/warning/code": code +"/compute:alpha/InstancesScopedList/warning/data": data +"/compute:alpha/InstancesScopedList/warning/data/datum": datum +"/compute:alpha/InstancesScopedList/warning/data/datum/key": key +"/compute:alpha/InstancesScopedList/warning/data/datum/value": value +"/compute:alpha/InstancesScopedList/warning/message": message +"/compute:alpha/InstancesSetLabelsRequest": instances_set_labels_request +"/compute:alpha/InstancesSetLabelsRequest/labelFingerprint": label_fingerprint +"/compute:alpha/InstancesSetLabelsRequest/labels": labels +"/compute:alpha/InstancesSetLabelsRequest/labels/label": label +"/compute:alpha/InstancesSetMachineResourcesRequest": instances_set_machine_resources_request +"/compute:alpha/InstancesSetMachineResourcesRequest/guestAccelerators": guest_accelerators +"/compute:alpha/InstancesSetMachineResourcesRequest/guestAccelerators/guest_accelerator": guest_accelerator +"/compute:alpha/InstancesSetMachineTypeRequest": instances_set_machine_type_request +"/compute:alpha/InstancesSetMachineTypeRequest/machineType": machine_type +"/compute:alpha/InstancesSetMinCpuPlatformRequest": instances_set_min_cpu_platform_request +"/compute:alpha/InstancesSetMinCpuPlatformRequest/minCpuPlatform": min_cpu_platform +"/compute:alpha/InstancesSetServiceAccountRequest": instances_set_service_account_request +"/compute:alpha/InstancesSetServiceAccountRequest/email": email +"/compute:alpha/InstancesSetServiceAccountRequest/scopes": scopes +"/compute:alpha/InstancesSetServiceAccountRequest/scopes/scope": scope +"/compute:alpha/InstancesStartWithEncryptionKeyRequest": instances_start_with_encryption_key_request +"/compute:alpha/InstancesStartWithEncryptionKeyRequest/disks": disks +"/compute:alpha/InstancesStartWithEncryptionKeyRequest/disks/disk": disk +"/compute:alpha/InstancesStartWithEncryptionKeyRequest/instanceEncryptionKey": instance_encryption_key +"/compute:alpha/Interconnect": interconnect +"/compute:alpha/Interconnect/adminEnabled": admin_enabled +"/compute:alpha/Interconnect/circuitInfos": circuit_infos +"/compute:alpha/Interconnect/circuitInfos/circuit_info": circuit_info +"/compute:alpha/Interconnect/connectionAuthorization": connection_authorization +"/compute:alpha/Interconnect/creationTimestamp": creation_timestamp +"/compute:alpha/Interconnect/customerName": customer_name +"/compute:alpha/Interconnect/description": description +"/compute:alpha/Interconnect/expectedOutages": expected_outages +"/compute:alpha/Interconnect/expectedOutages/expected_outage": expected_outage +"/compute:alpha/Interconnect/googleIpAddress": google_ip_address +"/compute:alpha/Interconnect/googleReferenceId": google_reference_id +"/compute:alpha/Interconnect/id": id +"/compute:alpha/Interconnect/interconnectAttachments": interconnect_attachments +"/compute:alpha/Interconnect/interconnectAttachments/interconnect_attachment": interconnect_attachment +"/compute:alpha/Interconnect/interconnectType": interconnect_type +"/compute:alpha/Interconnect/kind": kind +"/compute:alpha/Interconnect/linkType": link_type +"/compute:alpha/Interconnect/location": location +"/compute:alpha/Interconnect/name": name +"/compute:alpha/Interconnect/nocContactEmail": noc_contact_email +"/compute:alpha/Interconnect/operationalStatus": operational_status +"/compute:alpha/Interconnect/peerIpAddress": peer_ip_address +"/compute:alpha/Interconnect/provisionedLinkCount": provisioned_link_count +"/compute:alpha/Interconnect/requestedLinkCount": requested_link_count +"/compute:alpha/Interconnect/selfLink": self_link +"/compute:alpha/InterconnectAttachment": interconnect_attachment +"/compute:alpha/InterconnectAttachment/cloudRouterIpAddress": cloud_router_ip_address +"/compute:alpha/InterconnectAttachment/creationTimestamp": creation_timestamp +"/compute:alpha/InterconnectAttachment/customerRouterIpAddress": customer_router_ip_address +"/compute:alpha/InterconnectAttachment/description": description +"/compute:alpha/InterconnectAttachment/googleReferenceId": google_reference_id +"/compute:alpha/InterconnectAttachment/id": id +"/compute:alpha/InterconnectAttachment/interconnect": interconnect +"/compute:alpha/InterconnectAttachment/kind": kind +"/compute:alpha/InterconnectAttachment/name": name +"/compute:alpha/InterconnectAttachment/operationalStatus": operational_status +"/compute:alpha/InterconnectAttachment/privateInterconnectInfo": private_interconnect_info +"/compute:alpha/InterconnectAttachment/region": region +"/compute:alpha/InterconnectAttachment/router": router +"/compute:alpha/InterconnectAttachment/selfLink": self_link +"/compute:alpha/InterconnectAttachmentAggregatedList": interconnect_attachment_aggregated_list +"/compute:alpha/InterconnectAttachmentAggregatedList/id": id +"/compute:alpha/InterconnectAttachmentAggregatedList/items": items +"/compute:alpha/InterconnectAttachmentAggregatedList/items/item": item +"/compute:alpha/InterconnectAttachmentAggregatedList/kind": kind +"/compute:alpha/InterconnectAttachmentAggregatedList/nextPageToken": next_page_token +"/compute:alpha/InterconnectAttachmentAggregatedList/selfLink": self_link +"/compute:alpha/InterconnectAttachmentAggregatedList/warning": warning +"/compute:alpha/InterconnectAttachmentAggregatedList/warning/code": code +"/compute:alpha/InterconnectAttachmentAggregatedList/warning/data": data +"/compute:alpha/InterconnectAttachmentAggregatedList/warning/data/datum": datum +"/compute:alpha/InterconnectAttachmentAggregatedList/warning/data/datum/key": key +"/compute:alpha/InterconnectAttachmentAggregatedList/warning/data/datum/value": value +"/compute:alpha/InterconnectAttachmentAggregatedList/warning/message": message +"/compute:alpha/InterconnectAttachmentList": interconnect_attachment_list +"/compute:alpha/InterconnectAttachmentList/id": id +"/compute:alpha/InterconnectAttachmentList/items": items +"/compute:alpha/InterconnectAttachmentList/items/item": item +"/compute:alpha/InterconnectAttachmentList/kind": kind +"/compute:alpha/InterconnectAttachmentList/nextPageToken": next_page_token +"/compute:alpha/InterconnectAttachmentList/selfLink": self_link +"/compute:alpha/InterconnectAttachmentList/warning": warning +"/compute:alpha/InterconnectAttachmentList/warning/code": code +"/compute:alpha/InterconnectAttachmentList/warning/data": data +"/compute:alpha/InterconnectAttachmentList/warning/data/datum": datum +"/compute:alpha/InterconnectAttachmentList/warning/data/datum/key": key +"/compute:alpha/InterconnectAttachmentList/warning/data/datum/value": value +"/compute:alpha/InterconnectAttachmentList/warning/message": message +"/compute:alpha/InterconnectAttachmentPrivateInfo": interconnect_attachment_private_info +"/compute:alpha/InterconnectAttachmentPrivateInfo/tag8021q": tag8021q +"/compute:alpha/InterconnectAttachmentsScopedList": interconnect_attachments_scoped_list +"/compute:alpha/InterconnectAttachmentsScopedList/interconnectAttachments": interconnect_attachments +"/compute:alpha/InterconnectAttachmentsScopedList/interconnectAttachments/interconnect_attachment": interconnect_attachment +"/compute:alpha/InterconnectAttachmentsScopedList/warning": warning +"/compute:alpha/InterconnectAttachmentsScopedList/warning/code": code +"/compute:alpha/InterconnectAttachmentsScopedList/warning/data": data +"/compute:alpha/InterconnectAttachmentsScopedList/warning/data/datum": datum +"/compute:alpha/InterconnectAttachmentsScopedList/warning/data/datum/key": key +"/compute:alpha/InterconnectAttachmentsScopedList/warning/data/datum/value": value +"/compute:alpha/InterconnectAttachmentsScopedList/warning/message": message +"/compute:alpha/InterconnectCircuitInfo": interconnect_circuit_info +"/compute:alpha/InterconnectCircuitInfo/customerDemarcId": customer_demarc_id +"/compute:alpha/InterconnectCircuitInfo/googleCircuitId": google_circuit_id +"/compute:alpha/InterconnectCircuitInfo/googleDemarcId": google_demarc_id +"/compute:alpha/InterconnectList": interconnect_list +"/compute:alpha/InterconnectList/id": id +"/compute:alpha/InterconnectList/items": items +"/compute:alpha/InterconnectList/items/item": item +"/compute:alpha/InterconnectList/kind": kind +"/compute:alpha/InterconnectList/nextPageToken": next_page_token +"/compute:alpha/InterconnectList/selfLink": self_link +"/compute:alpha/InterconnectList/warning": warning +"/compute:alpha/InterconnectList/warning/code": code +"/compute:alpha/InterconnectList/warning/data": data +"/compute:alpha/InterconnectList/warning/data/datum": datum +"/compute:alpha/InterconnectList/warning/data/datum/key": key +"/compute:alpha/InterconnectList/warning/data/datum/value": value +"/compute:alpha/InterconnectList/warning/message": message +"/compute:alpha/InterconnectLocation": interconnect_location +"/compute:alpha/InterconnectLocation/address": address +"/compute:alpha/InterconnectLocation/availabilityZone": availability_zone +"/compute:alpha/InterconnectLocation/city": city +"/compute:alpha/InterconnectLocation/continent": continent +"/compute:alpha/InterconnectLocation/creationTimestamp": creation_timestamp +"/compute:alpha/InterconnectLocation/description": description +"/compute:alpha/InterconnectLocation/facilityProvider": facility_provider +"/compute:alpha/InterconnectLocation/facilityProviderFacilityId": facility_provider_facility_id +"/compute:alpha/InterconnectLocation/id": id +"/compute:alpha/InterconnectLocation/kind": kind +"/compute:alpha/InterconnectLocation/name": name +"/compute:alpha/InterconnectLocation/peeringdbFacilityId": peeringdb_facility_id +"/compute:alpha/InterconnectLocation/regionInfos": region_infos +"/compute:alpha/InterconnectLocation/regionInfos/region_info": region_info +"/compute:alpha/InterconnectLocation/selfLink": self_link +"/compute:alpha/InterconnectLocationList": interconnect_location_list +"/compute:alpha/InterconnectLocationList/id": id +"/compute:alpha/InterconnectLocationList/items": items +"/compute:alpha/InterconnectLocationList/items/item": item +"/compute:alpha/InterconnectLocationList/kind": kind +"/compute:alpha/InterconnectLocationList/nextPageToken": next_page_token +"/compute:alpha/InterconnectLocationList/selfLink": self_link +"/compute:alpha/InterconnectLocationList/warning": warning +"/compute:alpha/InterconnectLocationList/warning/code": code +"/compute:alpha/InterconnectLocationList/warning/data": data +"/compute:alpha/InterconnectLocationList/warning/data/datum": datum +"/compute:alpha/InterconnectLocationList/warning/data/datum/key": key +"/compute:alpha/InterconnectLocationList/warning/data/datum/value": value +"/compute:alpha/InterconnectLocationList/warning/message": message +"/compute:alpha/InterconnectLocationRegionInfo": interconnect_location_region_info +"/compute:alpha/InterconnectLocationRegionInfo/expectedRttMs": expected_rtt_ms +"/compute:alpha/InterconnectLocationRegionInfo/locationPresence": location_presence +"/compute:alpha/InterconnectLocationRegionInfo/region": region +"/compute:alpha/InterconnectLocationRegionInfo/regionKey": region_key +"/compute:alpha/InterconnectOutageNotification": interconnect_outage_notification +"/compute:alpha/InterconnectOutageNotification/affectedCircuits": affected_circuits +"/compute:alpha/InterconnectOutageNotification/affectedCircuits/affected_circuit": affected_circuit +"/compute:alpha/InterconnectOutageNotification/description": description +"/compute:alpha/InterconnectOutageNotification/endTime": end_time +"/compute:alpha/InterconnectOutageNotification/issueType": issue_type +"/compute:alpha/InterconnectOutageNotification/name": name +"/compute:alpha/InterconnectOutageNotification/source": source +"/compute:alpha/InterconnectOutageNotification/startTime": start_time +"/compute:alpha/InterconnectOutageNotification/state": state +"/compute:alpha/InternalIpOwner": internal_ip_owner +"/compute:alpha/InternalIpOwner/ipCidrRange": ip_cidr_range +"/compute:alpha/InternalIpOwner/owners": owners +"/compute:alpha/InternalIpOwner/owners/owner": owner +"/compute:alpha/InternalIpOwner/systemOwned": system_owned +"/compute:alpha/IpOwnerList": ip_owner_list +"/compute:alpha/IpOwnerList/id": id +"/compute:alpha/IpOwnerList/items": items +"/compute:alpha/IpOwnerList/items/item": item +"/compute:alpha/IpOwnerList/kind": kind +"/compute:alpha/IpOwnerList/nextPageToken": next_page_token +"/compute:alpha/IpOwnerList/selfLink": self_link +"/compute:alpha/IpOwnerList/warning": warning +"/compute:alpha/IpOwnerList/warning/code": code +"/compute:alpha/IpOwnerList/warning/data": data +"/compute:alpha/IpOwnerList/warning/data/datum": datum +"/compute:alpha/IpOwnerList/warning/data/datum/key": key +"/compute:alpha/IpOwnerList/warning/data/datum/value": value +"/compute:alpha/IpOwnerList/warning/message": message +"/compute:alpha/License": license +"/compute:alpha/License/chargesUseFee": charges_use_fee +"/compute:alpha/License/creationTimestamp": creation_timestamp +"/compute:alpha/License/description": description +"/compute:alpha/License/id": id +"/compute:alpha/License/kind": kind +"/compute:alpha/License/licenseCode": license_code +"/compute:alpha/License/name": name +"/compute:alpha/License/resourceRequirements": resource_requirements +"/compute:alpha/License/selfLink": self_link +"/compute:alpha/License/transferable": transferable +"/compute:alpha/LicenseCode": license_code +"/compute:alpha/LicenseCode/creationTimestamp": creation_timestamp +"/compute:alpha/LicenseCode/description": description +"/compute:alpha/LicenseCode/id": id +"/compute:alpha/LicenseCode/kind": kind +"/compute:alpha/LicenseCode/licenseAlias": license_alias +"/compute:alpha/LicenseCode/licenseAlias/license_alias": license_alias +"/compute:alpha/LicenseCode/name": name +"/compute:alpha/LicenseCode/selfLink": self_link +"/compute:alpha/LicenseCode/state": state +"/compute:alpha/LicenseCode/transferable": transferable +"/compute:alpha/LicenseCodeLicenseAlias": license_code_license_alias +"/compute:alpha/LicenseCodeLicenseAlias/description": description +"/compute:alpha/LicenseCodeLicenseAlias/selfLink": self_link +"/compute:alpha/LicenseResourceRequirements": license_resource_requirements +"/compute:alpha/LicenseResourceRequirements/minGuestCpuCount": min_guest_cpu_count +"/compute:alpha/LicenseResourceRequirements/minMemoryMb": min_memory_mb +"/compute:alpha/LicensesListResponse": licenses_list_response +"/compute:alpha/LicensesListResponse/id": id +"/compute:alpha/LicensesListResponse/items": items +"/compute:alpha/LicensesListResponse/items/item": item +"/compute:alpha/LicensesListResponse/nextPageToken": next_page_token +"/compute:alpha/LicensesListResponse/selfLink": self_link +"/compute:alpha/LicensesListResponse/warning": warning +"/compute:alpha/LicensesListResponse/warning/code": code +"/compute:alpha/LicensesListResponse/warning/data": data +"/compute:alpha/LicensesListResponse/warning/data/datum": datum +"/compute:alpha/LicensesListResponse/warning/data/datum/key": key +"/compute:alpha/LicensesListResponse/warning/data/datum/value": value +"/compute:alpha/LicensesListResponse/warning/message": message +"/compute:alpha/LogConfig": log_config +"/compute:alpha/LogConfig/cloudAudit": cloud_audit +"/compute:alpha/LogConfig/counter": counter +"/compute:alpha/LogConfig/dataAccess": data_access +"/compute:alpha/LogConfigCloudAuditOptions": log_config_cloud_audit_options +"/compute:alpha/LogConfigCloudAuditOptions/authorizationLoggingOptions": authorization_logging_options +"/compute:alpha/LogConfigCloudAuditOptions/logName": log_name +"/compute:alpha/LogConfigCounterOptions": log_config_counter_options +"/compute:alpha/LogConfigCounterOptions/field": field +"/compute:alpha/LogConfigCounterOptions/metric": metric +"/compute:alpha/LogConfigDataAccessOptions": log_config_data_access_options +"/compute:alpha/LogConfigDataAccessOptions/logMode": log_mode +"/compute:alpha/MachineType": machine_type +"/compute:alpha/MachineType/creationTimestamp": creation_timestamp +"/compute:alpha/MachineType/deprecated": deprecated +"/compute:alpha/MachineType/description": description +"/compute:alpha/MachineType/guestCpus": guest_cpus +"/compute:alpha/MachineType/id": id +"/compute:alpha/MachineType/isSharedCpu": is_shared_cpu +"/compute:alpha/MachineType/kind": kind +"/compute:alpha/MachineType/maximumPersistentDisks": maximum_persistent_disks +"/compute:alpha/MachineType/maximumPersistentDisksSizeGb": maximum_persistent_disks_size_gb +"/compute:alpha/MachineType/memoryMb": memory_mb +"/compute:alpha/MachineType/name": name +"/compute:alpha/MachineType/selfLink": self_link +"/compute:alpha/MachineType/zone": zone +"/compute:alpha/MachineTypeAggregatedList": machine_type_aggregated_list +"/compute:alpha/MachineTypeAggregatedList/id": id +"/compute:alpha/MachineTypeAggregatedList/items": items +"/compute:alpha/MachineTypeAggregatedList/items/item": item +"/compute:alpha/MachineTypeAggregatedList/kind": kind +"/compute:alpha/MachineTypeAggregatedList/nextPageToken": next_page_token +"/compute:alpha/MachineTypeAggregatedList/selfLink": self_link +"/compute:alpha/MachineTypeAggregatedList/warning": warning +"/compute:alpha/MachineTypeAggregatedList/warning/code": code +"/compute:alpha/MachineTypeAggregatedList/warning/data": data +"/compute:alpha/MachineTypeAggregatedList/warning/data/datum": datum +"/compute:alpha/MachineTypeAggregatedList/warning/data/datum/key": key +"/compute:alpha/MachineTypeAggregatedList/warning/data/datum/value": value +"/compute:alpha/MachineTypeAggregatedList/warning/message": message +"/compute:alpha/MachineTypeList": machine_type_list +"/compute:alpha/MachineTypeList/id": id +"/compute:alpha/MachineTypeList/items": items +"/compute:alpha/MachineTypeList/items/item": item +"/compute:alpha/MachineTypeList/kind": kind +"/compute:alpha/MachineTypeList/nextPageToken": next_page_token +"/compute:alpha/MachineTypeList/selfLink": self_link +"/compute:alpha/MachineTypeList/warning": warning +"/compute:alpha/MachineTypeList/warning/code": code +"/compute:alpha/MachineTypeList/warning/data": data +"/compute:alpha/MachineTypeList/warning/data/datum": datum +"/compute:alpha/MachineTypeList/warning/data/datum/key": key +"/compute:alpha/MachineTypeList/warning/data/datum/value": value +"/compute:alpha/MachineTypeList/warning/message": message +"/compute:alpha/MachineTypesScopedList": machine_types_scoped_list +"/compute:alpha/MachineTypesScopedList/machineTypes": machine_types +"/compute:alpha/MachineTypesScopedList/machineTypes/machine_type": machine_type +"/compute:alpha/MachineTypesScopedList/warning": warning +"/compute:alpha/MachineTypesScopedList/warning/code": code +"/compute:alpha/MachineTypesScopedList/warning/data": data +"/compute:alpha/MachineTypesScopedList/warning/data/datum": datum +"/compute:alpha/MachineTypesScopedList/warning/data/datum/key": key +"/compute:alpha/MachineTypesScopedList/warning/data/datum/value": value +"/compute:alpha/MachineTypesScopedList/warning/message": message +"/compute:alpha/ManagedInstance": managed_instance +"/compute:alpha/ManagedInstance/currentAction": current_action +"/compute:alpha/ManagedInstance/id": id +"/compute:alpha/ManagedInstance/instance": instance +"/compute:alpha/ManagedInstance/instanceStatus": instance_status +"/compute:alpha/ManagedInstance/instanceTemplate": instance_template +"/compute:alpha/ManagedInstance/lastAttempt": last_attempt +"/compute:alpha/ManagedInstance/override": override +"/compute:alpha/ManagedInstance/standbyMode": standby_mode +"/compute:alpha/ManagedInstance/tag": tag +"/compute:alpha/ManagedInstance/version": version +"/compute:alpha/ManagedInstanceLastAttempt": managed_instance_last_attempt +"/compute:alpha/ManagedInstanceLastAttempt/errors": errors +"/compute:alpha/ManagedInstanceLastAttempt/errors/errors": errors +"/compute:alpha/ManagedInstanceLastAttempt/errors/errors/error": error +"/compute:alpha/ManagedInstanceLastAttempt/errors/errors/error/code": code +"/compute:alpha/ManagedInstanceLastAttempt/errors/errors/error/location": location +"/compute:alpha/ManagedInstanceLastAttempt/errors/errors/error/message": message +"/compute:alpha/ManagedInstanceOverride": managed_instance_override +"/compute:alpha/ManagedInstanceOverride/disks": disks +"/compute:alpha/ManagedInstanceOverride/disks/disk": disk +"/compute:alpha/ManagedInstanceOverride/origin": origin +"/compute:alpha/ManagedInstanceOverrideDiskOverride": managed_instance_override_disk_override +"/compute:alpha/ManagedInstanceOverrideDiskOverride/deviceName": device_name +"/compute:alpha/ManagedInstanceOverrideDiskOverride/mode": mode +"/compute:alpha/ManagedInstanceOverrideDiskOverride/source": source +"/compute:alpha/ManagedInstanceVersion": managed_instance_version +"/compute:alpha/ManagedInstanceVersion/instanceTemplate": instance_template +"/compute:alpha/ManagedInstanceVersion/name": name +"/compute:alpha/Metadata": metadata +"/compute:alpha/Metadata/fingerprint": fingerprint +"/compute:alpha/Metadata/items": items +"/compute:alpha/Metadata/items/item": item +"/compute:alpha/Metadata/items/item/key": key +"/compute:alpha/Metadata/items/item/value": value +"/compute:alpha/Metadata/kind": kind +"/compute:alpha/NamedPort": named_port +"/compute:alpha/NamedPort/name": name +"/compute:alpha/NamedPort/port": port +"/compute:alpha/Network": network +"/compute:alpha/Network/IPv4Range": i_pv4_range +"/compute:alpha/Network/autoCreateSubnetworks": auto_create_subnetworks +"/compute:alpha/Network/creationTimestamp": creation_timestamp +"/compute:alpha/Network/crossVmEncryption": cross_vm_encryption +"/compute:alpha/Network/description": description +"/compute:alpha/Network/gatewayIPv4": gateway_i_pv4 +"/compute:alpha/Network/id": id +"/compute:alpha/Network/kind": kind +"/compute:alpha/Network/loadBalancerVmEncryption": load_balancer_vm_encryption +"/compute:alpha/Network/name": name +"/compute:alpha/Network/peerings": peerings +"/compute:alpha/Network/peerings/peering": peering +"/compute:alpha/Network/routingConfig": routing_config +"/compute:alpha/Network/selfLink": self_link +"/compute:alpha/Network/subnetworks": subnetworks +"/compute:alpha/Network/subnetworks/subnetwork": subnetwork +"/compute:alpha/NetworkEndpoint": network_endpoint +"/compute:alpha/NetworkEndpoint/instance": instance +"/compute:alpha/NetworkEndpoint/ipAddress": ip_address +"/compute:alpha/NetworkEndpoint/port": port +"/compute:alpha/NetworkEndpointGroup": network_endpoint_group +"/compute:alpha/NetworkEndpointGroup/creationTimestamp": creation_timestamp +"/compute:alpha/NetworkEndpointGroup/description": description +"/compute:alpha/NetworkEndpointGroup/id": id +"/compute:alpha/NetworkEndpointGroup/kind": kind +"/compute:alpha/NetworkEndpointGroup/loadBalancer": load_balancer +"/compute:alpha/NetworkEndpointGroup/name": name +"/compute:alpha/NetworkEndpointGroup/networkEndpointType": network_endpoint_type +"/compute:alpha/NetworkEndpointGroup/selfLink": self_link +"/compute:alpha/NetworkEndpointGroup/size": size +"/compute:alpha/NetworkEndpointGroup/type": type +"/compute:alpha/NetworkEndpointGroupAggregatedList": network_endpoint_group_aggregated_list +"/compute:alpha/NetworkEndpointGroupAggregatedList/id": id +"/compute:alpha/NetworkEndpointGroupAggregatedList/items": items +"/compute:alpha/NetworkEndpointGroupAggregatedList/items/item": item +"/compute:alpha/NetworkEndpointGroupAggregatedList/kind": kind +"/compute:alpha/NetworkEndpointGroupAggregatedList/nextPageToken": next_page_token +"/compute:alpha/NetworkEndpointGroupAggregatedList/selfLink": self_link +"/compute:alpha/NetworkEndpointGroupAggregatedList/warning": warning +"/compute:alpha/NetworkEndpointGroupAggregatedList/warning/code": code +"/compute:alpha/NetworkEndpointGroupAggregatedList/warning/data": data +"/compute:alpha/NetworkEndpointGroupAggregatedList/warning/data/datum": datum +"/compute:alpha/NetworkEndpointGroupAggregatedList/warning/data/datum/key": key +"/compute:alpha/NetworkEndpointGroupAggregatedList/warning/data/datum/value": value +"/compute:alpha/NetworkEndpointGroupAggregatedList/warning/message": message +"/compute:alpha/NetworkEndpointGroupLbNetworkEndpointGroup": network_endpoint_group_lb_network_endpoint_group +"/compute:alpha/NetworkEndpointGroupLbNetworkEndpointGroup/defaultPort": default_port +"/compute:alpha/NetworkEndpointGroupLbNetworkEndpointGroup/network": network +"/compute:alpha/NetworkEndpointGroupLbNetworkEndpointGroup/subnetwork": subnetwork +"/compute:alpha/NetworkEndpointGroupLbNetworkEndpointGroup/zone": zone +"/compute:alpha/NetworkEndpointGroupList": network_endpoint_group_list +"/compute:alpha/NetworkEndpointGroupList/id": id +"/compute:alpha/NetworkEndpointGroupList/items": items +"/compute:alpha/NetworkEndpointGroupList/items/item": item +"/compute:alpha/NetworkEndpointGroupList/kind": kind +"/compute:alpha/NetworkEndpointGroupList/nextPageToken": next_page_token +"/compute:alpha/NetworkEndpointGroupList/selfLink": self_link +"/compute:alpha/NetworkEndpointGroupList/warning": warning +"/compute:alpha/NetworkEndpointGroupList/warning/code": code +"/compute:alpha/NetworkEndpointGroupList/warning/data": data +"/compute:alpha/NetworkEndpointGroupList/warning/data/datum": datum +"/compute:alpha/NetworkEndpointGroupList/warning/data/datum/key": key +"/compute:alpha/NetworkEndpointGroupList/warning/data/datum/value": value +"/compute:alpha/NetworkEndpointGroupList/warning/message": message +"/compute:alpha/NetworkEndpointGroupsAttachEndpointsRequest": network_endpoint_groups_attach_endpoints_request +"/compute:alpha/NetworkEndpointGroupsAttachEndpointsRequest/networkEndpoints": network_endpoints +"/compute:alpha/NetworkEndpointGroupsAttachEndpointsRequest/networkEndpoints/network_endpoint": network_endpoint +"/compute:alpha/NetworkEndpointGroupsDetachEndpointsRequest": network_endpoint_groups_detach_endpoints_request +"/compute:alpha/NetworkEndpointGroupsDetachEndpointsRequest/networkEndpoints": network_endpoints +"/compute:alpha/NetworkEndpointGroupsDetachEndpointsRequest/networkEndpoints/network_endpoint": network_endpoint +"/compute:alpha/NetworkEndpointGroupsListEndpointsRequest": network_endpoint_groups_list_endpoints_request +"/compute:alpha/NetworkEndpointGroupsListEndpointsRequest/healthStatus": health_status +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints": network_endpoint_groups_list_network_endpoints +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/id": id +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/items": items +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/items/item": item +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/kind": kind +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/nextPageToken": next_page_token +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/warning": warning +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/warning/code": code +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/warning/data": data +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/warning/data/datum": datum +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/warning/data/datum/key": key +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/warning/data/datum/value": value +"/compute:alpha/NetworkEndpointGroupsListNetworkEndpoints/warning/message": message +"/compute:alpha/NetworkEndpointGroupsScopedList": network_endpoint_groups_scoped_list +"/compute:alpha/NetworkEndpointGroupsScopedList/networkEndpointGroups": network_endpoint_groups +"/compute:alpha/NetworkEndpointGroupsScopedList/networkEndpointGroups/network_endpoint_group": network_endpoint_group +"/compute:alpha/NetworkEndpointGroupsScopedList/warning": warning +"/compute:alpha/NetworkEndpointGroupsScopedList/warning/code": code +"/compute:alpha/NetworkEndpointGroupsScopedList/warning/data": data +"/compute:alpha/NetworkEndpointGroupsScopedList/warning/data/datum": datum +"/compute:alpha/NetworkEndpointGroupsScopedList/warning/data/datum/key": key +"/compute:alpha/NetworkEndpointGroupsScopedList/warning/data/datum/value": value +"/compute:alpha/NetworkEndpointGroupsScopedList/warning/message": message +"/compute:alpha/NetworkEndpointWithHealthStatus": network_endpoint_with_health_status +"/compute:alpha/NetworkEndpointWithHealthStatus/healths": healths +"/compute:alpha/NetworkEndpointWithHealthStatus/healths/health": health +"/compute:alpha/NetworkEndpointWithHealthStatus/networkEndpoint": network_endpoint +"/compute:alpha/NetworkInterface": network_interface +"/compute:alpha/NetworkInterface/accessConfigs": access_configs +"/compute:alpha/NetworkInterface/accessConfigs/access_config": access_config +"/compute:alpha/NetworkInterface/aliasIpRanges": alias_ip_ranges +"/compute:alpha/NetworkInterface/aliasIpRanges/alias_ip_range": alias_ip_range +"/compute:alpha/NetworkInterface/fingerprint": fingerprint +"/compute:alpha/NetworkInterface/kind": kind +"/compute:alpha/NetworkInterface/name": name +"/compute:alpha/NetworkInterface/network": network +"/compute:alpha/NetworkInterface/networkIP": network_ip +"/compute:alpha/NetworkInterface/subnetwork": subnetwork +"/compute:alpha/NetworkList": network_list +"/compute:alpha/NetworkList/id": id +"/compute:alpha/NetworkList/items": items +"/compute:alpha/NetworkList/items/item": item +"/compute:alpha/NetworkList/kind": kind +"/compute:alpha/NetworkList/nextPageToken": next_page_token +"/compute:alpha/NetworkList/selfLink": self_link +"/compute:alpha/NetworkList/warning": warning +"/compute:alpha/NetworkList/warning/code": code +"/compute:alpha/NetworkList/warning/data": data +"/compute:alpha/NetworkList/warning/data/datum": datum +"/compute:alpha/NetworkList/warning/data/datum/key": key +"/compute:alpha/NetworkList/warning/data/datum/value": value +"/compute:alpha/NetworkList/warning/message": message +"/compute:alpha/NetworkPeering": network_peering +"/compute:alpha/NetworkPeering/autoCreateRoutes": auto_create_routes +"/compute:alpha/NetworkPeering/name": name +"/compute:alpha/NetworkPeering/network": network +"/compute:alpha/NetworkPeering/state": state +"/compute:alpha/NetworkPeering/stateDetails": state_details +"/compute:alpha/NetworkRoutingConfig": network_routing_config +"/compute:alpha/NetworkRoutingConfig/routingMode": routing_mode +"/compute:alpha/NetworksAddPeeringRequest": networks_add_peering_request +"/compute:alpha/NetworksAddPeeringRequest/autoCreateRoutes": auto_create_routes +"/compute:alpha/NetworksAddPeeringRequest/name": name +"/compute:alpha/NetworksAddPeeringRequest/peerNetwork": peer_network +"/compute:alpha/NetworksRemovePeeringRequest": networks_remove_peering_request +"/compute:alpha/NetworksRemovePeeringRequest/name": name +"/compute:alpha/Operation": operation +"/compute:alpha/Operation/clientOperationId": client_operation_id +"/compute:alpha/Operation/creationTimestamp": creation_timestamp +"/compute:alpha/Operation/description": description +"/compute:alpha/Operation/endTime": end_time +"/compute:alpha/Operation/error": error +"/compute:alpha/Operation/error/errors": errors +"/compute:alpha/Operation/error/errors/error": error +"/compute:alpha/Operation/error/errors/error/code": code +"/compute:alpha/Operation/error/errors/error/location": location +"/compute:alpha/Operation/error/errors/error/message": message +"/compute:alpha/Operation/httpErrorMessage": http_error_message +"/compute:alpha/Operation/httpErrorStatusCode": http_error_status_code +"/compute:alpha/Operation/id": id +"/compute:alpha/Operation/insertTime": insert_time +"/compute:alpha/Operation/kind": kind +"/compute:alpha/Operation/name": name +"/compute:alpha/Operation/operationType": operation_type +"/compute:alpha/Operation/progress": progress +"/compute:alpha/Operation/region": region +"/compute:alpha/Operation/selfLink": self_link +"/compute:alpha/Operation/startTime": start_time +"/compute:alpha/Operation/status": status +"/compute:alpha/Operation/statusMessage": status_message +"/compute:alpha/Operation/targetId": target_id +"/compute:alpha/Operation/targetLink": target_link +"/compute:alpha/Operation/user": user +"/compute:alpha/Operation/warnings": warnings +"/compute:alpha/Operation/warnings/warning": warning +"/compute:alpha/Operation/warnings/warning/code": code +"/compute:alpha/Operation/warnings/warning/data": data +"/compute:alpha/Operation/warnings/warning/data/datum": datum +"/compute:alpha/Operation/warnings/warning/data/datum/key": key +"/compute:alpha/Operation/warnings/warning/data/datum/value": value +"/compute:alpha/Operation/warnings/warning/message": message +"/compute:alpha/Operation/zone": zone +"/compute:alpha/OperationAggregatedList": operation_aggregated_list +"/compute:alpha/OperationAggregatedList/id": id +"/compute:alpha/OperationAggregatedList/items": items +"/compute:alpha/OperationAggregatedList/items/item": item +"/compute:alpha/OperationAggregatedList/kind": kind +"/compute:alpha/OperationAggregatedList/nextPageToken": next_page_token +"/compute:alpha/OperationAggregatedList/selfLink": self_link +"/compute:alpha/OperationAggregatedList/warning": warning +"/compute:alpha/OperationAggregatedList/warning/code": code +"/compute:alpha/OperationAggregatedList/warning/data": data +"/compute:alpha/OperationAggregatedList/warning/data/datum": datum +"/compute:alpha/OperationAggregatedList/warning/data/datum/key": key +"/compute:alpha/OperationAggregatedList/warning/data/datum/value": value +"/compute:alpha/OperationAggregatedList/warning/message": message +"/compute:alpha/OperationList": operation_list +"/compute:alpha/OperationList/id": id +"/compute:alpha/OperationList/items": items +"/compute:alpha/OperationList/items/item": item +"/compute:alpha/OperationList/kind": kind +"/compute:alpha/OperationList/nextPageToken": next_page_token +"/compute:alpha/OperationList/selfLink": self_link +"/compute:alpha/OperationList/warning": warning +"/compute:alpha/OperationList/warning/code": code +"/compute:alpha/OperationList/warning/data": data +"/compute:alpha/OperationList/warning/data/datum": datum +"/compute:alpha/OperationList/warning/data/datum/key": key +"/compute:alpha/OperationList/warning/data/datum/value": value +"/compute:alpha/OperationList/warning/message": message +"/compute:alpha/OperationsScopedList": operations_scoped_list +"/compute:alpha/OperationsScopedList/operations": operations +"/compute:alpha/OperationsScopedList/operations/operation": operation +"/compute:alpha/OperationsScopedList/warning": warning +"/compute:alpha/OperationsScopedList/warning/code": code +"/compute:alpha/OperationsScopedList/warning/data": data +"/compute:alpha/OperationsScopedList/warning/data/datum": datum +"/compute:alpha/OperationsScopedList/warning/data/datum/key": key +"/compute:alpha/OperationsScopedList/warning/data/datum/value": value +"/compute:alpha/OperationsScopedList/warning/message": message +"/compute:alpha/PathMatcher": path_matcher +"/compute:alpha/PathMatcher/defaultService": default_service +"/compute:alpha/PathMatcher/description": description +"/compute:alpha/PathMatcher/name": name +"/compute:alpha/PathMatcher/pathRules": path_rules +"/compute:alpha/PathMatcher/pathRules/path_rule": path_rule +"/compute:alpha/PathRule": path_rule +"/compute:alpha/PathRule/paths": paths +"/compute:alpha/PathRule/paths/path": path +"/compute:alpha/PathRule/service": service +"/compute:alpha/PerInstanceConfig": per_instance_config +"/compute:alpha/PerInstanceConfig/instance": instance +"/compute:alpha/PerInstanceConfig/override": override +"/compute:alpha/Policy": policy +"/compute:alpha/Policy/auditConfigs": audit_configs +"/compute:alpha/Policy/auditConfigs/audit_config": audit_config +"/compute:alpha/Policy/bindings": bindings +"/compute:alpha/Policy/bindings/binding": binding +"/compute:alpha/Policy/etag": etag +"/compute:alpha/Policy/iamOwned": iam_owned +"/compute:alpha/Policy/rules": rules +"/compute:alpha/Policy/rules/rule": rule +"/compute:alpha/Policy/version": version +"/compute:alpha/Project": project +"/compute:alpha/Project/commonInstanceMetadata": common_instance_metadata +"/compute:alpha/Project/creationTimestamp": creation_timestamp +"/compute:alpha/Project/defaultServiceAccount": default_service_account +"/compute:alpha/Project/description": description +"/compute:alpha/Project/enabledFeatures": enabled_features +"/compute:alpha/Project/enabledFeatures/enabled_feature": enabled_feature +"/compute:alpha/Project/id": id +"/compute:alpha/Project/kind": kind +"/compute:alpha/Project/name": name +"/compute:alpha/Project/quotas": quotas +"/compute:alpha/Project/quotas/quota": quota +"/compute:alpha/Project/selfLink": self_link +"/compute:alpha/Project/usageExportLocation": usage_export_location +"/compute:alpha/Project/xpnProjectStatus": xpn_project_status +"/compute:alpha/ProjectsDisableXpnResourceRequest": projects_disable_xpn_resource_request +"/compute:alpha/ProjectsDisableXpnResourceRequest/xpnResource": xpn_resource +"/compute:alpha/ProjectsEnableXpnResourceRequest": projects_enable_xpn_resource_request +"/compute:alpha/ProjectsEnableXpnResourceRequest/xpnResource": xpn_resource +"/compute:alpha/ProjectsGetXpnResources": projects_get_xpn_resources +"/compute:alpha/ProjectsGetXpnResources/kind": kind +"/compute:alpha/ProjectsGetXpnResources/nextPageToken": next_page_token +"/compute:alpha/ProjectsGetXpnResources/resources": resources +"/compute:alpha/ProjectsGetXpnResources/resources/resource": resource +"/compute:alpha/ProjectsListXpnHostsRequest": projects_list_xpn_hosts_request +"/compute:alpha/ProjectsListXpnHostsRequest/organization": organization +"/compute:alpha/ProjectsSetDefaultServiceAccountRequest": projects_set_default_service_account_request +"/compute:alpha/ProjectsSetDefaultServiceAccountRequest/email": email +"/compute:alpha/Quota": quota +"/compute:alpha/Quota/limit": limit +"/compute:alpha/Quota/metric": metric +"/compute:alpha/Quota/usage": usage +"/compute:alpha/Reference": reference +"/compute:alpha/Reference/kind": kind +"/compute:alpha/Reference/referenceType": reference_type +"/compute:alpha/Reference/referrer": referrer +"/compute:alpha/Reference/target": target +"/compute:alpha/Region": region +"/compute:alpha/Region/creationTimestamp": creation_timestamp +"/compute:alpha/Region/deprecated": deprecated +"/compute:alpha/Region/description": description +"/compute:alpha/Region/id": id +"/compute:alpha/Region/kind": kind +"/compute:alpha/Region/name": name +"/compute:alpha/Region/quotas": quotas +"/compute:alpha/Region/quotas/quota": quota +"/compute:alpha/Region/selfLink": self_link +"/compute:alpha/Region/status": status +"/compute:alpha/Region/zones": zones +"/compute:alpha/Region/zones/zone": zone +"/compute:alpha/RegionAutoscalerList": region_autoscaler_list +"/compute:alpha/RegionAutoscalerList/id": id +"/compute:alpha/RegionAutoscalerList/items": items +"/compute:alpha/RegionAutoscalerList/items/item": item +"/compute:alpha/RegionAutoscalerList/kind": kind +"/compute:alpha/RegionAutoscalerList/nextPageToken": next_page_token +"/compute:alpha/RegionAutoscalerList/selfLink": self_link +"/compute:alpha/RegionAutoscalerList/warning": warning +"/compute:alpha/RegionAutoscalerList/warning/code": code +"/compute:alpha/RegionAutoscalerList/warning/data": data +"/compute:alpha/RegionAutoscalerList/warning/data/datum": datum +"/compute:alpha/RegionAutoscalerList/warning/data/datum/key": key +"/compute:alpha/RegionAutoscalerList/warning/data/datum/value": value +"/compute:alpha/RegionAutoscalerList/warning/message": message +"/compute:alpha/RegionDiskTypeList": region_disk_type_list +"/compute:alpha/RegionDiskTypeList/id": id +"/compute:alpha/RegionDiskTypeList/items": items +"/compute:alpha/RegionDiskTypeList/items/item": item +"/compute:alpha/RegionDiskTypeList/kind": kind +"/compute:alpha/RegionDiskTypeList/nextPageToken": next_page_token +"/compute:alpha/RegionDiskTypeList/selfLink": self_link +"/compute:alpha/RegionDiskTypeList/warning": warning +"/compute:alpha/RegionDiskTypeList/warning/code": code +"/compute:alpha/RegionDiskTypeList/warning/data": data +"/compute:alpha/RegionDiskTypeList/warning/data/datum": datum +"/compute:alpha/RegionDiskTypeList/warning/data/datum/key": key +"/compute:alpha/RegionDiskTypeList/warning/data/datum/value": value +"/compute:alpha/RegionDiskTypeList/warning/message": message +"/compute:alpha/RegionDisksResizeRequest": region_disks_resize_request +"/compute:alpha/RegionDisksResizeRequest/sizeGb": size_gb +"/compute:alpha/RegionInstanceGroupList": region_instance_group_list +"/compute:alpha/RegionInstanceGroupList/id": id +"/compute:alpha/RegionInstanceGroupList/items": items +"/compute:alpha/RegionInstanceGroupList/items/item": item +"/compute:alpha/RegionInstanceGroupList/kind": kind +"/compute:alpha/RegionInstanceGroupList/nextPageToken": next_page_token +"/compute:alpha/RegionInstanceGroupList/selfLink": self_link +"/compute:alpha/RegionInstanceGroupList/warning": warning +"/compute:alpha/RegionInstanceGroupList/warning/code": code +"/compute:alpha/RegionInstanceGroupList/warning/data": data +"/compute:alpha/RegionInstanceGroupList/warning/data/datum": datum +"/compute:alpha/RegionInstanceGroupList/warning/data/datum/key": key +"/compute:alpha/RegionInstanceGroupList/warning/data/datum/value": value +"/compute:alpha/RegionInstanceGroupList/warning/message": message +"/compute:alpha/RegionInstanceGroupManagerDeleteInstanceConfigReq": region_instance_group_manager_delete_instance_config_req +"/compute:alpha/RegionInstanceGroupManagerDeleteInstanceConfigReq/instances": instances +"/compute:alpha/RegionInstanceGroupManagerDeleteInstanceConfigReq/instances/instance": instance +"/compute:alpha/RegionInstanceGroupManagerList": region_instance_group_manager_list +"/compute:alpha/RegionInstanceGroupManagerList/id": id +"/compute:alpha/RegionInstanceGroupManagerList/items": items +"/compute:alpha/RegionInstanceGroupManagerList/items/item": item +"/compute:alpha/RegionInstanceGroupManagerList/kind": kind +"/compute:alpha/RegionInstanceGroupManagerList/nextPageToken": next_page_token +"/compute:alpha/RegionInstanceGroupManagerList/selfLink": self_link +"/compute:alpha/RegionInstanceGroupManagerList/warning": warning +"/compute:alpha/RegionInstanceGroupManagerList/warning/code": code +"/compute:alpha/RegionInstanceGroupManagerList/warning/data": data +"/compute:alpha/RegionInstanceGroupManagerList/warning/data/datum": datum +"/compute:alpha/RegionInstanceGroupManagerList/warning/data/datum/key": key +"/compute:alpha/RegionInstanceGroupManagerList/warning/data/datum/value": value +"/compute:alpha/RegionInstanceGroupManagerList/warning/message": message +"/compute:alpha/RegionInstanceGroupManagerUpdateInstanceConfigReq": region_instance_group_manager_update_instance_config_req +"/compute:alpha/RegionInstanceGroupManagerUpdateInstanceConfigReq/perInstanceConfigs": per_instance_configs +"/compute:alpha/RegionInstanceGroupManagerUpdateInstanceConfigReq/perInstanceConfigs/per_instance_config": per_instance_config +"/compute:alpha/RegionInstanceGroupManagersAbandonInstancesRequest": region_instance_group_managers_abandon_instances_request +"/compute:alpha/RegionInstanceGroupManagersAbandonInstancesRequest/instances": instances +"/compute:alpha/RegionInstanceGroupManagersAbandonInstancesRequest/instances/instance": instance +"/compute:alpha/RegionInstanceGroupManagersApplyUpdatesRequest": region_instance_group_managers_apply_updates_request +"/compute:alpha/RegionInstanceGroupManagersApplyUpdatesRequest/instances": instances +"/compute:alpha/RegionInstanceGroupManagersApplyUpdatesRequest/instances/instance": instance +"/compute:alpha/RegionInstanceGroupManagersApplyUpdatesRequest/maximalAction": maximal_action +"/compute:alpha/RegionInstanceGroupManagersApplyUpdatesRequest/minimalAction": minimal_action +"/compute:alpha/RegionInstanceGroupManagersDeleteInstancesRequest": region_instance_group_managers_delete_instances_request +"/compute:alpha/RegionInstanceGroupManagersDeleteInstancesRequest/instances": instances +"/compute:alpha/RegionInstanceGroupManagersDeleteInstancesRequest/instances/instance": instance +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp": region_instance_group_managers_list_instance_configs_resp +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/items": items +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/items/item": item +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/nextPageToken": next_page_token +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/warning": warning +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/warning/code": code +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/warning/data": data +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/warning/data/datum": datum +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/warning/data/datum/key": key +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/warning/data/datum/value": value +"/compute:alpha/RegionInstanceGroupManagersListInstanceConfigsResp/warning/message": message +"/compute:alpha/RegionInstanceGroupManagersListInstancesResponse": region_instance_group_managers_list_instances_response +"/compute:alpha/RegionInstanceGroupManagersListInstancesResponse/managedInstances": managed_instances +"/compute:alpha/RegionInstanceGroupManagersListInstancesResponse/managedInstances/managed_instance": managed_instance +"/compute:alpha/RegionInstanceGroupManagersListInstancesResponse/nextPageToken": next_page_token +"/compute:alpha/RegionInstanceGroupManagersRecreateRequest": region_instance_group_managers_recreate_request +"/compute:alpha/RegionInstanceGroupManagersRecreateRequest/instances": instances +"/compute:alpha/RegionInstanceGroupManagersRecreateRequest/instances/instance": instance +"/compute:alpha/RegionInstanceGroupManagersSetAutoHealingRequest": region_instance_group_managers_set_auto_healing_request +"/compute:alpha/RegionInstanceGroupManagersSetAutoHealingRequest/autoHealingPolicies": auto_healing_policies +"/compute:alpha/RegionInstanceGroupManagersSetAutoHealingRequest/autoHealingPolicies/auto_healing_policy": auto_healing_policy +"/compute:alpha/RegionInstanceGroupManagersSetTargetPoolsRequest": region_instance_group_managers_set_target_pools_request +"/compute:alpha/RegionInstanceGroupManagersSetTargetPoolsRequest/fingerprint": fingerprint +"/compute:alpha/RegionInstanceGroupManagersSetTargetPoolsRequest/targetPools": target_pools +"/compute:alpha/RegionInstanceGroupManagersSetTargetPoolsRequest/targetPools/target_pool": target_pool +"/compute:alpha/RegionInstanceGroupManagersSetTemplateRequest": region_instance_group_managers_set_template_request +"/compute:alpha/RegionInstanceGroupManagersSetTemplateRequest/instanceTemplate": instance_template +"/compute:alpha/RegionInstanceGroupsListInstances": region_instance_groups_list_instances +"/compute:alpha/RegionInstanceGroupsListInstances/id": id +"/compute:alpha/RegionInstanceGroupsListInstances/items": items +"/compute:alpha/RegionInstanceGroupsListInstances/items/item": item +"/compute:alpha/RegionInstanceGroupsListInstances/kind": kind +"/compute:alpha/RegionInstanceGroupsListInstances/nextPageToken": next_page_token +"/compute:alpha/RegionInstanceGroupsListInstances/selfLink": self_link +"/compute:alpha/RegionInstanceGroupsListInstances/warning": warning +"/compute:alpha/RegionInstanceGroupsListInstances/warning/code": code +"/compute:alpha/RegionInstanceGroupsListInstances/warning/data": data +"/compute:alpha/RegionInstanceGroupsListInstances/warning/data/datum": datum +"/compute:alpha/RegionInstanceGroupsListInstances/warning/data/datum/key": key +"/compute:alpha/RegionInstanceGroupsListInstances/warning/data/datum/value": value +"/compute:alpha/RegionInstanceGroupsListInstances/warning/message": message +"/compute:alpha/RegionInstanceGroupsListInstancesRequest": region_instance_groups_list_instances_request +"/compute:alpha/RegionInstanceGroupsListInstancesRequest/instanceState": instance_state +"/compute:alpha/RegionInstanceGroupsListInstancesRequest/portName": port_name +"/compute:alpha/RegionInstanceGroupsSetNamedPortsRequest": region_instance_groups_set_named_ports_request +"/compute:alpha/RegionInstanceGroupsSetNamedPortsRequest/fingerprint": fingerprint +"/compute:alpha/RegionInstanceGroupsSetNamedPortsRequest/namedPorts": named_ports +"/compute:alpha/RegionInstanceGroupsSetNamedPortsRequest/namedPorts/named_port": named_port +"/compute:alpha/RegionList": region_list +"/compute:alpha/RegionList/id": id +"/compute:alpha/RegionList/items": items +"/compute:alpha/RegionList/items/item": item +"/compute:alpha/RegionList/kind": kind +"/compute:alpha/RegionList/nextPageToken": next_page_token +"/compute:alpha/RegionList/selfLink": self_link +"/compute:alpha/RegionList/warning": warning +"/compute:alpha/RegionList/warning/code": code +"/compute:alpha/RegionList/warning/data": data +"/compute:alpha/RegionList/warning/data/datum": datum +"/compute:alpha/RegionList/warning/data/datum/key": key +"/compute:alpha/RegionList/warning/data/datum/value": value +"/compute:alpha/RegionList/warning/message": message +"/compute:alpha/RegionSetLabelsRequest": region_set_labels_request +"/compute:alpha/RegionSetLabelsRequest/labelFingerprint": label_fingerprint +"/compute:alpha/RegionSetLabelsRequest/labels": labels +"/compute:alpha/RegionSetLabelsRequest/labels/label": label +"/compute:alpha/ResourceCommitment": resource_commitment +"/compute:alpha/ResourceCommitment/amount": amount +"/compute:alpha/ResourceCommitment/type": type +"/compute:alpha/ResourceGroupReference": resource_group_reference +"/compute:alpha/ResourceGroupReference/group": group +"/compute:alpha/Route": route +"/compute:alpha/Route/creationTimestamp": creation_timestamp +"/compute:alpha/Route/description": description +"/compute:alpha/Route/destRange": dest_range +"/compute:alpha/Route/id": id +"/compute:alpha/Route/kind": kind +"/compute:alpha/Route/name": name +"/compute:alpha/Route/network": network +"/compute:alpha/Route/nextHopGateway": next_hop_gateway +"/compute:alpha/Route/nextHopInstance": next_hop_instance +"/compute:alpha/Route/nextHopIp": next_hop_ip +"/compute:alpha/Route/nextHopNetwork": next_hop_network +"/compute:alpha/Route/nextHopPeering": next_hop_peering +"/compute:alpha/Route/nextHopVpnTunnel": next_hop_vpn_tunnel +"/compute:alpha/Route/priority": priority +"/compute:alpha/Route/selfLink": self_link +"/compute:alpha/Route/tags": tags +"/compute:alpha/Route/tags/tag": tag +"/compute:alpha/Route/warnings": warnings +"/compute:alpha/Route/warnings/warning": warning +"/compute:alpha/Route/warnings/warning/code": code +"/compute:alpha/Route/warnings/warning/data": data +"/compute:alpha/Route/warnings/warning/data/datum": datum +"/compute:alpha/Route/warnings/warning/data/datum/key": key +"/compute:alpha/Route/warnings/warning/data/datum/value": value +"/compute:alpha/Route/warnings/warning/message": message +"/compute:alpha/RouteList": route_list +"/compute:alpha/RouteList/id": id +"/compute:alpha/RouteList/items": items +"/compute:alpha/RouteList/items/item": item +"/compute:alpha/RouteList/kind": kind +"/compute:alpha/RouteList/nextPageToken": next_page_token +"/compute:alpha/RouteList/selfLink": self_link +"/compute:alpha/RouteList/warning": warning +"/compute:alpha/RouteList/warning/code": code +"/compute:alpha/RouteList/warning/data": data +"/compute:alpha/RouteList/warning/data/datum": datum +"/compute:alpha/RouteList/warning/data/datum/key": key +"/compute:alpha/RouteList/warning/data/datum/value": value +"/compute:alpha/RouteList/warning/message": message +"/compute:alpha/Router": router +"/compute:alpha/Router/bgp": bgp +"/compute:alpha/Router/bgpPeers": bgp_peers +"/compute:alpha/Router/bgpPeers/bgp_peer": bgp_peer +"/compute:alpha/Router/creationTimestamp": creation_timestamp +"/compute:alpha/Router/description": description +"/compute:alpha/Router/id": id +"/compute:alpha/Router/interfaces": interfaces +"/compute:alpha/Router/interfaces/interface": interface +"/compute:alpha/Router/kind": kind +"/compute:alpha/Router/name": name +"/compute:alpha/Router/nats": nats +"/compute:alpha/Router/nats/nat": nat +"/compute:alpha/Router/network": network +"/compute:alpha/Router/region": region +"/compute:alpha/Router/selfLink": self_link +"/compute:alpha/RouterAdvertisedPrefix": router_advertised_prefix +"/compute:alpha/RouterAdvertisedPrefix/description": description +"/compute:alpha/RouterAdvertisedPrefix/prefix": prefix +"/compute:alpha/RouterAggregatedList": router_aggregated_list +"/compute:alpha/RouterAggregatedList/id": id +"/compute:alpha/RouterAggregatedList/items": items +"/compute:alpha/RouterAggregatedList/items/item": item +"/compute:alpha/RouterAggregatedList/kind": kind +"/compute:alpha/RouterAggregatedList/nextPageToken": next_page_token +"/compute:alpha/RouterAggregatedList/selfLink": self_link +"/compute:alpha/RouterAggregatedList/warning": warning +"/compute:alpha/RouterAggregatedList/warning/code": code +"/compute:alpha/RouterAggregatedList/warning/data": data +"/compute:alpha/RouterAggregatedList/warning/data/datum": datum +"/compute:alpha/RouterAggregatedList/warning/data/datum/key": key +"/compute:alpha/RouterAggregatedList/warning/data/datum/value": value +"/compute:alpha/RouterAggregatedList/warning/message": message +"/compute:alpha/RouterBgp": router_bgp +"/compute:alpha/RouterBgp/advertiseMode": advertise_mode +"/compute:alpha/RouterBgp/advertisedGroups": advertised_groups +"/compute:alpha/RouterBgp/advertisedGroups/advertised_group": advertised_group +"/compute:alpha/RouterBgp/advertisedPrefixs": advertised_prefixs +"/compute:alpha/RouterBgp/advertisedPrefixs/advertised_prefix": advertised_prefix +"/compute:alpha/RouterBgp/asn": asn +"/compute:alpha/RouterBgpPeer": router_bgp_peer +"/compute:alpha/RouterBgpPeer/advertiseMode": advertise_mode +"/compute:alpha/RouterBgpPeer/advertisedGroups": advertised_groups +"/compute:alpha/RouterBgpPeer/advertisedGroups/advertised_group": advertised_group +"/compute:alpha/RouterBgpPeer/advertisedPrefixs": advertised_prefixs +"/compute:alpha/RouterBgpPeer/advertisedPrefixs/advertised_prefix": advertised_prefix +"/compute:alpha/RouterBgpPeer/advertisedRoutePriority": advertised_route_priority +"/compute:alpha/RouterBgpPeer/interfaceName": interface_name +"/compute:alpha/RouterBgpPeer/ipAddress": ip_address +"/compute:alpha/RouterBgpPeer/name": name +"/compute:alpha/RouterBgpPeer/peerAsn": peer_asn +"/compute:alpha/RouterBgpPeer/peerIpAddress": peer_ip_address +"/compute:alpha/RouterInterface": router_interface +"/compute:alpha/RouterInterface/ipRange": ip_range +"/compute:alpha/RouterInterface/linkedInterconnectAttachment": linked_interconnect_attachment +"/compute:alpha/RouterInterface/linkedVpnTunnel": linked_vpn_tunnel +"/compute:alpha/RouterInterface/name": name +"/compute:alpha/RouterList": router_list +"/compute:alpha/RouterList/id": id +"/compute:alpha/RouterList/items": items +"/compute:alpha/RouterList/items/item": item +"/compute:alpha/RouterList/kind": kind +"/compute:alpha/RouterList/nextPageToken": next_page_token +"/compute:alpha/RouterList/selfLink": self_link +"/compute:alpha/RouterList/warning": warning +"/compute:alpha/RouterList/warning/code": code +"/compute:alpha/RouterList/warning/data": data +"/compute:alpha/RouterList/warning/data/datum": datum +"/compute:alpha/RouterList/warning/data/datum/key": key +"/compute:alpha/RouterList/warning/data/datum/value": value +"/compute:alpha/RouterList/warning/message": message +"/compute:alpha/RouterNat": router_nat +"/compute:alpha/RouterNat/autoAllocatedNatIps": auto_allocated_nat_ips +"/compute:alpha/RouterNat/autoAllocatedNatIps/auto_allocated_nat_ip": auto_allocated_nat_ip +"/compute:alpha/RouterNat/name": name +"/compute:alpha/RouterNat/natIpAllocateOption": nat_ip_allocate_option +"/compute:alpha/RouterNat/natIps": nat_ips +"/compute:alpha/RouterNat/natIps/nat_ip": nat_ip +"/compute:alpha/RouterNat/sourceSubnetworkIpRangesToNat": source_subnetwork_ip_ranges_to_nat +"/compute:alpha/RouterNat/subnetworks": subnetworks +"/compute:alpha/RouterNat/subnetworks/subnetwork": subnetwork +"/compute:alpha/RouterNatSubnetworkToNat": router_nat_subnetwork_to_nat +"/compute:alpha/RouterNatSubnetworkToNat/name": name +"/compute:alpha/RouterNatSubnetworkToNat/secondaryIpRangeNames": secondary_ip_range_names +"/compute:alpha/RouterNatSubnetworkToNat/secondaryIpRangeNames/secondary_ip_range_name": secondary_ip_range_name +"/compute:alpha/RouterNatSubnetworkToNat/sourceIpRangesToNats": source_ip_ranges_to_nats +"/compute:alpha/RouterNatSubnetworkToNat/sourceIpRangesToNats/source_ip_ranges_to_nat": source_ip_ranges_to_nat +"/compute:alpha/RouterStatus": router_status +"/compute:alpha/RouterStatus/bestRoutes": best_routes +"/compute:alpha/RouterStatus/bestRoutes/best_route": best_route +"/compute:alpha/RouterStatus/bestRoutesForRouter": best_routes_for_router +"/compute:alpha/RouterStatus/bestRoutesForRouter/best_routes_for_router": best_routes_for_router +"/compute:alpha/RouterStatus/bgpPeerStatus": bgp_peer_status +"/compute:alpha/RouterStatus/bgpPeerStatus/bgp_peer_status": bgp_peer_status +"/compute:alpha/RouterStatus/natStatus": nat_status +"/compute:alpha/RouterStatus/natStatus/nat_status": nat_status +"/compute:alpha/RouterStatus/network": network +"/compute:alpha/RouterStatusBgpPeerStatus": router_status_bgp_peer_status +"/compute:alpha/RouterStatusBgpPeerStatus/advertisedRoutes": advertised_routes +"/compute:alpha/RouterStatusBgpPeerStatus/advertisedRoutes/advertised_route": advertised_route +"/compute:alpha/RouterStatusBgpPeerStatus/ipAddress": ip_address +"/compute:alpha/RouterStatusBgpPeerStatus/linkedVpnTunnel": linked_vpn_tunnel +"/compute:alpha/RouterStatusBgpPeerStatus/name": name +"/compute:alpha/RouterStatusBgpPeerStatus/numLearnedRoutes": num_learned_routes +"/compute:alpha/RouterStatusBgpPeerStatus/peerIpAddress": peer_ip_address +"/compute:alpha/RouterStatusBgpPeerStatus/state": state +"/compute:alpha/RouterStatusBgpPeerStatus/status": status +"/compute:alpha/RouterStatusBgpPeerStatus/uptime": uptime +"/compute:alpha/RouterStatusBgpPeerStatus/uptimeSeconds": uptime_seconds +"/compute:alpha/RouterStatusNatStatus": router_status_nat_status +"/compute:alpha/RouterStatusNatStatus/autoAllocatedNatIps": auto_allocated_nat_ips +"/compute:alpha/RouterStatusNatStatus/autoAllocatedNatIps/auto_allocated_nat_ip": auto_allocated_nat_ip +"/compute:alpha/RouterStatusNatStatus/minExtraNatIpsNeeded": min_extra_nat_ips_needed +"/compute:alpha/RouterStatusNatStatus/name": name +"/compute:alpha/RouterStatusNatStatus/numVmEndpointsWithNatMappings": num_vm_endpoints_with_nat_mappings +"/compute:alpha/RouterStatusNatStatus/userAllocatedNatIpResources": user_allocated_nat_ip_resources +"/compute:alpha/RouterStatusNatStatus/userAllocatedNatIpResources/user_allocated_nat_ip_resource": user_allocated_nat_ip_resource +"/compute:alpha/RouterStatusNatStatus/userAllocatedNatIps": user_allocated_nat_ips +"/compute:alpha/RouterStatusNatStatus/userAllocatedNatIps/user_allocated_nat_ip": user_allocated_nat_ip +"/compute:alpha/RouterStatusResponse": router_status_response +"/compute:alpha/RouterStatusResponse/kind": kind +"/compute:alpha/RouterStatusResponse/result": result +"/compute:alpha/RoutersPreviewResponse": routers_preview_response +"/compute:alpha/RoutersPreviewResponse/resource": resource +"/compute:alpha/RoutersScopedList": routers_scoped_list +"/compute:alpha/RoutersScopedList/routers": routers +"/compute:alpha/RoutersScopedList/routers/router": router +"/compute:alpha/RoutersScopedList/warning": warning +"/compute:alpha/RoutersScopedList/warning/code": code +"/compute:alpha/RoutersScopedList/warning/data": data +"/compute:alpha/RoutersScopedList/warning/data/datum": datum +"/compute:alpha/RoutersScopedList/warning/data/datum/key": key +"/compute:alpha/RoutersScopedList/warning/data/datum/value": value +"/compute:alpha/RoutersScopedList/warning/message": message +"/compute:alpha/Rule": rule +"/compute:alpha/Rule/action": action +"/compute:alpha/Rule/conditions": conditions +"/compute:alpha/Rule/conditions/condition": condition +"/compute:alpha/Rule/description": description +"/compute:alpha/Rule/ins": ins +"/compute:alpha/Rule/ins/in": in +"/compute:alpha/Rule/logConfigs": log_configs +"/compute:alpha/Rule/logConfigs/log_config": log_config +"/compute:alpha/Rule/notIns": not_ins +"/compute:alpha/Rule/notIns/not_in": not_in +"/compute:alpha/Rule/permissions": permissions +"/compute:alpha/Rule/permissions/permission": permission +"/compute:alpha/SSLHealthCheck": ssl_health_check +"/compute:alpha/SSLHealthCheck/port": port +"/compute:alpha/SSLHealthCheck/portName": port_name +"/compute:alpha/SSLHealthCheck/proxyHeader": proxy_header +"/compute:alpha/SSLHealthCheck/request": request +"/compute:alpha/SSLHealthCheck/response": response +"/compute:alpha/Scheduling": scheduling +"/compute:alpha/Scheduling/automaticRestart": automatic_restart +"/compute:alpha/Scheduling/onHostMaintenance": on_host_maintenance +"/compute:alpha/Scheduling/preemptible": preemptible +"/compute:alpha/SecurityPoliciesList": security_policies_list +"/compute:alpha/SecurityPoliciesList/id": id +"/compute:alpha/SecurityPoliciesList/items": items +"/compute:alpha/SecurityPoliciesList/items/item": item +"/compute:alpha/SecurityPoliciesList/kind": kind +"/compute:alpha/SecurityPoliciesList/nextPageToken": next_page_token +"/compute:alpha/SecurityPoliciesList/warning": warning +"/compute:alpha/SecurityPoliciesList/warning/code": code +"/compute:alpha/SecurityPoliciesList/warning/data": data +"/compute:alpha/SecurityPoliciesList/warning/data/datum": datum +"/compute:alpha/SecurityPoliciesList/warning/data/datum/key": key +"/compute:alpha/SecurityPoliciesList/warning/data/datum/value": value +"/compute:alpha/SecurityPoliciesList/warning/message": message +"/compute:alpha/SecurityPolicy": security_policy +"/compute:alpha/SecurityPolicy/creationTimestamp": creation_timestamp +"/compute:alpha/SecurityPolicy/description": description +"/compute:alpha/SecurityPolicy/fingerprint": fingerprint +"/compute:alpha/SecurityPolicy/id": id +"/compute:alpha/SecurityPolicy/kind": kind +"/compute:alpha/SecurityPolicy/name": name +"/compute:alpha/SecurityPolicy/rules": rules +"/compute:alpha/SecurityPolicy/rules/rule": rule +"/compute:alpha/SecurityPolicy/selfLink": self_link +"/compute:alpha/SecurityPolicyReference": security_policy_reference +"/compute:alpha/SecurityPolicyReference/securityPolicy": security_policy +"/compute:alpha/SecurityPolicyRule": security_policy_rule +"/compute:alpha/SecurityPolicyRule/action": action +"/compute:alpha/SecurityPolicyRule/description": description +"/compute:alpha/SecurityPolicyRule/kind": kind +"/compute:alpha/SecurityPolicyRule/match": match +"/compute:alpha/SecurityPolicyRule/preview": preview +"/compute:alpha/SecurityPolicyRule/priority": priority +"/compute:alpha/SecurityPolicyRuleMatcher": security_policy_rule_matcher +"/compute:alpha/SecurityPolicyRuleMatcher/config": config +"/compute:alpha/SecurityPolicyRuleMatcher/srcIpRanges": src_ip_ranges +"/compute:alpha/SecurityPolicyRuleMatcher/srcIpRanges/src_ip_range": src_ip_range +"/compute:alpha/SecurityPolicyRuleMatcher/srcRegionCodes": src_region_codes +"/compute:alpha/SecurityPolicyRuleMatcher/srcRegionCodes/src_region_code": src_region_code +"/compute:alpha/SecurityPolicyRuleMatcher/versionedExpr": versioned_expr +"/compute:alpha/SecurityPolicyRuleMatcherConfig": security_policy_rule_matcher_config +"/compute:alpha/SecurityPolicyRuleMatcherConfig/srcIpRanges": src_ip_ranges +"/compute:alpha/SecurityPolicyRuleMatcherConfig/srcIpRanges/src_ip_range": src_ip_range +"/compute:alpha/SerialPortOutput": serial_port_output +"/compute:alpha/SerialPortOutput/contents": contents +"/compute:alpha/SerialPortOutput/kind": kind +"/compute:alpha/SerialPortOutput/next": next +"/compute:alpha/SerialPortOutput/selfLink": self_link +"/compute:alpha/SerialPortOutput/start": start +"/compute:alpha/ServiceAccount": service_account +"/compute:alpha/ServiceAccount/email": email +"/compute:alpha/ServiceAccount/scopes": scopes +"/compute:alpha/ServiceAccount/scopes/scope": scope +"/compute:alpha/SignedUrlKey": signed_url_key +"/compute:alpha/SignedUrlKey/keyName": key_name +"/compute:alpha/SignedUrlKey/keyValue": key_value +"/compute:alpha/Snapshot": snapshot +"/compute:alpha/Snapshot/creationTimestamp": creation_timestamp +"/compute:alpha/Snapshot/description": description +"/compute:alpha/Snapshot/diskSizeGb": disk_size_gb +"/compute:alpha/Snapshot/id": id +"/compute:alpha/Snapshot/kind": kind +"/compute:alpha/Snapshot/labelFingerprint": label_fingerprint +"/compute:alpha/Snapshot/labels": labels +"/compute:alpha/Snapshot/labels/label": label +"/compute:alpha/Snapshot/licenseCodes": license_codes +"/compute:alpha/Snapshot/licenseCodes/license_code": license_code +"/compute:alpha/Snapshot/licenses": licenses +"/compute:alpha/Snapshot/licenses/license": license +"/compute:alpha/Snapshot/name": name +"/compute:alpha/Snapshot/selfLink": self_link +"/compute:alpha/Snapshot/snapshotEncryptionKey": snapshot_encryption_key +"/compute:alpha/Snapshot/sourceDisk": source_disk +"/compute:alpha/Snapshot/sourceDiskEncryptionKey": source_disk_encryption_key +"/compute:alpha/Snapshot/sourceDiskId": source_disk_id +"/compute:alpha/Snapshot/status": status +"/compute:alpha/Snapshot/storageBytes": storage_bytes +"/compute:alpha/Snapshot/storageBytesStatus": storage_bytes_status +"/compute:alpha/SnapshotList": snapshot_list +"/compute:alpha/SnapshotList/id": id +"/compute:alpha/SnapshotList/items": items +"/compute:alpha/SnapshotList/items/item": item +"/compute:alpha/SnapshotList/kind": kind +"/compute:alpha/SnapshotList/nextPageToken": next_page_token +"/compute:alpha/SnapshotList/selfLink": self_link +"/compute:alpha/SnapshotList/warning": warning +"/compute:alpha/SnapshotList/warning/code": code +"/compute:alpha/SnapshotList/warning/data": data +"/compute:alpha/SnapshotList/warning/data/datum": datum +"/compute:alpha/SnapshotList/warning/data/datum/key": key +"/compute:alpha/SnapshotList/warning/data/datum/value": value +"/compute:alpha/SnapshotList/warning/message": message +"/compute:alpha/SslCertificate": ssl_certificate +"/compute:alpha/SslCertificate/certificate": certificate +"/compute:alpha/SslCertificate/creationTimestamp": creation_timestamp +"/compute:alpha/SslCertificate/description": description +"/compute:alpha/SslCertificate/id": id +"/compute:alpha/SslCertificate/kind": kind +"/compute:alpha/SslCertificate/name": name +"/compute:alpha/SslCertificate/privateKey": private_key +"/compute:alpha/SslCertificate/selfLink": self_link +"/compute:alpha/SslCertificateList": ssl_certificate_list +"/compute:alpha/SslCertificateList/id": id +"/compute:alpha/SslCertificateList/items": items +"/compute:alpha/SslCertificateList/items/item": item +"/compute:alpha/SslCertificateList/kind": kind +"/compute:alpha/SslCertificateList/nextPageToken": next_page_token +"/compute:alpha/SslCertificateList/selfLink": self_link +"/compute:alpha/SslCertificateList/warning": warning +"/compute:alpha/SslCertificateList/warning/code": code +"/compute:alpha/SslCertificateList/warning/data": data +"/compute:alpha/SslCertificateList/warning/data/datum": datum +"/compute:alpha/SslCertificateList/warning/data/datum/key": key +"/compute:alpha/SslCertificateList/warning/data/datum/value": value +"/compute:alpha/SslCertificateList/warning/message": message +"/compute:alpha/Subnetwork": subnetwork +"/compute:alpha/Subnetwork/allowSubnetCidrRoutesOverlap": allow_subnet_cidr_routes_overlap +"/compute:alpha/Subnetwork/creationTimestamp": creation_timestamp +"/compute:alpha/Subnetwork/description": description +"/compute:alpha/Subnetwork/fingerprint": fingerprint +"/compute:alpha/Subnetwork/gatewayAddress": gateway_address +"/compute:alpha/Subnetwork/id": id +"/compute:alpha/Subnetwork/ipCidrRange": ip_cidr_range +"/compute:alpha/Subnetwork/kind": kind +"/compute:alpha/Subnetwork/name": name +"/compute:alpha/Subnetwork/network": network +"/compute:alpha/Subnetwork/privateIpGoogleAccess": private_ip_google_access +"/compute:alpha/Subnetwork/region": region +"/compute:alpha/Subnetwork/secondaryIpRanges": secondary_ip_ranges +"/compute:alpha/Subnetwork/secondaryIpRanges/secondary_ip_range": secondary_ip_range +"/compute:alpha/Subnetwork/selfLink": self_link +"/compute:alpha/SubnetworkAggregatedList": subnetwork_aggregated_list +"/compute:alpha/SubnetworkAggregatedList/id": id +"/compute:alpha/SubnetworkAggregatedList/items": items +"/compute:alpha/SubnetworkAggregatedList/items/item": item +"/compute:alpha/SubnetworkAggregatedList/kind": kind +"/compute:alpha/SubnetworkAggregatedList/nextPageToken": next_page_token +"/compute:alpha/SubnetworkAggregatedList/selfLink": self_link +"/compute:alpha/SubnetworkAggregatedList/warning": warning +"/compute:alpha/SubnetworkAggregatedList/warning/code": code +"/compute:alpha/SubnetworkAggregatedList/warning/data": data +"/compute:alpha/SubnetworkAggregatedList/warning/data/datum": datum +"/compute:alpha/SubnetworkAggregatedList/warning/data/datum/key": key +"/compute:alpha/SubnetworkAggregatedList/warning/data/datum/value": value +"/compute:alpha/SubnetworkAggregatedList/warning/message": message +"/compute:alpha/SubnetworkList": subnetwork_list +"/compute:alpha/SubnetworkList/id": id +"/compute:alpha/SubnetworkList/items": items +"/compute:alpha/SubnetworkList/items/item": item +"/compute:alpha/SubnetworkList/kind": kind +"/compute:alpha/SubnetworkList/nextPageToken": next_page_token +"/compute:alpha/SubnetworkList/selfLink": self_link +"/compute:alpha/SubnetworkList/warning": warning +"/compute:alpha/SubnetworkList/warning/code": code +"/compute:alpha/SubnetworkList/warning/data": data +"/compute:alpha/SubnetworkList/warning/data/datum": datum +"/compute:alpha/SubnetworkList/warning/data/datum/key": key +"/compute:alpha/SubnetworkList/warning/data/datum/value": value +"/compute:alpha/SubnetworkList/warning/message": message +"/compute:alpha/SubnetworkSecondaryRange": subnetwork_secondary_range +"/compute:alpha/SubnetworkSecondaryRange/ipCidrRange": ip_cidr_range +"/compute:alpha/SubnetworkSecondaryRange/rangeName": range_name +"/compute:alpha/SubnetworksExpandIpCidrRangeRequest": subnetworks_expand_ip_cidr_range_request +"/compute:alpha/SubnetworksExpandIpCidrRangeRequest/ipCidrRange": ip_cidr_range +"/compute:alpha/SubnetworksScopedList": subnetworks_scoped_list +"/compute:alpha/SubnetworksScopedList/subnetworks": subnetworks +"/compute:alpha/SubnetworksScopedList/subnetworks/subnetwork": subnetwork +"/compute:alpha/SubnetworksScopedList/warning": warning +"/compute:alpha/SubnetworksScopedList/warning/code": code +"/compute:alpha/SubnetworksScopedList/warning/data": data +"/compute:alpha/SubnetworksScopedList/warning/data/datum": datum +"/compute:alpha/SubnetworksScopedList/warning/data/datum/key": key +"/compute:alpha/SubnetworksScopedList/warning/data/datum/value": value +"/compute:alpha/SubnetworksScopedList/warning/message": message +"/compute:alpha/SubnetworksSetPrivateIpGoogleAccessRequest": subnetworks_set_private_ip_google_access_request +"/compute:alpha/SubnetworksSetPrivateIpGoogleAccessRequest/privateIpGoogleAccess": private_ip_google_access +"/compute:alpha/TCPHealthCheck": tcp_health_check +"/compute:alpha/TCPHealthCheck/port": port +"/compute:alpha/TCPHealthCheck/portName": port_name +"/compute:alpha/TCPHealthCheck/proxyHeader": proxy_header +"/compute:alpha/TCPHealthCheck/request": request +"/compute:alpha/TCPHealthCheck/response": response +"/compute:alpha/Tags": tags +"/compute:alpha/Tags/fingerprint": fingerprint +"/compute:alpha/Tags/items": items +"/compute:alpha/Tags/items/item": item +"/compute:alpha/TargetHttpProxy": target_http_proxy +"/compute:alpha/TargetHttpProxy/creationTimestamp": creation_timestamp +"/compute:alpha/TargetHttpProxy/description": description +"/compute:alpha/TargetHttpProxy/id": id +"/compute:alpha/TargetHttpProxy/kind": kind +"/compute:alpha/TargetHttpProxy/name": name +"/compute:alpha/TargetHttpProxy/selfLink": self_link +"/compute:alpha/TargetHttpProxy/urlMap": url_map +"/compute:alpha/TargetHttpProxyList": target_http_proxy_list +"/compute:alpha/TargetHttpProxyList/id": id +"/compute:alpha/TargetHttpProxyList/items": items +"/compute:alpha/TargetHttpProxyList/items/item": item +"/compute:alpha/TargetHttpProxyList/kind": kind +"/compute:alpha/TargetHttpProxyList/nextPageToken": next_page_token +"/compute:alpha/TargetHttpProxyList/selfLink": self_link +"/compute:alpha/TargetHttpProxyList/warning": warning +"/compute:alpha/TargetHttpProxyList/warning/code": code +"/compute:alpha/TargetHttpProxyList/warning/data": data +"/compute:alpha/TargetHttpProxyList/warning/data/datum": datum +"/compute:alpha/TargetHttpProxyList/warning/data/datum/key": key +"/compute:alpha/TargetHttpProxyList/warning/data/datum/value": value +"/compute:alpha/TargetHttpProxyList/warning/message": message +"/compute:alpha/TargetHttpsProxiesSetQuicOverrideRequest": target_https_proxies_set_quic_override_request +"/compute:alpha/TargetHttpsProxiesSetQuicOverrideRequest/quicOverride": quic_override +"/compute:alpha/TargetHttpsProxiesSetSslCertificatesRequest": target_https_proxies_set_ssl_certificates_request +"/compute:alpha/TargetHttpsProxiesSetSslCertificatesRequest/sslCertificates": ssl_certificates +"/compute:alpha/TargetHttpsProxiesSetSslCertificatesRequest/sslCertificates/ssl_certificate": ssl_certificate +"/compute:alpha/TargetHttpsProxy": target_https_proxy +"/compute:alpha/TargetHttpsProxy/clientSslPolicy": client_ssl_policy +"/compute:alpha/TargetHttpsProxy/creationTimestamp": creation_timestamp +"/compute:alpha/TargetHttpsProxy/description": description +"/compute:alpha/TargetHttpsProxy/id": id +"/compute:alpha/TargetHttpsProxy/kind": kind +"/compute:alpha/TargetHttpsProxy/name": name +"/compute:alpha/TargetHttpsProxy/quicOverride": quic_override +"/compute:alpha/TargetHttpsProxy/selfLink": self_link +"/compute:alpha/TargetHttpsProxy/sslCertificates": ssl_certificates +"/compute:alpha/TargetHttpsProxy/sslCertificates/ssl_certificate": ssl_certificate +"/compute:alpha/TargetHttpsProxy/urlMap": url_map +"/compute:alpha/TargetHttpsProxyList": target_https_proxy_list +"/compute:alpha/TargetHttpsProxyList/id": id +"/compute:alpha/TargetHttpsProxyList/items": items +"/compute:alpha/TargetHttpsProxyList/items/item": item +"/compute:alpha/TargetHttpsProxyList/kind": kind +"/compute:alpha/TargetHttpsProxyList/nextPageToken": next_page_token +"/compute:alpha/TargetHttpsProxyList/selfLink": self_link +"/compute:alpha/TargetHttpsProxyList/warning": warning +"/compute:alpha/TargetHttpsProxyList/warning/code": code +"/compute:alpha/TargetHttpsProxyList/warning/data": data +"/compute:alpha/TargetHttpsProxyList/warning/data/datum": datum +"/compute:alpha/TargetHttpsProxyList/warning/data/datum/key": key +"/compute:alpha/TargetHttpsProxyList/warning/data/datum/value": value +"/compute:alpha/TargetHttpsProxyList/warning/message": message +"/compute:alpha/TargetInstance": target_instance +"/compute:alpha/TargetInstance/creationTimestamp": creation_timestamp +"/compute:alpha/TargetInstance/description": description +"/compute:alpha/TargetInstance/id": id +"/compute:alpha/TargetInstance/instance": instance +"/compute:alpha/TargetInstance/kind": kind +"/compute:alpha/TargetInstance/name": name +"/compute:alpha/TargetInstance/natPolicy": nat_policy +"/compute:alpha/TargetInstance/selfLink": self_link +"/compute:alpha/TargetInstance/zone": zone +"/compute:alpha/TargetInstanceAggregatedList": target_instance_aggregated_list +"/compute:alpha/TargetInstanceAggregatedList/id": id +"/compute:alpha/TargetInstanceAggregatedList/items": items +"/compute:alpha/TargetInstanceAggregatedList/items/item": item +"/compute:alpha/TargetInstanceAggregatedList/kind": kind +"/compute:alpha/TargetInstanceAggregatedList/nextPageToken": next_page_token +"/compute:alpha/TargetInstanceAggregatedList/selfLink": self_link +"/compute:alpha/TargetInstanceAggregatedList/warning": warning +"/compute:alpha/TargetInstanceAggregatedList/warning/code": code +"/compute:alpha/TargetInstanceAggregatedList/warning/data": data +"/compute:alpha/TargetInstanceAggregatedList/warning/data/datum": datum +"/compute:alpha/TargetInstanceAggregatedList/warning/data/datum/key": key +"/compute:alpha/TargetInstanceAggregatedList/warning/data/datum/value": value +"/compute:alpha/TargetInstanceAggregatedList/warning/message": message +"/compute:alpha/TargetInstanceList": target_instance_list +"/compute:alpha/TargetInstanceList/id": id +"/compute:alpha/TargetInstanceList/items": items +"/compute:alpha/TargetInstanceList/items/item": item +"/compute:alpha/TargetInstanceList/kind": kind +"/compute:alpha/TargetInstanceList/nextPageToken": next_page_token +"/compute:alpha/TargetInstanceList/selfLink": self_link +"/compute:alpha/TargetInstanceList/warning": warning +"/compute:alpha/TargetInstanceList/warning/code": code +"/compute:alpha/TargetInstanceList/warning/data": data +"/compute:alpha/TargetInstanceList/warning/data/datum": datum +"/compute:alpha/TargetInstanceList/warning/data/datum/key": key +"/compute:alpha/TargetInstanceList/warning/data/datum/value": value +"/compute:alpha/TargetInstanceList/warning/message": message +"/compute:alpha/TargetInstancesScopedList": target_instances_scoped_list +"/compute:alpha/TargetInstancesScopedList/targetInstances": target_instances +"/compute:alpha/TargetInstancesScopedList/targetInstances/target_instance": target_instance +"/compute:alpha/TargetInstancesScopedList/warning": warning +"/compute:alpha/TargetInstancesScopedList/warning/code": code +"/compute:alpha/TargetInstancesScopedList/warning/data": data +"/compute:alpha/TargetInstancesScopedList/warning/data/datum": datum +"/compute:alpha/TargetInstancesScopedList/warning/data/datum/key": key +"/compute:alpha/TargetInstancesScopedList/warning/data/datum/value": value +"/compute:alpha/TargetInstancesScopedList/warning/message": message +"/compute:alpha/TargetPool": target_pool +"/compute:alpha/TargetPool/backupPool": backup_pool +"/compute:alpha/TargetPool/creationTimestamp": creation_timestamp +"/compute:alpha/TargetPool/description": description +"/compute:alpha/TargetPool/failoverRatio": failover_ratio +"/compute:alpha/TargetPool/healthChecks": health_checks +"/compute:alpha/TargetPool/healthChecks/health_check": health_check +"/compute:alpha/TargetPool/id": id +"/compute:alpha/TargetPool/instances": instances +"/compute:alpha/TargetPool/instances/instance": instance +"/compute:alpha/TargetPool/kind": kind +"/compute:alpha/TargetPool/name": name +"/compute:alpha/TargetPool/region": region +"/compute:alpha/TargetPool/selfLink": self_link +"/compute:alpha/TargetPool/sessionAffinity": session_affinity +"/compute:alpha/TargetPoolAggregatedList": target_pool_aggregated_list +"/compute:alpha/TargetPoolAggregatedList/id": id +"/compute:alpha/TargetPoolAggregatedList/items": items +"/compute:alpha/TargetPoolAggregatedList/items/item": item +"/compute:alpha/TargetPoolAggregatedList/kind": kind +"/compute:alpha/TargetPoolAggregatedList/nextPageToken": next_page_token +"/compute:alpha/TargetPoolAggregatedList/selfLink": self_link +"/compute:alpha/TargetPoolAggregatedList/warning": warning +"/compute:alpha/TargetPoolAggregatedList/warning/code": code +"/compute:alpha/TargetPoolAggregatedList/warning/data": data +"/compute:alpha/TargetPoolAggregatedList/warning/data/datum": datum +"/compute:alpha/TargetPoolAggregatedList/warning/data/datum/key": key +"/compute:alpha/TargetPoolAggregatedList/warning/data/datum/value": value +"/compute:alpha/TargetPoolAggregatedList/warning/message": message +"/compute:alpha/TargetPoolInstanceHealth": target_pool_instance_health +"/compute:alpha/TargetPoolInstanceHealth/healthStatus": health_status +"/compute:alpha/TargetPoolInstanceHealth/healthStatus/health_status": health_status +"/compute:alpha/TargetPoolInstanceHealth/kind": kind +"/compute:alpha/TargetPoolList": target_pool_list +"/compute:alpha/TargetPoolList/id": id +"/compute:alpha/TargetPoolList/items": items +"/compute:alpha/TargetPoolList/items/item": item +"/compute:alpha/TargetPoolList/kind": kind +"/compute:alpha/TargetPoolList/nextPageToken": next_page_token +"/compute:alpha/TargetPoolList/selfLink": self_link +"/compute:alpha/TargetPoolList/warning": warning +"/compute:alpha/TargetPoolList/warning/code": code +"/compute:alpha/TargetPoolList/warning/data": data +"/compute:alpha/TargetPoolList/warning/data/datum": datum +"/compute:alpha/TargetPoolList/warning/data/datum/key": key +"/compute:alpha/TargetPoolList/warning/data/datum/value": value +"/compute:alpha/TargetPoolList/warning/message": message +"/compute:alpha/TargetPoolsAddHealthCheckRequest": target_pools_add_health_check_request +"/compute:alpha/TargetPoolsAddHealthCheckRequest/healthChecks": health_checks +"/compute:alpha/TargetPoolsAddHealthCheckRequest/healthChecks/health_check": health_check +"/compute:alpha/TargetPoolsAddInstanceRequest": target_pools_add_instance_request +"/compute:alpha/TargetPoolsAddInstanceRequest/instances": instances +"/compute:alpha/TargetPoolsAddInstanceRequest/instances/instance": instance +"/compute:alpha/TargetPoolsRemoveHealthCheckRequest": target_pools_remove_health_check_request +"/compute:alpha/TargetPoolsRemoveHealthCheckRequest/healthChecks": health_checks +"/compute:alpha/TargetPoolsRemoveHealthCheckRequest/healthChecks/health_check": health_check +"/compute:alpha/TargetPoolsRemoveInstanceRequest": target_pools_remove_instance_request +"/compute:alpha/TargetPoolsRemoveInstanceRequest/instances": instances +"/compute:alpha/TargetPoolsRemoveInstanceRequest/instances/instance": instance +"/compute:alpha/TargetPoolsScopedList": target_pools_scoped_list +"/compute:alpha/TargetPoolsScopedList/targetPools": target_pools +"/compute:alpha/TargetPoolsScopedList/targetPools/target_pool": target_pool +"/compute:alpha/TargetPoolsScopedList/warning": warning +"/compute:alpha/TargetPoolsScopedList/warning/code": code +"/compute:alpha/TargetPoolsScopedList/warning/data": data +"/compute:alpha/TargetPoolsScopedList/warning/data/datum": datum +"/compute:alpha/TargetPoolsScopedList/warning/data/datum/key": key +"/compute:alpha/TargetPoolsScopedList/warning/data/datum/value": value +"/compute:alpha/TargetPoolsScopedList/warning/message": message +"/compute:alpha/TargetReference": target_reference +"/compute:alpha/TargetReference/target": target +"/compute:alpha/TargetSslProxiesSetBackendServiceRequest": target_ssl_proxies_set_backend_service_request +"/compute:alpha/TargetSslProxiesSetBackendServiceRequest/service": service +"/compute:alpha/TargetSslProxiesSetProxyHeaderRequest": target_ssl_proxies_set_proxy_header_request +"/compute:alpha/TargetSslProxiesSetProxyHeaderRequest/proxyHeader": proxy_header +"/compute:alpha/TargetSslProxiesSetSslCertificatesRequest": target_ssl_proxies_set_ssl_certificates_request +"/compute:alpha/TargetSslProxiesSetSslCertificatesRequest/sslCertificates": ssl_certificates +"/compute:alpha/TargetSslProxiesSetSslCertificatesRequest/sslCertificates/ssl_certificate": ssl_certificate +"/compute:alpha/TargetSslProxy": target_ssl_proxy +"/compute:alpha/TargetSslProxy/clientSslPolicy": client_ssl_policy +"/compute:alpha/TargetSslProxy/creationTimestamp": creation_timestamp +"/compute:alpha/TargetSslProxy/description": description +"/compute:alpha/TargetSslProxy/id": id +"/compute:alpha/TargetSslProxy/kind": kind +"/compute:alpha/TargetSslProxy/name": name +"/compute:alpha/TargetSslProxy/proxyHeader": proxy_header +"/compute:alpha/TargetSslProxy/selfLink": self_link +"/compute:alpha/TargetSslProxy/service": service +"/compute:alpha/TargetSslProxy/sslCertificates": ssl_certificates +"/compute:alpha/TargetSslProxy/sslCertificates/ssl_certificate": ssl_certificate +"/compute:alpha/TargetSslProxyList": target_ssl_proxy_list +"/compute:alpha/TargetSslProxyList/id": id +"/compute:alpha/TargetSslProxyList/items": items +"/compute:alpha/TargetSslProxyList/items/item": item +"/compute:alpha/TargetSslProxyList/kind": kind +"/compute:alpha/TargetSslProxyList/nextPageToken": next_page_token +"/compute:alpha/TargetSslProxyList/selfLink": self_link +"/compute:alpha/TargetSslProxyList/warning": warning +"/compute:alpha/TargetSslProxyList/warning/code": code +"/compute:alpha/TargetSslProxyList/warning/data": data +"/compute:alpha/TargetSslProxyList/warning/data/datum": datum +"/compute:alpha/TargetSslProxyList/warning/data/datum/key": key +"/compute:alpha/TargetSslProxyList/warning/data/datum/value": value +"/compute:alpha/TargetSslProxyList/warning/message": message +"/compute:alpha/TargetTcpProxiesSetBackendServiceRequest": target_tcp_proxies_set_backend_service_request +"/compute:alpha/TargetTcpProxiesSetBackendServiceRequest/service": service +"/compute:alpha/TargetTcpProxiesSetProxyHeaderRequest": target_tcp_proxies_set_proxy_header_request +"/compute:alpha/TargetTcpProxiesSetProxyHeaderRequest/proxyHeader": proxy_header +"/compute:alpha/TargetTcpProxy": target_tcp_proxy +"/compute:alpha/TargetTcpProxy/creationTimestamp": creation_timestamp +"/compute:alpha/TargetTcpProxy/description": description +"/compute:alpha/TargetTcpProxy/id": id +"/compute:alpha/TargetTcpProxy/kind": kind +"/compute:alpha/TargetTcpProxy/name": name +"/compute:alpha/TargetTcpProxy/proxyHeader": proxy_header +"/compute:alpha/TargetTcpProxy/selfLink": self_link +"/compute:alpha/TargetTcpProxy/service": service +"/compute:alpha/TargetTcpProxyList": target_tcp_proxy_list +"/compute:alpha/TargetTcpProxyList/id": id +"/compute:alpha/TargetTcpProxyList/items": items +"/compute:alpha/TargetTcpProxyList/items/item": item +"/compute:alpha/TargetTcpProxyList/kind": kind +"/compute:alpha/TargetTcpProxyList/nextPageToken": next_page_token +"/compute:alpha/TargetTcpProxyList/selfLink": self_link +"/compute:alpha/TargetTcpProxyList/warning": warning +"/compute:alpha/TargetTcpProxyList/warning/code": code +"/compute:alpha/TargetTcpProxyList/warning/data": data +"/compute:alpha/TargetTcpProxyList/warning/data/datum": datum +"/compute:alpha/TargetTcpProxyList/warning/data/datum/key": key +"/compute:alpha/TargetTcpProxyList/warning/data/datum/value": value +"/compute:alpha/TargetTcpProxyList/warning/message": message +"/compute:alpha/TargetVpnGateway": target_vpn_gateway +"/compute:alpha/TargetVpnGateway/creationTimestamp": creation_timestamp +"/compute:alpha/TargetVpnGateway/description": description +"/compute:alpha/TargetVpnGateway/forwardingRules": forwarding_rules +"/compute:alpha/TargetVpnGateway/forwardingRules/forwarding_rule": forwarding_rule +"/compute:alpha/TargetVpnGateway/id": id +"/compute:alpha/TargetVpnGateway/kind": kind +"/compute:alpha/TargetVpnGateway/name": name +"/compute:alpha/TargetVpnGateway/network": network +"/compute:alpha/TargetVpnGateway/region": region +"/compute:alpha/TargetVpnGateway/selfLink": self_link +"/compute:alpha/TargetVpnGateway/status": status +"/compute:alpha/TargetVpnGateway/tunnels": tunnels +"/compute:alpha/TargetVpnGateway/tunnels/tunnel": tunnel +"/compute:alpha/TargetVpnGatewayAggregatedList": target_vpn_gateway_aggregated_list +"/compute:alpha/TargetVpnGatewayAggregatedList/id": id +"/compute:alpha/TargetVpnGatewayAggregatedList/items": items +"/compute:alpha/TargetVpnGatewayAggregatedList/items/item": item +"/compute:alpha/TargetVpnGatewayAggregatedList/kind": kind +"/compute:alpha/TargetVpnGatewayAggregatedList/nextPageToken": next_page_token +"/compute:alpha/TargetVpnGatewayAggregatedList/selfLink": self_link +"/compute:alpha/TargetVpnGatewayAggregatedList/warning": warning +"/compute:alpha/TargetVpnGatewayAggregatedList/warning/code": code +"/compute:alpha/TargetVpnGatewayAggregatedList/warning/data": data +"/compute:alpha/TargetVpnGatewayAggregatedList/warning/data/datum": datum +"/compute:alpha/TargetVpnGatewayAggregatedList/warning/data/datum/key": key +"/compute:alpha/TargetVpnGatewayAggregatedList/warning/data/datum/value": value +"/compute:alpha/TargetVpnGatewayAggregatedList/warning/message": message +"/compute:alpha/TargetVpnGatewayList": target_vpn_gateway_list +"/compute:alpha/TargetVpnGatewayList/id": id +"/compute:alpha/TargetVpnGatewayList/items": items +"/compute:alpha/TargetVpnGatewayList/items/item": item +"/compute:alpha/TargetVpnGatewayList/kind": kind +"/compute:alpha/TargetVpnGatewayList/nextPageToken": next_page_token +"/compute:alpha/TargetVpnGatewayList/selfLink": self_link +"/compute:alpha/TargetVpnGatewayList/warning": warning +"/compute:alpha/TargetVpnGatewayList/warning/code": code +"/compute:alpha/TargetVpnGatewayList/warning/data": data +"/compute:alpha/TargetVpnGatewayList/warning/data/datum": datum +"/compute:alpha/TargetVpnGatewayList/warning/data/datum/key": key +"/compute:alpha/TargetVpnGatewayList/warning/data/datum/value": value +"/compute:alpha/TargetVpnGatewayList/warning/message": message +"/compute:alpha/TargetVpnGatewaysScopedList": target_vpn_gateways_scoped_list +"/compute:alpha/TargetVpnGatewaysScopedList/targetVpnGateways": target_vpn_gateways +"/compute:alpha/TargetVpnGatewaysScopedList/targetVpnGateways/target_vpn_gateway": target_vpn_gateway +"/compute:alpha/TargetVpnGatewaysScopedList/warning": warning +"/compute:alpha/TargetVpnGatewaysScopedList/warning/code": code +"/compute:alpha/TargetVpnGatewaysScopedList/warning/data": data +"/compute:alpha/TargetVpnGatewaysScopedList/warning/data/datum": datum +"/compute:alpha/TargetVpnGatewaysScopedList/warning/data/datum/key": key +"/compute:alpha/TargetVpnGatewaysScopedList/warning/data/datum/value": value +"/compute:alpha/TargetVpnGatewaysScopedList/warning/message": message +"/compute:alpha/TestFailure": test_failure +"/compute:alpha/TestFailure/actualService": actual_service +"/compute:alpha/TestFailure/expectedService": expected_service +"/compute:alpha/TestFailure/host": host +"/compute:alpha/TestFailure/path": path +"/compute:alpha/TestPermissionsRequest": test_permissions_request +"/compute:alpha/TestPermissionsRequest/permissions": permissions +"/compute:alpha/TestPermissionsRequest/permissions/permission": permission +"/compute:alpha/TestPermissionsResponse": test_permissions_response +"/compute:alpha/TestPermissionsResponse/permissions": permissions +"/compute:alpha/TestPermissionsResponse/permissions/permission": permission +"/compute:alpha/UDPHealthCheck": udp_health_check +"/compute:alpha/UDPHealthCheck/port": port +"/compute:alpha/UDPHealthCheck/portName": port_name +"/compute:alpha/UDPHealthCheck/request": request +"/compute:alpha/UDPHealthCheck/response": response +"/compute:alpha/UrlMap": url_map +"/compute:alpha/UrlMap/creationTimestamp": creation_timestamp +"/compute:alpha/UrlMap/defaultService": default_service +"/compute:alpha/UrlMap/description": description +"/compute:alpha/UrlMap/fingerprint": fingerprint +"/compute:alpha/UrlMap/hostRules": host_rules +"/compute:alpha/UrlMap/hostRules/host_rule": host_rule +"/compute:alpha/UrlMap/id": id +"/compute:alpha/UrlMap/kind": kind +"/compute:alpha/UrlMap/name": name +"/compute:alpha/UrlMap/pathMatchers": path_matchers +"/compute:alpha/UrlMap/pathMatchers/path_matcher": path_matcher +"/compute:alpha/UrlMap/selfLink": self_link +"/compute:alpha/UrlMap/tests": tests +"/compute:alpha/UrlMap/tests/test": test +"/compute:alpha/UrlMapList": url_map_list +"/compute:alpha/UrlMapList/id": id +"/compute:alpha/UrlMapList/items": items +"/compute:alpha/UrlMapList/items/item": item +"/compute:alpha/UrlMapList/kind": kind +"/compute:alpha/UrlMapList/nextPageToken": next_page_token +"/compute:alpha/UrlMapList/selfLink": self_link +"/compute:alpha/UrlMapList/warning": warning +"/compute:alpha/UrlMapList/warning/code": code +"/compute:alpha/UrlMapList/warning/data": data +"/compute:alpha/UrlMapList/warning/data/datum": datum +"/compute:alpha/UrlMapList/warning/data/datum/key": key +"/compute:alpha/UrlMapList/warning/data/datum/value": value +"/compute:alpha/UrlMapList/warning/message": message +"/compute:alpha/UrlMapReference": url_map_reference +"/compute:alpha/UrlMapReference/urlMap": url_map +"/compute:alpha/UrlMapTest": url_map_test +"/compute:alpha/UrlMapTest/description": description +"/compute:alpha/UrlMapTest/host": host +"/compute:alpha/UrlMapTest/path": path +"/compute:alpha/UrlMapTest/service": service +"/compute:alpha/UrlMapValidationResult": url_map_validation_result +"/compute:alpha/UrlMapValidationResult/loadErrors": load_errors +"/compute:alpha/UrlMapValidationResult/loadErrors/load_error": load_error +"/compute:alpha/UrlMapValidationResult/loadSucceeded": load_succeeded +"/compute:alpha/UrlMapValidationResult/testFailures": test_failures +"/compute:alpha/UrlMapValidationResult/testFailures/test_failure": test_failure +"/compute:alpha/UrlMapValidationResult/testPassed": test_passed +"/compute:alpha/UrlMapsValidateRequest": url_maps_validate_request +"/compute:alpha/UrlMapsValidateRequest/resource": resource +"/compute:alpha/UrlMapsValidateResponse": url_maps_validate_response +"/compute:alpha/UrlMapsValidateResponse/result": result +"/compute:alpha/UsageExportLocation": usage_export_location +"/compute:alpha/UsageExportLocation/bucketName": bucket_name +"/compute:alpha/UsageExportLocation/reportNamePrefix": report_name_prefix +"/compute:alpha/VpnTunnel": vpn_tunnel +"/compute:alpha/VpnTunnel/creationTimestamp": creation_timestamp +"/compute:alpha/VpnTunnel/description": description +"/compute:alpha/VpnTunnel/detailedStatus": detailed_status +"/compute:alpha/VpnTunnel/id": id +"/compute:alpha/VpnTunnel/ikeVersion": ike_version +"/compute:alpha/VpnTunnel/kind": kind +"/compute:alpha/VpnTunnel/labelFingerprint": label_fingerprint +"/compute:alpha/VpnTunnel/labels": labels +"/compute:alpha/VpnTunnel/labels/label": label +"/compute:alpha/VpnTunnel/localTrafficSelector": local_traffic_selector +"/compute:alpha/VpnTunnel/localTrafficSelector/local_traffic_selector": local_traffic_selector +"/compute:alpha/VpnTunnel/name": name +"/compute:alpha/VpnTunnel/peerIp": peer_ip +"/compute:alpha/VpnTunnel/region": region +"/compute:alpha/VpnTunnel/remoteTrafficSelector": remote_traffic_selector +"/compute:alpha/VpnTunnel/remoteTrafficSelector/remote_traffic_selector": remote_traffic_selector +"/compute:alpha/VpnTunnel/router": router +"/compute:alpha/VpnTunnel/selfLink": self_link +"/compute:alpha/VpnTunnel/sharedSecret": shared_secret +"/compute:alpha/VpnTunnel/sharedSecretHash": shared_secret_hash +"/compute:alpha/VpnTunnel/status": status +"/compute:alpha/VpnTunnel/targetVpnGateway": target_vpn_gateway +"/compute:alpha/VpnTunnelAggregatedList": vpn_tunnel_aggregated_list +"/compute:alpha/VpnTunnelAggregatedList/id": id +"/compute:alpha/VpnTunnelAggregatedList/items": items +"/compute:alpha/VpnTunnelAggregatedList/items/item": item +"/compute:alpha/VpnTunnelAggregatedList/kind": kind +"/compute:alpha/VpnTunnelAggregatedList/nextPageToken": next_page_token +"/compute:alpha/VpnTunnelAggregatedList/selfLink": self_link +"/compute:alpha/VpnTunnelAggregatedList/warning": warning +"/compute:alpha/VpnTunnelAggregatedList/warning/code": code +"/compute:alpha/VpnTunnelAggregatedList/warning/data": data +"/compute:alpha/VpnTunnelAggregatedList/warning/data/datum": datum +"/compute:alpha/VpnTunnelAggregatedList/warning/data/datum/key": key +"/compute:alpha/VpnTunnelAggregatedList/warning/data/datum/value": value +"/compute:alpha/VpnTunnelAggregatedList/warning/message": message +"/compute:alpha/VpnTunnelList": vpn_tunnel_list +"/compute:alpha/VpnTunnelList/id": id +"/compute:alpha/VpnTunnelList/items": items +"/compute:alpha/VpnTunnelList/items/item": item +"/compute:alpha/VpnTunnelList/kind": kind +"/compute:alpha/VpnTunnelList/nextPageToken": next_page_token +"/compute:alpha/VpnTunnelList/selfLink": self_link +"/compute:alpha/VpnTunnelList/warning": warning +"/compute:alpha/VpnTunnelList/warning/code": code +"/compute:alpha/VpnTunnelList/warning/data": data +"/compute:alpha/VpnTunnelList/warning/data/datum": datum +"/compute:alpha/VpnTunnelList/warning/data/datum/key": key +"/compute:alpha/VpnTunnelList/warning/data/datum/value": value +"/compute:alpha/VpnTunnelList/warning/message": message +"/compute:alpha/VpnTunnelsScopedList": vpn_tunnels_scoped_list +"/compute:alpha/VpnTunnelsScopedList/vpnTunnels": vpn_tunnels +"/compute:alpha/VpnTunnelsScopedList/vpnTunnels/vpn_tunnel": vpn_tunnel +"/compute:alpha/VpnTunnelsScopedList/warning": warning +"/compute:alpha/VpnTunnelsScopedList/warning/code": code +"/compute:alpha/VpnTunnelsScopedList/warning/data": data +"/compute:alpha/VpnTunnelsScopedList/warning/data/datum": datum +"/compute:alpha/VpnTunnelsScopedList/warning/data/datum/key": key +"/compute:alpha/VpnTunnelsScopedList/warning/data/datum/value": value +"/compute:alpha/VpnTunnelsScopedList/warning/message": message +"/compute:alpha/XpnHostList": xpn_host_list +"/compute:alpha/XpnHostList/id": id +"/compute:alpha/XpnHostList/items": items +"/compute:alpha/XpnHostList/items/item": item +"/compute:alpha/XpnHostList/kind": kind +"/compute:alpha/XpnHostList/nextPageToken": next_page_token +"/compute:alpha/XpnHostList/selfLink": self_link +"/compute:alpha/XpnHostList/warning": warning +"/compute:alpha/XpnHostList/warning/code": code +"/compute:alpha/XpnHostList/warning/data": data +"/compute:alpha/XpnHostList/warning/data/datum": datum +"/compute:alpha/XpnHostList/warning/data/datum/key": key +"/compute:alpha/XpnHostList/warning/data/datum/value": value +"/compute:alpha/XpnHostList/warning/message": message +"/compute:alpha/XpnResourceId": xpn_resource_id +"/compute:alpha/XpnResourceId/id": id +"/compute:alpha/XpnResourceId/type": type +"/compute:alpha/Zone": zone +"/compute:alpha/Zone/availableCpuPlatforms": available_cpu_platforms +"/compute:alpha/Zone/availableCpuPlatforms/available_cpu_platform": available_cpu_platform +"/compute:alpha/Zone/creationTimestamp": creation_timestamp +"/compute:alpha/Zone/deprecated": deprecated +"/compute:alpha/Zone/description": description +"/compute:alpha/Zone/id": id +"/compute:alpha/Zone/kind": kind +"/compute:alpha/Zone/name": name +"/compute:alpha/Zone/region": region +"/compute:alpha/Zone/selfLink": self_link +"/compute:alpha/Zone/status": status +"/compute:alpha/ZoneList": zone_list +"/compute:alpha/ZoneList/id": id +"/compute:alpha/ZoneList/items": items +"/compute:alpha/ZoneList/items/item": item +"/compute:alpha/ZoneList/kind": kind +"/compute:alpha/ZoneList/nextPageToken": next_page_token +"/compute:alpha/ZoneList/selfLink": self_link +"/compute:alpha/ZoneList/warning": warning +"/compute:alpha/ZoneList/warning/code": code +"/compute:alpha/ZoneList/warning/data": data +"/compute:alpha/ZoneList/warning/data/datum": datum +"/compute:alpha/ZoneList/warning/data/datum/key": key +"/compute:alpha/ZoneList/warning/data/datum/value": value +"/compute:alpha/ZoneList/warning/message": message +"/compute:alpha/ZoneSetLabelsRequest": zone_set_labels_request +"/compute:alpha/ZoneSetLabelsRequest/labelFingerprint": label_fingerprint +"/compute:alpha/ZoneSetLabelsRequest/labels": labels +"/compute:alpha/ZoneSetLabelsRequest/labels/label": label +"/compute:alpha/compute.acceleratorTypes.aggregatedList": aggregated_accelerator_type_list +"/compute:alpha/compute.acceleratorTypes.aggregatedList/filter": filter +"/compute:alpha/compute.acceleratorTypes.aggregatedList/maxResults": max_results +"/compute:alpha/compute.acceleratorTypes.aggregatedList/orderBy": order_by +"/compute:alpha/compute.acceleratorTypes.aggregatedList/pageToken": page_token +"/compute:alpha/compute.acceleratorTypes.aggregatedList/project": project +"/compute:alpha/compute.acceleratorTypes.get": get_accelerator_type +"/compute:alpha/compute.acceleratorTypes.get/acceleratorType": accelerator_type +"/compute:alpha/compute.acceleratorTypes.get/project": project +"/compute:alpha/compute.acceleratorTypes.get/zone": zone +"/compute:alpha/compute.acceleratorTypes.list": list_accelerator_types +"/compute:alpha/compute.acceleratorTypes.list/filter": filter +"/compute:alpha/compute.acceleratorTypes.list/maxResults": max_results +"/compute:alpha/compute.acceleratorTypes.list/orderBy": order_by +"/compute:alpha/compute.acceleratorTypes.list/pageToken": page_token +"/compute:alpha/compute.acceleratorTypes.list/project": project +"/compute:alpha/compute.acceleratorTypes.list/zone": zone +"/compute:alpha/compute.addresses.aggregatedList": aggregated_address_list +"/compute:alpha/compute.addresses.aggregatedList/filter": filter +"/compute:alpha/compute.addresses.aggregatedList/maxResults": max_results +"/compute:alpha/compute.addresses.aggregatedList/orderBy": order_by +"/compute:alpha/compute.addresses.aggregatedList/pageToken": page_token +"/compute:alpha/compute.addresses.aggregatedList/project": project +"/compute:alpha/compute.addresses.delete": delete_address +"/compute:alpha/compute.addresses.delete/address": address +"/compute:alpha/compute.addresses.delete/project": project +"/compute:alpha/compute.addresses.delete/region": region +"/compute:alpha/compute.addresses.delete/requestId": request_id +"/compute:alpha/compute.addresses.get": get_address +"/compute:alpha/compute.addresses.get/address": address +"/compute:alpha/compute.addresses.get/project": project +"/compute:alpha/compute.addresses.get/region": region +"/compute:alpha/compute.addresses.insert": insert_address +"/compute:alpha/compute.addresses.insert/project": project +"/compute:alpha/compute.addresses.insert/region": region +"/compute:alpha/compute.addresses.insert/requestId": request_id +"/compute:alpha/compute.addresses.list": list_addresses +"/compute:alpha/compute.addresses.list/filter": filter +"/compute:alpha/compute.addresses.list/maxResults": max_results +"/compute:alpha/compute.addresses.list/orderBy": order_by +"/compute:alpha/compute.addresses.list/pageToken": page_token +"/compute:alpha/compute.addresses.list/project": project +"/compute:alpha/compute.addresses.list/region": region +"/compute:alpha/compute.addresses.setLabels": set_address_labels +"/compute:alpha/compute.addresses.setLabels/project": project +"/compute:alpha/compute.addresses.setLabels/region": region +"/compute:alpha/compute.addresses.setLabels/requestId": request_id +"/compute:alpha/compute.addresses.setLabels/resource": resource +"/compute:alpha/compute.addresses.testIamPermissions": test_address_iam_permissions +"/compute:alpha/compute.addresses.testIamPermissions/project": project +"/compute:alpha/compute.addresses.testIamPermissions/region": region +"/compute:alpha/compute.addresses.testIamPermissions/resource": resource +"/compute:alpha/compute.autoscalers.aggregatedList": aggregated_autoscaler_list +"/compute:alpha/compute.autoscalers.aggregatedList/filter": filter +"/compute:alpha/compute.autoscalers.aggregatedList/maxResults": max_results +"/compute:alpha/compute.autoscalers.aggregatedList/orderBy": order_by +"/compute:alpha/compute.autoscalers.aggregatedList/pageToken": page_token +"/compute:alpha/compute.autoscalers.aggregatedList/project": project +"/compute:alpha/compute.autoscalers.delete": delete_autoscaler +"/compute:alpha/compute.autoscalers.delete/autoscaler": autoscaler +"/compute:alpha/compute.autoscalers.delete/project": project +"/compute:alpha/compute.autoscalers.delete/requestId": request_id +"/compute:alpha/compute.autoscalers.delete/zone": zone +"/compute:alpha/compute.autoscalers.get": get_autoscaler +"/compute:alpha/compute.autoscalers.get/autoscaler": autoscaler +"/compute:alpha/compute.autoscalers.get/project": project +"/compute:alpha/compute.autoscalers.get/zone": zone +"/compute:alpha/compute.autoscalers.insert": insert_autoscaler +"/compute:alpha/compute.autoscalers.insert/project": project +"/compute:alpha/compute.autoscalers.insert/requestId": request_id +"/compute:alpha/compute.autoscalers.insert/zone": zone +"/compute:alpha/compute.autoscalers.list": list_autoscalers +"/compute:alpha/compute.autoscalers.list/filter": filter +"/compute:alpha/compute.autoscalers.list/maxResults": max_results +"/compute:alpha/compute.autoscalers.list/orderBy": order_by +"/compute:alpha/compute.autoscalers.list/pageToken": page_token +"/compute:alpha/compute.autoscalers.list/project": project +"/compute:alpha/compute.autoscalers.list/zone": zone +"/compute:alpha/compute.autoscalers.patch": patch_autoscaler +"/compute:alpha/compute.autoscalers.patch/autoscaler": autoscaler +"/compute:alpha/compute.autoscalers.patch/project": project +"/compute:alpha/compute.autoscalers.patch/requestId": request_id +"/compute:alpha/compute.autoscalers.patch/zone": zone +"/compute:alpha/compute.autoscalers.testIamPermissions": test_autoscaler_iam_permissions +"/compute:alpha/compute.autoscalers.testIamPermissions/project": project +"/compute:alpha/compute.autoscalers.testIamPermissions/resource": resource +"/compute:alpha/compute.autoscalers.testIamPermissions/zone": zone +"/compute:alpha/compute.autoscalers.update": update_autoscaler +"/compute:alpha/compute.autoscalers.update/autoscaler": autoscaler +"/compute:alpha/compute.autoscalers.update/project": project +"/compute:alpha/compute.autoscalers.update/requestId": request_id +"/compute:alpha/compute.autoscalers.update/zone": zone +"/compute:alpha/compute.backendBuckets.addSignedUrlKey": add_backend_bucket_signed_url_key +"/compute:alpha/compute.backendBuckets.addSignedUrlKey/backendBucket": backend_bucket +"/compute:alpha/compute.backendBuckets.addSignedUrlKey/project": project +"/compute:alpha/compute.backendBuckets.addSignedUrlKey/requestId": request_id +"/compute:alpha/compute.backendBuckets.delete": delete_backend_bucket +"/compute:alpha/compute.backendBuckets.delete/backendBucket": backend_bucket +"/compute:alpha/compute.backendBuckets.delete/project": project +"/compute:alpha/compute.backendBuckets.delete/requestId": request_id +"/compute:alpha/compute.backendBuckets.deleteSignedUrlKey": delete_backend_bucket_signed_url_key +"/compute:alpha/compute.backendBuckets.deleteSignedUrlKey/backendBucket": backend_bucket +"/compute:alpha/compute.backendBuckets.deleteSignedUrlKey/keyName": key_name +"/compute:alpha/compute.backendBuckets.deleteSignedUrlKey/project": project +"/compute:alpha/compute.backendBuckets.deleteSignedUrlKey/requestId": request_id +"/compute:alpha/compute.backendBuckets.get": get_backend_bucket +"/compute:alpha/compute.backendBuckets.get/backendBucket": backend_bucket +"/compute:alpha/compute.backendBuckets.get/project": project +"/compute:alpha/compute.backendBuckets.getIamPolicy": get_backend_bucket_iam_policy +"/compute:alpha/compute.backendBuckets.getIamPolicy/project": project +"/compute:alpha/compute.backendBuckets.getIamPolicy/resource": resource +"/compute:alpha/compute.backendBuckets.insert": insert_backend_bucket +"/compute:alpha/compute.backendBuckets.insert/project": project +"/compute:alpha/compute.backendBuckets.insert/requestId": request_id +"/compute:alpha/compute.backendBuckets.list": list_backend_buckets +"/compute:alpha/compute.backendBuckets.list/filter": filter +"/compute:alpha/compute.backendBuckets.list/maxResults": max_results +"/compute:alpha/compute.backendBuckets.list/orderBy": order_by +"/compute:alpha/compute.backendBuckets.list/pageToken": page_token +"/compute:alpha/compute.backendBuckets.list/project": project +"/compute:alpha/compute.backendBuckets.patch": patch_backend_bucket +"/compute:alpha/compute.backendBuckets.patch/backendBucket": backend_bucket +"/compute:alpha/compute.backendBuckets.patch/project": project +"/compute:alpha/compute.backendBuckets.patch/requestId": request_id +"/compute:alpha/compute.backendBuckets.setIamPolicy": set_backend_bucket_iam_policy +"/compute:alpha/compute.backendBuckets.setIamPolicy/project": project +"/compute:alpha/compute.backendBuckets.setIamPolicy/resource": resource +"/compute:alpha/compute.backendBuckets.testIamPermissions": test_backend_bucket_iam_permissions +"/compute:alpha/compute.backendBuckets.testIamPermissions/project": project +"/compute:alpha/compute.backendBuckets.testIamPermissions/resource": resource +"/compute:alpha/compute.backendBuckets.update": update_backend_bucket +"/compute:alpha/compute.backendBuckets.update/backendBucket": backend_bucket +"/compute:alpha/compute.backendBuckets.update/project": project +"/compute:alpha/compute.backendBuckets.update/requestId": request_id +"/compute:alpha/compute.backendServices.addSignedUrlKey": add_backend_service_signed_url_key +"/compute:alpha/compute.backendServices.addSignedUrlKey/backendService": backend_service +"/compute:alpha/compute.backendServices.addSignedUrlKey/project": project +"/compute:alpha/compute.backendServices.addSignedUrlKey/requestId": request_id +"/compute:alpha/compute.backendServices.aggregatedList": aggregated_backend_service_list +"/compute:alpha/compute.backendServices.aggregatedList/filter": filter +"/compute:alpha/compute.backendServices.aggregatedList/maxResults": max_results +"/compute:alpha/compute.backendServices.aggregatedList/orderBy": order_by +"/compute:alpha/compute.backendServices.aggregatedList/pageToken": page_token +"/compute:alpha/compute.backendServices.aggregatedList/project": project +"/compute:alpha/compute.backendServices.delete": delete_backend_service +"/compute:alpha/compute.backendServices.delete/backendService": backend_service +"/compute:alpha/compute.backendServices.delete/project": project +"/compute:alpha/compute.backendServices.delete/requestId": request_id +"/compute:alpha/compute.backendServices.deleteSignedUrlKey": delete_backend_service_signed_url_key +"/compute:alpha/compute.backendServices.deleteSignedUrlKey/backendService": backend_service +"/compute:alpha/compute.backendServices.deleteSignedUrlKey/keyName": key_name +"/compute:alpha/compute.backendServices.deleteSignedUrlKey/project": project +"/compute:alpha/compute.backendServices.deleteSignedUrlKey/requestId": request_id +"/compute:alpha/compute.backendServices.get": get_backend_service +"/compute:alpha/compute.backendServices.get/backendService": backend_service +"/compute:alpha/compute.backendServices.get/project": project +"/compute:alpha/compute.backendServices.getHealth": get_backend_service_health +"/compute:alpha/compute.backendServices.getHealth/backendService": backend_service +"/compute:alpha/compute.backendServices.getHealth/project": project +"/compute:alpha/compute.backendServices.insert": insert_backend_service +"/compute:alpha/compute.backendServices.insert/project": project +"/compute:alpha/compute.backendServices.insert/requestId": request_id +"/compute:alpha/compute.backendServices.list": list_backend_services +"/compute:alpha/compute.backendServices.list/filter": filter +"/compute:alpha/compute.backendServices.list/maxResults": max_results +"/compute:alpha/compute.backendServices.list/orderBy": order_by +"/compute:alpha/compute.backendServices.list/pageToken": page_token +"/compute:alpha/compute.backendServices.list/project": project +"/compute:alpha/compute.backendServices.patch": patch_backend_service +"/compute:alpha/compute.backendServices.patch/backendService": backend_service +"/compute:alpha/compute.backendServices.patch/project": project +"/compute:alpha/compute.backendServices.patch/requestId": request_id +"/compute:alpha/compute.backendServices.setSecurityPolicy": set_backend_service_security_policy +"/compute:alpha/compute.backendServices.setSecurityPolicy/backendService": backend_service +"/compute:alpha/compute.backendServices.setSecurityPolicy/project": project +"/compute:alpha/compute.backendServices.setSecurityPolicy/requestId": request_id +"/compute:alpha/compute.backendServices.testIamPermissions": test_backend_service_iam_permissions +"/compute:alpha/compute.backendServices.testIamPermissions/project": project +"/compute:alpha/compute.backendServices.testIamPermissions/resource": resource +"/compute:alpha/compute.backendServices.update": update_backend_service +"/compute:alpha/compute.backendServices.update/backendService": backend_service +"/compute:alpha/compute.backendServices.update/project": project +"/compute:alpha/compute.backendServices.update/requestId": request_id +"/compute:alpha/compute.clientSslPolicies.testIamPermissions": test_client_ssl_policy_iam_permissions +"/compute:alpha/compute.clientSslPolicies.testIamPermissions/project": project +"/compute:alpha/compute.clientSslPolicies.testIamPermissions/resource": resource +"/compute:alpha/compute.diskTypes.aggregatedList": aggregated_disk_type_list +"/compute:alpha/compute.diskTypes.aggregatedList/filter": filter +"/compute:alpha/compute.diskTypes.aggregatedList/maxResults": max_results +"/compute:alpha/compute.diskTypes.aggregatedList/orderBy": order_by +"/compute:alpha/compute.diskTypes.aggregatedList/pageToken": page_token +"/compute:alpha/compute.diskTypes.aggregatedList/project": project +"/compute:alpha/compute.diskTypes.get": get_disk_type +"/compute:alpha/compute.diskTypes.get/diskType": disk_type +"/compute:alpha/compute.diskTypes.get/project": project +"/compute:alpha/compute.diskTypes.get/zone": zone +"/compute:alpha/compute.diskTypes.list": list_disk_types +"/compute:alpha/compute.diskTypes.list/filter": filter +"/compute:alpha/compute.diskTypes.list/maxResults": max_results +"/compute:alpha/compute.diskTypes.list/orderBy": order_by +"/compute:alpha/compute.diskTypes.list/pageToken": page_token +"/compute:alpha/compute.diskTypes.list/project": project +"/compute:alpha/compute.diskTypes.list/zone": zone +"/compute:alpha/compute.disks.aggregatedList": aggregated_disk_list +"/compute:alpha/compute.disks.aggregatedList/filter": filter +"/compute:alpha/compute.disks.aggregatedList/maxResults": max_results +"/compute:alpha/compute.disks.aggregatedList/orderBy": order_by +"/compute:alpha/compute.disks.aggregatedList/pageToken": page_token +"/compute:alpha/compute.disks.aggregatedList/project": project +"/compute:alpha/compute.disks.createSnapshot": create_disk_snapshot +"/compute:alpha/compute.disks.createSnapshot/disk": disk +"/compute:alpha/compute.disks.createSnapshot/guestFlush": guest_flush +"/compute:alpha/compute.disks.createSnapshot/project": project +"/compute:alpha/compute.disks.createSnapshot/requestId": request_id +"/compute:alpha/compute.disks.createSnapshot/zone": zone +"/compute:alpha/compute.disks.delete": delete_disk +"/compute:alpha/compute.disks.delete/disk": disk +"/compute:alpha/compute.disks.delete/project": project +"/compute:alpha/compute.disks.delete/requestId": request_id +"/compute:alpha/compute.disks.delete/zone": zone +"/compute:alpha/compute.disks.get": get_disk +"/compute:alpha/compute.disks.get/disk": disk +"/compute:alpha/compute.disks.get/project": project +"/compute:alpha/compute.disks.get/zone": zone +"/compute:alpha/compute.disks.getIamPolicy": get_disk_iam_policy +"/compute:alpha/compute.disks.getIamPolicy/project": project +"/compute:alpha/compute.disks.getIamPolicy/resource": resource +"/compute:alpha/compute.disks.getIamPolicy/zone": zone +"/compute:alpha/compute.disks.insert": insert_disk +"/compute:alpha/compute.disks.insert/project": project +"/compute:alpha/compute.disks.insert/requestId": request_id +"/compute:alpha/compute.disks.insert/sourceImage": source_image +"/compute:alpha/compute.disks.insert/zone": zone +"/compute:alpha/compute.disks.list": list_disks +"/compute:alpha/compute.disks.list/filter": filter +"/compute:alpha/compute.disks.list/maxResults": max_results +"/compute:alpha/compute.disks.list/orderBy": order_by +"/compute:alpha/compute.disks.list/pageToken": page_token +"/compute:alpha/compute.disks.list/project": project +"/compute:alpha/compute.disks.list/zone": zone +"/compute:alpha/compute.disks.resize": resize_disk +"/compute:alpha/compute.disks.resize/disk": disk +"/compute:alpha/compute.disks.resize/project": project +"/compute:alpha/compute.disks.resize/requestId": request_id +"/compute:alpha/compute.disks.resize/zone": zone +"/compute:alpha/compute.disks.setIamPolicy": set_disk_iam_policy +"/compute:alpha/compute.disks.setIamPolicy/project": project +"/compute:alpha/compute.disks.setIamPolicy/resource": resource +"/compute:alpha/compute.disks.setIamPolicy/zone": zone +"/compute:alpha/compute.disks.setLabels": set_disk_labels +"/compute:alpha/compute.disks.setLabels/project": project +"/compute:alpha/compute.disks.setLabels/requestId": request_id +"/compute:alpha/compute.disks.setLabels/resource": resource +"/compute:alpha/compute.disks.setLabels/zone": zone +"/compute:alpha/compute.disks.testIamPermissions": test_disk_iam_permissions +"/compute:alpha/compute.disks.testIamPermissions/project": project +"/compute:alpha/compute.disks.testIamPermissions/resource": resource +"/compute:alpha/compute.disks.testIamPermissions/zone": zone +"/compute:alpha/compute.firewalls.delete": delete_firewall +"/compute:alpha/compute.firewalls.delete/firewall": firewall +"/compute:alpha/compute.firewalls.delete/project": project +"/compute:alpha/compute.firewalls.delete/requestId": request_id +"/compute:alpha/compute.firewalls.get": get_firewall +"/compute:alpha/compute.firewalls.get/firewall": firewall +"/compute:alpha/compute.firewalls.get/project": project +"/compute:alpha/compute.firewalls.insert": insert_firewall +"/compute:alpha/compute.firewalls.insert/project": project +"/compute:alpha/compute.firewalls.insert/requestId": request_id +"/compute:alpha/compute.firewalls.list": list_firewalls +"/compute:alpha/compute.firewalls.list/filter": filter +"/compute:alpha/compute.firewalls.list/maxResults": max_results +"/compute:alpha/compute.firewalls.list/orderBy": order_by +"/compute:alpha/compute.firewalls.list/pageToken": page_token +"/compute:alpha/compute.firewalls.list/project": project +"/compute:alpha/compute.firewalls.patch": patch_firewall +"/compute:alpha/compute.firewalls.patch/firewall": firewall +"/compute:alpha/compute.firewalls.patch/project": project +"/compute:alpha/compute.firewalls.patch/requestId": request_id +"/compute:alpha/compute.firewalls.testIamPermissions": test_firewall_iam_permissions +"/compute:alpha/compute.firewalls.testIamPermissions/project": project +"/compute:alpha/compute.firewalls.testIamPermissions/resource": resource +"/compute:alpha/compute.firewalls.update": update_firewall +"/compute:alpha/compute.firewalls.update/firewall": firewall +"/compute:alpha/compute.firewalls.update/project": project +"/compute:alpha/compute.firewalls.update/requestId": request_id +"/compute:alpha/compute.forwardingRules.aggregatedList": aggregated_forwarding_rule_list +"/compute:alpha/compute.forwardingRules.aggregatedList/filter": filter +"/compute:alpha/compute.forwardingRules.aggregatedList/maxResults": max_results +"/compute:alpha/compute.forwardingRules.aggregatedList/orderBy": order_by +"/compute:alpha/compute.forwardingRules.aggregatedList/pageToken": page_token +"/compute:alpha/compute.forwardingRules.aggregatedList/project": project +"/compute:alpha/compute.forwardingRules.delete": delete_forwarding_rule +"/compute:alpha/compute.forwardingRules.delete/forwardingRule": forwarding_rule +"/compute:alpha/compute.forwardingRules.delete/project": project +"/compute:alpha/compute.forwardingRules.delete/region": region +"/compute:alpha/compute.forwardingRules.delete/requestId": request_id +"/compute:alpha/compute.forwardingRules.get": get_forwarding_rule +"/compute:alpha/compute.forwardingRules.get/forwardingRule": forwarding_rule +"/compute:alpha/compute.forwardingRules.get/project": project +"/compute:alpha/compute.forwardingRules.get/region": region +"/compute:alpha/compute.forwardingRules.insert": insert_forwarding_rule +"/compute:alpha/compute.forwardingRules.insert/project": project +"/compute:alpha/compute.forwardingRules.insert/region": region +"/compute:alpha/compute.forwardingRules.insert/requestId": request_id +"/compute:alpha/compute.forwardingRules.list": list_forwarding_rules +"/compute:alpha/compute.forwardingRules.list/filter": filter +"/compute:alpha/compute.forwardingRules.list/maxResults": max_results +"/compute:alpha/compute.forwardingRules.list/orderBy": order_by +"/compute:alpha/compute.forwardingRules.list/pageToken": page_token +"/compute:alpha/compute.forwardingRules.list/project": project +"/compute:alpha/compute.forwardingRules.list/region": region +"/compute:alpha/compute.forwardingRules.patch": patch_forwarding_rule +"/compute:alpha/compute.forwardingRules.patch/forwardingRule": forwarding_rule +"/compute:alpha/compute.forwardingRules.patch/project": project +"/compute:alpha/compute.forwardingRules.patch/region": region +"/compute:alpha/compute.forwardingRules.patch/requestId": request_id +"/compute:alpha/compute.forwardingRules.setLabels": set_forwarding_rule_labels +"/compute:alpha/compute.forwardingRules.setLabels/project": project +"/compute:alpha/compute.forwardingRules.setLabels/region": region +"/compute:alpha/compute.forwardingRules.setLabels/requestId": request_id +"/compute:alpha/compute.forwardingRules.setLabels/resource": resource +"/compute:alpha/compute.forwardingRules.setTarget": set_forwarding_rule_target +"/compute:alpha/compute.forwardingRules.setTarget/forwardingRule": forwarding_rule +"/compute:alpha/compute.forwardingRules.setTarget/project": project +"/compute:alpha/compute.forwardingRules.setTarget/region": region +"/compute:alpha/compute.forwardingRules.setTarget/requestId": request_id +"/compute:alpha/compute.forwardingRules.testIamPermissions": test_forwarding_rule_iam_permissions +"/compute:alpha/compute.forwardingRules.testIamPermissions/project": project +"/compute:alpha/compute.forwardingRules.testIamPermissions/region": region +"/compute:alpha/compute.forwardingRules.testIamPermissions/resource": resource +"/compute:alpha/compute.globalAddresses.delete": delete_global_address +"/compute:alpha/compute.globalAddresses.delete/address": address +"/compute:alpha/compute.globalAddresses.delete/project": project +"/compute:alpha/compute.globalAddresses.delete/requestId": request_id +"/compute:alpha/compute.globalAddresses.get": get_global_address +"/compute:alpha/compute.globalAddresses.get/address": address +"/compute:alpha/compute.globalAddresses.get/project": project +"/compute:alpha/compute.globalAddresses.insert": insert_global_address +"/compute:alpha/compute.globalAddresses.insert/project": project +"/compute:alpha/compute.globalAddresses.insert/requestId": request_id +"/compute:alpha/compute.globalAddresses.list": list_global_addresses +"/compute:alpha/compute.globalAddresses.list/filter": filter +"/compute:alpha/compute.globalAddresses.list/maxResults": max_results +"/compute:alpha/compute.globalAddresses.list/orderBy": order_by +"/compute:alpha/compute.globalAddresses.list/pageToken": page_token +"/compute:alpha/compute.globalAddresses.list/project": project +"/compute:alpha/compute.globalAddresses.setLabels": set_global_address_labels +"/compute:alpha/compute.globalAddresses.setLabels/project": project +"/compute:alpha/compute.globalAddresses.setLabels/resource": resource +"/compute:alpha/compute.globalAddresses.testIamPermissions": test_global_address_iam_permissions +"/compute:alpha/compute.globalAddresses.testIamPermissions/project": project +"/compute:alpha/compute.globalAddresses.testIamPermissions/resource": resource +"/compute:alpha/compute.globalForwardingRules.delete": delete_global_forwarding_rule +"/compute:alpha/compute.globalForwardingRules.delete/forwardingRule": forwarding_rule +"/compute:alpha/compute.globalForwardingRules.delete/project": project +"/compute:alpha/compute.globalForwardingRules.delete/requestId": request_id +"/compute:alpha/compute.globalForwardingRules.get": get_global_forwarding_rule +"/compute:alpha/compute.globalForwardingRules.get/forwardingRule": forwarding_rule +"/compute:alpha/compute.globalForwardingRules.get/project": project +"/compute:alpha/compute.globalForwardingRules.insert": insert_global_forwarding_rule +"/compute:alpha/compute.globalForwardingRules.insert/project": project +"/compute:alpha/compute.globalForwardingRules.insert/requestId": request_id +"/compute:alpha/compute.globalForwardingRules.list": list_global_forwarding_rules +"/compute:alpha/compute.globalForwardingRules.list/filter": filter +"/compute:alpha/compute.globalForwardingRules.list/maxResults": max_results +"/compute:alpha/compute.globalForwardingRules.list/orderBy": order_by +"/compute:alpha/compute.globalForwardingRules.list/pageToken": page_token +"/compute:alpha/compute.globalForwardingRules.list/project": project +"/compute:alpha/compute.globalForwardingRules.patch": patch_global_forwarding_rule +"/compute:alpha/compute.globalForwardingRules.patch/forwardingRule": forwarding_rule +"/compute:alpha/compute.globalForwardingRules.patch/project": project +"/compute:alpha/compute.globalForwardingRules.patch/requestId": request_id +"/compute:alpha/compute.globalForwardingRules.setLabels": set_global_forwarding_rule_labels +"/compute:alpha/compute.globalForwardingRules.setLabels/project": project +"/compute:alpha/compute.globalForwardingRules.setLabels/resource": resource +"/compute:alpha/compute.globalForwardingRules.setTarget": set_global_forwarding_rule_target +"/compute:alpha/compute.globalForwardingRules.setTarget/forwardingRule": forwarding_rule +"/compute:alpha/compute.globalForwardingRules.setTarget/project": project +"/compute:alpha/compute.globalForwardingRules.setTarget/requestId": request_id +"/compute:alpha/compute.globalForwardingRules.testIamPermissions": test_global_forwarding_rule_iam_permissions +"/compute:alpha/compute.globalForwardingRules.testIamPermissions/project": project +"/compute:alpha/compute.globalForwardingRules.testIamPermissions/resource": resource +"/compute:alpha/compute.globalOperations.aggregatedList": aggregated_global_operation_list +"/compute:alpha/compute.globalOperations.aggregatedList/filter": filter +"/compute:alpha/compute.globalOperations.aggregatedList/maxResults": max_results +"/compute:alpha/compute.globalOperations.aggregatedList/orderBy": order_by +"/compute:alpha/compute.globalOperations.aggregatedList/pageToken": page_token +"/compute:alpha/compute.globalOperations.aggregatedList/project": project +"/compute:alpha/compute.globalOperations.delete": delete_global_operation +"/compute:alpha/compute.globalOperations.delete/operation": operation +"/compute:alpha/compute.globalOperations.delete/project": project +"/compute:alpha/compute.globalOperations.get": get_global_operation +"/compute:alpha/compute.globalOperations.get/operation": operation +"/compute:alpha/compute.globalOperations.get/project": project +"/compute:alpha/compute.globalOperations.list": list_global_operations +"/compute:alpha/compute.globalOperations.list/filter": filter +"/compute:alpha/compute.globalOperations.list/maxResults": max_results +"/compute:alpha/compute.globalOperations.list/orderBy": order_by +"/compute:alpha/compute.globalOperations.list/pageToken": page_token +"/compute:alpha/compute.globalOperations.list/project": project +"/compute:alpha/compute.healthChecks.delete": delete_health_check +"/compute:alpha/compute.healthChecks.delete/healthCheck": health_check +"/compute:alpha/compute.healthChecks.delete/project": project +"/compute:alpha/compute.healthChecks.delete/requestId": request_id +"/compute:alpha/compute.healthChecks.get": get_health_check +"/compute:alpha/compute.healthChecks.get/healthCheck": health_check +"/compute:alpha/compute.healthChecks.get/project": project +"/compute:alpha/compute.healthChecks.insert": insert_health_check +"/compute:alpha/compute.healthChecks.insert/project": project +"/compute:alpha/compute.healthChecks.insert/requestId": request_id +"/compute:alpha/compute.healthChecks.list": list_health_checks +"/compute:alpha/compute.healthChecks.list/filter": filter +"/compute:alpha/compute.healthChecks.list/maxResults": max_results +"/compute:alpha/compute.healthChecks.list/orderBy": order_by +"/compute:alpha/compute.healthChecks.list/pageToken": page_token +"/compute:alpha/compute.healthChecks.list/project": project +"/compute:alpha/compute.healthChecks.patch": patch_health_check +"/compute:alpha/compute.healthChecks.patch/healthCheck": health_check +"/compute:alpha/compute.healthChecks.patch/project": project +"/compute:alpha/compute.healthChecks.patch/requestId": request_id +"/compute:alpha/compute.healthChecks.testIamPermissions": test_health_check_iam_permissions +"/compute:alpha/compute.healthChecks.testIamPermissions/project": project +"/compute:alpha/compute.healthChecks.testIamPermissions/resource": resource +"/compute:alpha/compute.healthChecks.update": update_health_check +"/compute:alpha/compute.healthChecks.update/healthCheck": health_check +"/compute:alpha/compute.healthChecks.update/project": project +"/compute:alpha/compute.healthChecks.update/requestId": request_id +"/compute:alpha/compute.hostTypes.aggregatedList": aggregated_host_type_list +"/compute:alpha/compute.hostTypes.aggregatedList/filter": filter +"/compute:alpha/compute.hostTypes.aggregatedList/maxResults": max_results +"/compute:alpha/compute.hostTypes.aggregatedList/orderBy": order_by +"/compute:alpha/compute.hostTypes.aggregatedList/pageToken": page_token +"/compute:alpha/compute.hostTypes.aggregatedList/project": project +"/compute:alpha/compute.hostTypes.get": get_host_type +"/compute:alpha/compute.hostTypes.get/hostType": host_type +"/compute:alpha/compute.hostTypes.get/project": project +"/compute:alpha/compute.hostTypes.get/zone": zone +"/compute:alpha/compute.hostTypes.list": list_host_types +"/compute:alpha/compute.hostTypes.list/filter": filter +"/compute:alpha/compute.hostTypes.list/maxResults": max_results +"/compute:alpha/compute.hostTypes.list/orderBy": order_by +"/compute:alpha/compute.hostTypes.list/pageToken": page_token +"/compute:alpha/compute.hostTypes.list/project": project +"/compute:alpha/compute.hostTypes.list/zone": zone +"/compute:alpha/compute.hosts.aggregatedList": aggregated_host_list +"/compute:alpha/compute.hosts.aggregatedList/filter": filter +"/compute:alpha/compute.hosts.aggregatedList/maxResults": max_results +"/compute:alpha/compute.hosts.aggregatedList/orderBy": order_by +"/compute:alpha/compute.hosts.aggregatedList/pageToken": page_token +"/compute:alpha/compute.hosts.aggregatedList/project": project +"/compute:alpha/compute.hosts.delete": delete_host +"/compute:alpha/compute.hosts.delete/host": host +"/compute:alpha/compute.hosts.delete/project": project +"/compute:alpha/compute.hosts.delete/requestId": request_id +"/compute:alpha/compute.hosts.delete/zone": zone +"/compute:alpha/compute.hosts.get": get_host +"/compute:alpha/compute.hosts.get/host": host +"/compute:alpha/compute.hosts.get/project": project +"/compute:alpha/compute.hosts.get/zone": zone +"/compute:alpha/compute.hosts.getIamPolicy": get_host_iam_policy +"/compute:alpha/compute.hosts.getIamPolicy/project": project +"/compute:alpha/compute.hosts.getIamPolicy/resource": resource +"/compute:alpha/compute.hosts.getIamPolicy/zone": zone +"/compute:alpha/compute.hosts.insert": insert_host +"/compute:alpha/compute.hosts.insert/project": project +"/compute:alpha/compute.hosts.insert/requestId": request_id +"/compute:alpha/compute.hosts.insert/zone": zone +"/compute:alpha/compute.hosts.list": list_hosts +"/compute:alpha/compute.hosts.list/filter": filter +"/compute:alpha/compute.hosts.list/maxResults": max_results +"/compute:alpha/compute.hosts.list/orderBy": order_by +"/compute:alpha/compute.hosts.list/pageToken": page_token +"/compute:alpha/compute.hosts.list/project": project +"/compute:alpha/compute.hosts.list/zone": zone +"/compute:alpha/compute.hosts.setIamPolicy": set_host_iam_policy +"/compute:alpha/compute.hosts.setIamPolicy/project": project +"/compute:alpha/compute.hosts.setIamPolicy/resource": resource +"/compute:alpha/compute.hosts.setIamPolicy/zone": zone +"/compute:alpha/compute.hosts.testIamPermissions": test_host_iam_permissions +"/compute:alpha/compute.hosts.testIamPermissions/project": project +"/compute:alpha/compute.hosts.testIamPermissions/resource": resource +"/compute:alpha/compute.hosts.testIamPermissions/zone": zone +"/compute:alpha/compute.httpHealthChecks.delete": delete_http_health_check +"/compute:alpha/compute.httpHealthChecks.delete/httpHealthCheck": http_health_check +"/compute:alpha/compute.httpHealthChecks.delete/project": project +"/compute:alpha/compute.httpHealthChecks.delete/requestId": request_id +"/compute:alpha/compute.httpHealthChecks.get": get_http_health_check +"/compute:alpha/compute.httpHealthChecks.get/httpHealthCheck": http_health_check +"/compute:alpha/compute.httpHealthChecks.get/project": project +"/compute:alpha/compute.httpHealthChecks.insert": insert_http_health_check +"/compute:alpha/compute.httpHealthChecks.insert/project": project +"/compute:alpha/compute.httpHealthChecks.insert/requestId": request_id +"/compute:alpha/compute.httpHealthChecks.list": list_http_health_checks +"/compute:alpha/compute.httpHealthChecks.list/filter": filter +"/compute:alpha/compute.httpHealthChecks.list/maxResults": max_results +"/compute:alpha/compute.httpHealthChecks.list/orderBy": order_by +"/compute:alpha/compute.httpHealthChecks.list/pageToken": page_token +"/compute:alpha/compute.httpHealthChecks.list/project": project +"/compute:alpha/compute.httpHealthChecks.patch": patch_http_health_check +"/compute:alpha/compute.httpHealthChecks.patch/httpHealthCheck": http_health_check +"/compute:alpha/compute.httpHealthChecks.patch/project": project +"/compute:alpha/compute.httpHealthChecks.patch/requestId": request_id +"/compute:alpha/compute.httpHealthChecks.testIamPermissions": test_http_health_check_iam_permissions +"/compute:alpha/compute.httpHealthChecks.testIamPermissions/project": project +"/compute:alpha/compute.httpHealthChecks.testIamPermissions/resource": resource +"/compute:alpha/compute.httpHealthChecks.update": update_http_health_check +"/compute:alpha/compute.httpHealthChecks.update/httpHealthCheck": http_health_check +"/compute:alpha/compute.httpHealthChecks.update/project": project +"/compute:alpha/compute.httpHealthChecks.update/requestId": request_id +"/compute:alpha/compute.httpsHealthChecks.delete": delete_https_health_check +"/compute:alpha/compute.httpsHealthChecks.delete/httpsHealthCheck": https_health_check +"/compute:alpha/compute.httpsHealthChecks.delete/project": project +"/compute:alpha/compute.httpsHealthChecks.delete/requestId": request_id +"/compute:alpha/compute.httpsHealthChecks.get": get_https_health_check +"/compute:alpha/compute.httpsHealthChecks.get/httpsHealthCheck": https_health_check +"/compute:alpha/compute.httpsHealthChecks.get/project": project +"/compute:alpha/compute.httpsHealthChecks.insert": insert_https_health_check +"/compute:alpha/compute.httpsHealthChecks.insert/project": project +"/compute:alpha/compute.httpsHealthChecks.insert/requestId": request_id +"/compute:alpha/compute.httpsHealthChecks.list": list_https_health_checks +"/compute:alpha/compute.httpsHealthChecks.list/filter": filter +"/compute:alpha/compute.httpsHealthChecks.list/maxResults": max_results +"/compute:alpha/compute.httpsHealthChecks.list/orderBy": order_by +"/compute:alpha/compute.httpsHealthChecks.list/pageToken": page_token +"/compute:alpha/compute.httpsHealthChecks.list/project": project +"/compute:alpha/compute.httpsHealthChecks.patch": patch_https_health_check +"/compute:alpha/compute.httpsHealthChecks.patch/httpsHealthCheck": https_health_check +"/compute:alpha/compute.httpsHealthChecks.patch/project": project +"/compute:alpha/compute.httpsHealthChecks.patch/requestId": request_id +"/compute:alpha/compute.httpsHealthChecks.testIamPermissions": test_https_health_check_iam_permissions +"/compute:alpha/compute.httpsHealthChecks.testIamPermissions/project": project +"/compute:alpha/compute.httpsHealthChecks.testIamPermissions/resource": resource +"/compute:alpha/compute.httpsHealthChecks.update": update_https_health_check +"/compute:alpha/compute.httpsHealthChecks.update/httpsHealthCheck": https_health_check +"/compute:alpha/compute.httpsHealthChecks.update/project": project +"/compute:alpha/compute.httpsHealthChecks.update/requestId": request_id +"/compute:alpha/compute.images.delete": delete_image +"/compute:alpha/compute.images.delete/image": image +"/compute:alpha/compute.images.delete/project": project +"/compute:alpha/compute.images.delete/requestId": request_id +"/compute:alpha/compute.images.deprecate": deprecate_image +"/compute:alpha/compute.images.deprecate/image": image +"/compute:alpha/compute.images.deprecate/project": project +"/compute:alpha/compute.images.deprecate/requestId": request_id +"/compute:alpha/compute.images.get": get_image +"/compute:alpha/compute.images.get/image": image +"/compute:alpha/compute.images.get/project": project +"/compute:alpha/compute.images.getFromFamily": get_image_from_family +"/compute:alpha/compute.images.getFromFamily/family": family +"/compute:alpha/compute.images.getFromFamily/project": project +"/compute:alpha/compute.images.getIamPolicy": get_image_iam_policy +"/compute:alpha/compute.images.getIamPolicy/project": project +"/compute:alpha/compute.images.getIamPolicy/resource": resource +"/compute:alpha/compute.images.insert": insert_image +"/compute:alpha/compute.images.insert/forceCreate": force_create +"/compute:alpha/compute.images.insert/project": project +"/compute:alpha/compute.images.insert/requestId": request_id +"/compute:alpha/compute.images.list": list_images +"/compute:alpha/compute.images.list/filter": filter +"/compute:alpha/compute.images.list/maxResults": max_results +"/compute:alpha/compute.images.list/orderBy": order_by +"/compute:alpha/compute.images.list/pageToken": page_token +"/compute:alpha/compute.images.list/project": project +"/compute:alpha/compute.images.setIamPolicy": set_image_iam_policy +"/compute:alpha/compute.images.setIamPolicy/project": project +"/compute:alpha/compute.images.setIamPolicy/resource": resource +"/compute:alpha/compute.images.setLabels": set_image_labels +"/compute:alpha/compute.images.setLabels/project": project +"/compute:alpha/compute.images.setLabels/resource": resource +"/compute:alpha/compute.images.testIamPermissions": test_image_iam_permissions +"/compute:alpha/compute.images.testIamPermissions/project": project +"/compute:alpha/compute.images.testIamPermissions/resource": resource +"/compute:alpha/compute.instanceGroupManagers.abandonInstances": abandon_instance_group_manager_instances +"/compute:alpha/compute.instanceGroupManagers.abandonInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.abandonInstances/project": project +"/compute:alpha/compute.instanceGroupManagers.abandonInstances/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.abandonInstances/zone": zone +"/compute:alpha/compute.instanceGroupManagers.aggregatedList": aggregated_instance_group_manager_list +"/compute:alpha/compute.instanceGroupManagers.aggregatedList/filter": filter +"/compute:alpha/compute.instanceGroupManagers.aggregatedList/maxResults": max_results +"/compute:alpha/compute.instanceGroupManagers.aggregatedList/orderBy": order_by +"/compute:alpha/compute.instanceGroupManagers.aggregatedList/pageToken": page_token +"/compute:alpha/compute.instanceGroupManagers.aggregatedList/project": project +"/compute:alpha/compute.instanceGroupManagers.applyUpdatesToInstances": apply_instance_group_manager_updates_to_instances +"/compute:alpha/compute.instanceGroupManagers.applyUpdatesToInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.applyUpdatesToInstances/project": project +"/compute:alpha/compute.instanceGroupManagers.applyUpdatesToInstances/zone": zone +"/compute:alpha/compute.instanceGroupManagers.delete": delete_instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.delete/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.delete/project": project +"/compute:alpha/compute.instanceGroupManagers.delete/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.delete/zone": zone +"/compute:alpha/compute.instanceGroupManagers.deleteInstances": delete_instance_group_manager_instances +"/compute:alpha/compute.instanceGroupManagers.deleteInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.deleteInstances/project": project +"/compute:alpha/compute.instanceGroupManagers.deleteInstances/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.deleteInstances/zone": zone +"/compute:alpha/compute.instanceGroupManagers.deletePerInstanceConfigs": delete_instance_group_manager_per_instance_configs +"/compute:alpha/compute.instanceGroupManagers.deletePerInstanceConfigs/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.deletePerInstanceConfigs/project": project +"/compute:alpha/compute.instanceGroupManagers.deletePerInstanceConfigs/zone": zone +"/compute:alpha/compute.instanceGroupManagers.get": get_instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.get/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.get/project": project +"/compute:alpha/compute.instanceGroupManagers.get/zone": zone +"/compute:alpha/compute.instanceGroupManagers.insert": insert_instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.insert/project": project +"/compute:alpha/compute.instanceGroupManagers.insert/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.insert/zone": zone +"/compute:alpha/compute.instanceGroupManagers.list": list_instance_group_managers +"/compute:alpha/compute.instanceGroupManagers.list/filter": filter +"/compute:alpha/compute.instanceGroupManagers.list/maxResults": max_results +"/compute:alpha/compute.instanceGroupManagers.list/orderBy": order_by +"/compute:alpha/compute.instanceGroupManagers.list/pageToken": page_token +"/compute:alpha/compute.instanceGroupManagers.list/project": project +"/compute:alpha/compute.instanceGroupManagers.list/zone": zone +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances": list_instance_group_manager_managed_instances +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances/filter": filter +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances/maxResults": max_results +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances/order_by": order_by +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances/pageToken": page_token +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances/project": project +"/compute:alpha/compute.instanceGroupManagers.listManagedInstances/zone": zone +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs": list_instance_group_manager_per_instance_configs +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs/filter": filter +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs/maxResults": max_results +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs/orderBy": order_by +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs/pageToken": page_token +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs/project": project +"/compute:alpha/compute.instanceGroupManagers.listPerInstanceConfigs/zone": zone +"/compute:alpha/compute.instanceGroupManagers.patch": patch_instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.patch/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.patch/project": project +"/compute:alpha/compute.instanceGroupManagers.patch/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.patch/zone": zone +"/compute:alpha/compute.instanceGroupManagers.recreateInstances": recreate_instance_group_manager_instances +"/compute:alpha/compute.instanceGroupManagers.recreateInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.recreateInstances/project": project +"/compute:alpha/compute.instanceGroupManagers.recreateInstances/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.recreateInstances/zone": zone +"/compute:alpha/compute.instanceGroupManagers.resize": resize_instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.resize/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.resize/project": project +"/compute:alpha/compute.instanceGroupManagers.resize/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.resize/size": size +"/compute:alpha/compute.instanceGroupManagers.resize/zone": zone +"/compute:alpha/compute.instanceGroupManagers.resizeAdvanced": resize_instance_group_manager_advanced +"/compute:alpha/compute.instanceGroupManagers.resizeAdvanced/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.resizeAdvanced/project": project +"/compute:alpha/compute.instanceGroupManagers.resizeAdvanced/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.resizeAdvanced/zone": zone +"/compute:alpha/compute.instanceGroupManagers.setAutoHealingPolicies": set_instance_group_manager_auto_healing_policies +"/compute:alpha/compute.instanceGroupManagers.setAutoHealingPolicies/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.setAutoHealingPolicies/project": project +"/compute:alpha/compute.instanceGroupManagers.setAutoHealingPolicies/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.setAutoHealingPolicies/zone": zone +"/compute:alpha/compute.instanceGroupManagers.setInstanceTemplate": set_instance_group_manager_instance_template +"/compute:alpha/compute.instanceGroupManagers.setInstanceTemplate/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.setInstanceTemplate/project": project +"/compute:alpha/compute.instanceGroupManagers.setInstanceTemplate/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.setInstanceTemplate/zone": zone +"/compute:alpha/compute.instanceGroupManagers.setTargetPools": set_instance_group_manager_target_pools +"/compute:alpha/compute.instanceGroupManagers.setTargetPools/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.setTargetPools/project": project +"/compute:alpha/compute.instanceGroupManagers.setTargetPools/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.setTargetPools/zone": zone +"/compute:alpha/compute.instanceGroupManagers.testIamPermissions": test_instance_group_manager_iam_permissions +"/compute:alpha/compute.instanceGroupManagers.testIamPermissions/project": project +"/compute:alpha/compute.instanceGroupManagers.testIamPermissions/resource": resource +"/compute:alpha/compute.instanceGroupManagers.testIamPermissions/zone": zone +"/compute:alpha/compute.instanceGroupManagers.update": update_instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.update/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.update/project": project +"/compute:alpha/compute.instanceGroupManagers.update/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.update/zone": zone +"/compute:alpha/compute.instanceGroupManagers.updatePerInstanceConfigs": update_instance_group_manager_per_instance_configs +"/compute:alpha/compute.instanceGroupManagers.updatePerInstanceConfigs/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.instanceGroupManagers.updatePerInstanceConfigs/project": project +"/compute:alpha/compute.instanceGroupManagers.updatePerInstanceConfigs/requestId": request_id +"/compute:alpha/compute.instanceGroupManagers.updatePerInstanceConfigs/zone": zone +"/compute:alpha/compute.instanceGroups.addInstances": add_instance_group_instances +"/compute:alpha/compute.instanceGroups.addInstances/instanceGroup": instance_group +"/compute:alpha/compute.instanceGroups.addInstances/project": project +"/compute:alpha/compute.instanceGroups.addInstances/requestId": request_id +"/compute:alpha/compute.instanceGroups.addInstances/zone": zone +"/compute:alpha/compute.instanceGroups.aggregatedList": aggregated_instance_group_list +"/compute:alpha/compute.instanceGroups.aggregatedList/filter": filter +"/compute:alpha/compute.instanceGroups.aggregatedList/maxResults": max_results +"/compute:alpha/compute.instanceGroups.aggregatedList/orderBy": order_by +"/compute:alpha/compute.instanceGroups.aggregatedList/pageToken": page_token +"/compute:alpha/compute.instanceGroups.aggregatedList/project": project +"/compute:alpha/compute.instanceGroups.delete": delete_instance_group +"/compute:alpha/compute.instanceGroups.delete/instanceGroup": instance_group +"/compute:alpha/compute.instanceGroups.delete/project": project +"/compute:alpha/compute.instanceGroups.delete/requestId": request_id +"/compute:alpha/compute.instanceGroups.delete/zone": zone +"/compute:alpha/compute.instanceGroups.get": get_instance_group +"/compute:alpha/compute.instanceGroups.get/instanceGroup": instance_group +"/compute:alpha/compute.instanceGroups.get/project": project +"/compute:alpha/compute.instanceGroups.get/zone": zone +"/compute:alpha/compute.instanceGroups.insert": insert_instance_group +"/compute:alpha/compute.instanceGroups.insert/project": project +"/compute:alpha/compute.instanceGroups.insert/requestId": request_id +"/compute:alpha/compute.instanceGroups.insert/zone": zone +"/compute:alpha/compute.instanceGroups.list": list_instance_groups +"/compute:alpha/compute.instanceGroups.list/filter": filter +"/compute:alpha/compute.instanceGroups.list/maxResults": max_results +"/compute:alpha/compute.instanceGroups.list/orderBy": order_by +"/compute:alpha/compute.instanceGroups.list/pageToken": page_token +"/compute:alpha/compute.instanceGroups.list/project": project +"/compute:alpha/compute.instanceGroups.list/zone": zone +"/compute:alpha/compute.instanceGroups.listInstances": list_instance_group_instances +"/compute:alpha/compute.instanceGroups.listInstances/filter": filter +"/compute:alpha/compute.instanceGroups.listInstances/instanceGroup": instance_group +"/compute:alpha/compute.instanceGroups.listInstances/maxResults": max_results +"/compute:alpha/compute.instanceGroups.listInstances/orderBy": order_by +"/compute:alpha/compute.instanceGroups.listInstances/pageToken": page_token +"/compute:alpha/compute.instanceGroups.listInstances/project": project +"/compute:alpha/compute.instanceGroups.listInstances/zone": zone +"/compute:alpha/compute.instanceGroups.removeInstances": remove_instance_group_instances +"/compute:alpha/compute.instanceGroups.removeInstances/instanceGroup": instance_group +"/compute:alpha/compute.instanceGroups.removeInstances/project": project +"/compute:alpha/compute.instanceGroups.removeInstances/requestId": request_id +"/compute:alpha/compute.instanceGroups.removeInstances/zone": zone +"/compute:alpha/compute.instanceGroups.setNamedPorts": set_instance_group_named_ports +"/compute:alpha/compute.instanceGroups.setNamedPorts/instanceGroup": instance_group +"/compute:alpha/compute.instanceGroups.setNamedPorts/project": project +"/compute:alpha/compute.instanceGroups.setNamedPorts/requestId": request_id +"/compute:alpha/compute.instanceGroups.setNamedPorts/zone": zone +"/compute:alpha/compute.instanceGroups.testIamPermissions": test_instance_group_iam_permissions +"/compute:alpha/compute.instanceGroups.testIamPermissions/project": project +"/compute:alpha/compute.instanceGroups.testIamPermissions/resource": resource +"/compute:alpha/compute.instanceGroups.testIamPermissions/zone": zone +"/compute:alpha/compute.instanceTemplates.delete": delete_instance_template +"/compute:alpha/compute.instanceTemplates.delete/instanceTemplate": instance_template +"/compute:alpha/compute.instanceTemplates.delete/project": project +"/compute:alpha/compute.instanceTemplates.delete/requestId": request_id +"/compute:alpha/compute.instanceTemplates.get": get_instance_template +"/compute:alpha/compute.instanceTemplates.get/instanceTemplate": instance_template +"/compute:alpha/compute.instanceTemplates.get/project": project +"/compute:alpha/compute.instanceTemplates.insert": insert_instance_template +"/compute:alpha/compute.instanceTemplates.insert/project": project +"/compute:alpha/compute.instanceTemplates.insert/requestId": request_id +"/compute:alpha/compute.instanceTemplates.list": list_instance_templates +"/compute:alpha/compute.instanceTemplates.list/filter": filter +"/compute:alpha/compute.instanceTemplates.list/maxResults": max_results +"/compute:alpha/compute.instanceTemplates.list/orderBy": order_by +"/compute:alpha/compute.instanceTemplates.list/pageToken": page_token +"/compute:alpha/compute.instanceTemplates.list/project": project +"/compute:alpha/compute.instanceTemplates.testIamPermissions": test_instance_template_iam_permissions +"/compute:alpha/compute.instanceTemplates.testIamPermissions/project": project +"/compute:alpha/compute.instanceTemplates.testIamPermissions/resource": resource +"/compute:alpha/compute.instances.addAccessConfig": add_instance_access_config +"/compute:alpha/compute.instances.addAccessConfig/instance": instance +"/compute:alpha/compute.instances.addAccessConfig/networkInterface": network_interface +"/compute:alpha/compute.instances.addAccessConfig/project": project +"/compute:alpha/compute.instances.addAccessConfig/requestId": request_id +"/compute:alpha/compute.instances.addAccessConfig/zone": zone +"/compute:alpha/compute.instances.aggregatedList": aggregated_instance_list +"/compute:alpha/compute.instances.aggregatedList/filter": filter +"/compute:alpha/compute.instances.aggregatedList/maxResults": max_results +"/compute:alpha/compute.instances.aggregatedList/orderBy": order_by +"/compute:alpha/compute.instances.aggregatedList/pageToken": page_token +"/compute:alpha/compute.instances.aggregatedList/project": project +"/compute:alpha/compute.instances.attachDisk": attach_instance_disk +"/compute:alpha/compute.instances.attachDisk/forceAttach": force_attach +"/compute:alpha/compute.instances.attachDisk/instance": instance +"/compute:alpha/compute.instances.attachDisk/project": project +"/compute:alpha/compute.instances.attachDisk/requestId": request_id +"/compute:alpha/compute.instances.attachDisk/zone": zone +"/compute:alpha/compute.instances.delete": delete_instance +"/compute:alpha/compute.instances.delete/instance": instance +"/compute:alpha/compute.instances.delete/project": project +"/compute:alpha/compute.instances.delete/requestId": request_id +"/compute:alpha/compute.instances.delete/zone": zone +"/compute:alpha/compute.instances.deleteAccessConfig": delete_instance_access_config +"/compute:alpha/compute.instances.deleteAccessConfig/accessConfig": access_config +"/compute:alpha/compute.instances.deleteAccessConfig/instance": instance +"/compute:alpha/compute.instances.deleteAccessConfig/networkInterface": network_interface +"/compute:alpha/compute.instances.deleteAccessConfig/project": project +"/compute:alpha/compute.instances.deleteAccessConfig/requestId": request_id +"/compute:alpha/compute.instances.deleteAccessConfig/zone": zone +"/compute:alpha/compute.instances.detachDisk": detach_instance_disk +"/compute:alpha/compute.instances.detachDisk/deviceName": device_name +"/compute:alpha/compute.instances.detachDisk/instance": instance +"/compute:alpha/compute.instances.detachDisk/project": project +"/compute:alpha/compute.instances.detachDisk/requestId": request_id +"/compute:alpha/compute.instances.detachDisk/zone": zone +"/compute:alpha/compute.instances.get": get_instance +"/compute:alpha/compute.instances.get/instance": instance +"/compute:alpha/compute.instances.get/project": project +"/compute:alpha/compute.instances.get/zone": zone +"/compute:alpha/compute.instances.getGuestAttributes": get_instance_guest_attributes +"/compute:alpha/compute.instances.getGuestAttributes/instance": instance +"/compute:alpha/compute.instances.getGuestAttributes/project": project +"/compute:alpha/compute.instances.getGuestAttributes/variableKey": variable_key +"/compute:alpha/compute.instances.getGuestAttributes/zone": zone +"/compute:alpha/compute.instances.getIamPolicy": get_instance_iam_policy +"/compute:alpha/compute.instances.getIamPolicy/project": project +"/compute:alpha/compute.instances.getIamPolicy/resource": resource +"/compute:alpha/compute.instances.getIamPolicy/zone": zone +"/compute:alpha/compute.instances.getSerialPortOutput": get_instance_serial_port_output +"/compute:alpha/compute.instances.getSerialPortOutput/instance": instance +"/compute:alpha/compute.instances.getSerialPortOutput/port": port +"/compute:alpha/compute.instances.getSerialPortOutput/project": project +"/compute:alpha/compute.instances.getSerialPortOutput/start": start +"/compute:alpha/compute.instances.getSerialPortOutput/zone": zone +"/compute:alpha/compute.instances.insert": insert_instance +"/compute:alpha/compute.instances.insert/project": project +"/compute:alpha/compute.instances.insert/requestId": request_id +"/compute:alpha/compute.instances.insert/sourceInstanceTemplate": source_instance_template +"/compute:alpha/compute.instances.insert/zone": zone +"/compute:alpha/compute.instances.list": list_instances +"/compute:alpha/compute.instances.list/filter": filter +"/compute:alpha/compute.instances.list/maxResults": max_results +"/compute:alpha/compute.instances.list/orderBy": order_by +"/compute:alpha/compute.instances.list/pageToken": page_token +"/compute:alpha/compute.instances.list/project": project +"/compute:alpha/compute.instances.list/zone": zone +"/compute:alpha/compute.instances.listReferrers": list_instance_referrers +"/compute:alpha/compute.instances.listReferrers/filter": filter +"/compute:alpha/compute.instances.listReferrers/instance": instance +"/compute:alpha/compute.instances.listReferrers/maxResults": max_results +"/compute:alpha/compute.instances.listReferrers/orderBy": order_by +"/compute:alpha/compute.instances.listReferrers/pageToken": page_token +"/compute:alpha/compute.instances.listReferrers/project": project +"/compute:alpha/compute.instances.listReferrers/zone": zone +"/compute:alpha/compute.instances.reset": reset_instance +"/compute:alpha/compute.instances.reset/instance": instance +"/compute:alpha/compute.instances.reset/project": project +"/compute:alpha/compute.instances.reset/requestId": request_id +"/compute:alpha/compute.instances.reset/zone": zone +"/compute:alpha/compute.instances.setDiskAutoDelete": set_instance_disk_auto_delete +"/compute:alpha/compute.instances.setDiskAutoDelete/autoDelete": auto_delete +"/compute:alpha/compute.instances.setDiskAutoDelete/deviceName": device_name +"/compute:alpha/compute.instances.setDiskAutoDelete/instance": instance +"/compute:alpha/compute.instances.setDiskAutoDelete/project": project +"/compute:alpha/compute.instances.setDiskAutoDelete/requestId": request_id +"/compute:alpha/compute.instances.setDiskAutoDelete/zone": zone +"/compute:alpha/compute.instances.setIamPolicy": set_instance_iam_policy +"/compute:alpha/compute.instances.setIamPolicy/project": project +"/compute:alpha/compute.instances.setIamPolicy/resource": resource +"/compute:alpha/compute.instances.setIamPolicy/zone": zone +"/compute:alpha/compute.instances.setLabels": set_instance_labels +"/compute:alpha/compute.instances.setLabels/instance": instance +"/compute:alpha/compute.instances.setLabels/project": project +"/compute:alpha/compute.instances.setLabels/requestId": request_id +"/compute:alpha/compute.instances.setLabels/zone": zone +"/compute:alpha/compute.instances.setMachineResources": set_instance_machine_resources +"/compute:alpha/compute.instances.setMachineResources/instance": instance +"/compute:alpha/compute.instances.setMachineResources/project": project +"/compute:alpha/compute.instances.setMachineResources/requestId": request_id +"/compute:alpha/compute.instances.setMachineResources/zone": zone +"/compute:alpha/compute.instances.setMachineType": set_instance_machine_type +"/compute:alpha/compute.instances.setMachineType/instance": instance +"/compute:alpha/compute.instances.setMachineType/project": project +"/compute:alpha/compute.instances.setMachineType/requestId": request_id +"/compute:alpha/compute.instances.setMachineType/zone": zone +"/compute:alpha/compute.instances.setMetadata": set_instance_metadata +"/compute:alpha/compute.instances.setMetadata/instance": instance +"/compute:alpha/compute.instances.setMetadata/project": project +"/compute:alpha/compute.instances.setMetadata/requestId": request_id +"/compute:alpha/compute.instances.setMetadata/zone": zone +"/compute:alpha/compute.instances.setMinCpuPlatform": set_instance_min_cpu_platform +"/compute:alpha/compute.instances.setMinCpuPlatform/instance": instance +"/compute:alpha/compute.instances.setMinCpuPlatform/project": project +"/compute:alpha/compute.instances.setMinCpuPlatform/requestId": request_id +"/compute:alpha/compute.instances.setMinCpuPlatform/zone": zone +"/compute:alpha/compute.instances.setScheduling": set_instance_scheduling +"/compute:alpha/compute.instances.setScheduling/instance": instance +"/compute:alpha/compute.instances.setScheduling/project": project +"/compute:alpha/compute.instances.setScheduling/requestId": request_id +"/compute:alpha/compute.instances.setScheduling/zone": zone +"/compute:alpha/compute.instances.setServiceAccount": set_instance_service_account +"/compute:alpha/compute.instances.setServiceAccount/instance": instance +"/compute:alpha/compute.instances.setServiceAccount/project": project +"/compute:alpha/compute.instances.setServiceAccount/requestId": request_id +"/compute:alpha/compute.instances.setServiceAccount/zone": zone +"/compute:alpha/compute.instances.setTags": set_instance_tags +"/compute:alpha/compute.instances.setTags/instance": instance +"/compute:alpha/compute.instances.setTags/project": project +"/compute:alpha/compute.instances.setTags/requestId": request_id +"/compute:alpha/compute.instances.setTags/zone": zone +"/compute:alpha/compute.instances.simulateMaintenanceEvent": simulate_instance_maintenance_event +"/compute:alpha/compute.instances.simulateMaintenanceEvent/instance": instance +"/compute:alpha/compute.instances.simulateMaintenanceEvent/project": project +"/compute:alpha/compute.instances.simulateMaintenanceEvent/zone": zone +"/compute:alpha/compute.instances.start": start_instance +"/compute:alpha/compute.instances.start/instance": instance +"/compute:alpha/compute.instances.start/project": project +"/compute:alpha/compute.instances.start/requestId": request_id +"/compute:alpha/compute.instances.start/zone": zone +"/compute:alpha/compute.instances.startWithEncryptionKey": start_instance_with_encryption_key +"/compute:alpha/compute.instances.startWithEncryptionKey/instance": instance +"/compute:alpha/compute.instances.startWithEncryptionKey/project": project +"/compute:alpha/compute.instances.startWithEncryptionKey/requestId": request_id +"/compute:alpha/compute.instances.startWithEncryptionKey/zone": zone +"/compute:alpha/compute.instances.stop": stop_instance +"/compute:alpha/compute.instances.stop/discardLocalSsd": discard_local_ssd +"/compute:alpha/compute.instances.stop/instance": instance +"/compute:alpha/compute.instances.stop/project": project +"/compute:alpha/compute.instances.stop/requestId": request_id +"/compute:alpha/compute.instances.stop/zone": zone +"/compute:alpha/compute.instances.suspend": suspend_instance +"/compute:alpha/compute.instances.suspend/discardLocalSsd": discard_local_ssd +"/compute:alpha/compute.instances.suspend/instance": instance +"/compute:alpha/compute.instances.suspend/project": project +"/compute:alpha/compute.instances.suspend/requestId": request_id +"/compute:alpha/compute.instances.suspend/zone": zone +"/compute:alpha/compute.instances.testIamPermissions": test_instance_iam_permissions +"/compute:alpha/compute.instances.testIamPermissions/project": project +"/compute:alpha/compute.instances.testIamPermissions/resource": resource +"/compute:alpha/compute.instances.testIamPermissions/zone": zone +"/compute:alpha/compute.instances.updateAccessConfig": update_instance_access_config +"/compute:alpha/compute.instances.updateAccessConfig/instance": instance +"/compute:alpha/compute.instances.updateAccessConfig/networkInterface": network_interface +"/compute:alpha/compute.instances.updateAccessConfig/project": project +"/compute:alpha/compute.instances.updateAccessConfig/requestId": request_id +"/compute:alpha/compute.instances.updateAccessConfig/zone": zone +"/compute:alpha/compute.instances.updateNetworkInterface": update_instance_network_interface +"/compute:alpha/compute.instances.updateNetworkInterface/instance": instance +"/compute:alpha/compute.instances.updateNetworkInterface/networkInterface": network_interface +"/compute:alpha/compute.instances.updateNetworkInterface/project": project +"/compute:alpha/compute.instances.updateNetworkInterface/requestId": request_id +"/compute:alpha/compute.instances.updateNetworkInterface/zone": zone +"/compute:alpha/compute.interconnectAttachments.aggregatedList": aggregated_interconnect_attachment_list +"/compute:alpha/compute.interconnectAttachments.aggregatedList/filter": filter +"/compute:alpha/compute.interconnectAttachments.aggregatedList/maxResults": max_results +"/compute:alpha/compute.interconnectAttachments.aggregatedList/orderBy": order_by +"/compute:alpha/compute.interconnectAttachments.aggregatedList/pageToken": page_token +"/compute:alpha/compute.interconnectAttachments.aggregatedList/project": project +"/compute:alpha/compute.interconnectAttachments.delete": delete_interconnect_attachment +"/compute:alpha/compute.interconnectAttachments.delete/interconnectAttachment": interconnect_attachment +"/compute:alpha/compute.interconnectAttachments.delete/project": project +"/compute:alpha/compute.interconnectAttachments.delete/region": region +"/compute:alpha/compute.interconnectAttachments.delete/requestId": request_id +"/compute:alpha/compute.interconnectAttachments.get": get_interconnect_attachment +"/compute:alpha/compute.interconnectAttachments.get/interconnectAttachment": interconnect_attachment +"/compute:alpha/compute.interconnectAttachments.get/project": project +"/compute:alpha/compute.interconnectAttachments.get/region": region +"/compute:alpha/compute.interconnectAttachments.getIamPolicy": get_interconnect_attachment_iam_policy +"/compute:alpha/compute.interconnectAttachments.getIamPolicy/project": project +"/compute:alpha/compute.interconnectAttachments.getIamPolicy/region": region +"/compute:alpha/compute.interconnectAttachments.getIamPolicy/resource": resource +"/compute:alpha/compute.interconnectAttachments.insert": insert_interconnect_attachment +"/compute:alpha/compute.interconnectAttachments.insert/project": project +"/compute:alpha/compute.interconnectAttachments.insert/region": region +"/compute:alpha/compute.interconnectAttachments.insert/requestId": request_id +"/compute:alpha/compute.interconnectAttachments.list": list_interconnect_attachments +"/compute:alpha/compute.interconnectAttachments.list/filter": filter +"/compute:alpha/compute.interconnectAttachments.list/maxResults": max_results +"/compute:alpha/compute.interconnectAttachments.list/orderBy": order_by +"/compute:alpha/compute.interconnectAttachments.list/pageToken": page_token +"/compute:alpha/compute.interconnectAttachments.list/project": project +"/compute:alpha/compute.interconnectAttachments.list/region": region +"/compute:alpha/compute.interconnectAttachments.setIamPolicy": set_interconnect_attachment_iam_policy +"/compute:alpha/compute.interconnectAttachments.setIamPolicy/project": project +"/compute:alpha/compute.interconnectAttachments.setIamPolicy/region": region +"/compute:alpha/compute.interconnectAttachments.setIamPolicy/resource": resource +"/compute:alpha/compute.interconnectAttachments.testIamPermissions": test_interconnect_attachment_iam_permissions +"/compute:alpha/compute.interconnectAttachments.testIamPermissions/project": project +"/compute:alpha/compute.interconnectAttachments.testIamPermissions/region": region +"/compute:alpha/compute.interconnectAttachments.testIamPermissions/resource": resource +"/compute:alpha/compute.interconnectLocations.get": get_interconnect_location +"/compute:alpha/compute.interconnectLocations.get/interconnectLocation": interconnect_location +"/compute:alpha/compute.interconnectLocations.get/project": project +"/compute:alpha/compute.interconnectLocations.list": list_interconnect_locations +"/compute:alpha/compute.interconnectLocations.list/filter": filter +"/compute:alpha/compute.interconnectLocations.list/maxResults": max_results +"/compute:alpha/compute.interconnectLocations.list/orderBy": order_by +"/compute:alpha/compute.interconnectLocations.list/pageToken": page_token +"/compute:alpha/compute.interconnectLocations.list/project": project +"/compute:alpha/compute.interconnectLocations.testIamPermissions": test_interconnect_location_iam_permissions +"/compute:alpha/compute.interconnectLocations.testIamPermissions/project": project +"/compute:alpha/compute.interconnectLocations.testIamPermissions/resource": resource +"/compute:alpha/compute.interconnects.delete": delete_interconnect +"/compute:alpha/compute.interconnects.delete/interconnect": interconnect +"/compute:alpha/compute.interconnects.delete/project": project +"/compute:alpha/compute.interconnects.delete/requestId": request_id +"/compute:alpha/compute.interconnects.get": get_interconnect +"/compute:alpha/compute.interconnects.get/interconnect": interconnect +"/compute:alpha/compute.interconnects.get/project": project +"/compute:alpha/compute.interconnects.getIamPolicy": get_interconnect_iam_policy +"/compute:alpha/compute.interconnects.getIamPolicy/project": project +"/compute:alpha/compute.interconnects.getIamPolicy/resource": resource +"/compute:alpha/compute.interconnects.insert": insert_interconnect +"/compute:alpha/compute.interconnects.insert/project": project +"/compute:alpha/compute.interconnects.insert/requestId": request_id +"/compute:alpha/compute.interconnects.list": list_interconnects +"/compute:alpha/compute.interconnects.list/filter": filter +"/compute:alpha/compute.interconnects.list/maxResults": max_results +"/compute:alpha/compute.interconnects.list/orderBy": order_by +"/compute:alpha/compute.interconnects.list/pageToken": page_token +"/compute:alpha/compute.interconnects.list/project": project +"/compute:alpha/compute.interconnects.patch": patch_interconnect +"/compute:alpha/compute.interconnects.patch/interconnect": interconnect +"/compute:alpha/compute.interconnects.patch/project": project +"/compute:alpha/compute.interconnects.patch/requestId": request_id +"/compute:alpha/compute.interconnects.setIamPolicy": set_interconnect_iam_policy +"/compute:alpha/compute.interconnects.setIamPolicy/project": project +"/compute:alpha/compute.interconnects.setIamPolicy/resource": resource +"/compute:alpha/compute.interconnects.testIamPermissions": test_interconnect_iam_permissions +"/compute:alpha/compute.interconnects.testIamPermissions/project": project +"/compute:alpha/compute.interconnects.testIamPermissions/resource": resource +"/compute:alpha/compute.licenseCodes.get": get_license_code +"/compute:alpha/compute.licenseCodes.get/licenseCode": license_code +"/compute:alpha/compute.licenseCodes.get/project": project +"/compute:alpha/compute.licenses.delete": delete_license +"/compute:alpha/compute.licenses.delete/license": license +"/compute:alpha/compute.licenses.delete/project": project +"/compute:alpha/compute.licenses.delete/requestId": request_id +"/compute:alpha/compute.licenses.get": get_license +"/compute:alpha/compute.licenses.get/license": license +"/compute:alpha/compute.licenses.get/project": project +"/compute:alpha/compute.licenses.getIamPolicy": get_license_iam_policy +"/compute:alpha/compute.licenses.getIamPolicy/project": project +"/compute:alpha/compute.licenses.getIamPolicy/resource": resource +"/compute:alpha/compute.licenses.insert": insert_license +"/compute:alpha/compute.licenses.insert/project": project +"/compute:alpha/compute.licenses.insert/requestId": request_id +"/compute:alpha/compute.licenses.list": list_licenses +"/compute:alpha/compute.licenses.list/filter": filter +"/compute:alpha/compute.licenses.list/maxResults": max_results +"/compute:alpha/compute.licenses.list/orderBy": order_by +"/compute:alpha/compute.licenses.list/pageToken": page_token +"/compute:alpha/compute.licenses.list/project": project +"/compute:alpha/compute.licenses.setIamPolicy": set_license_iam_policy +"/compute:alpha/compute.licenses.setIamPolicy/project": project +"/compute:alpha/compute.licenses.setIamPolicy/resource": resource +"/compute:alpha/compute.licenses.testIamPermissions": test_license_iam_permissions +"/compute:alpha/compute.licenses.testIamPermissions/project": project +"/compute:alpha/compute.licenses.testIamPermissions/resource": resource +"/compute:alpha/compute.machineTypes.aggregatedList": aggregated_machine_type_list +"/compute:alpha/compute.machineTypes.aggregatedList/filter": filter +"/compute:alpha/compute.machineTypes.aggregatedList/maxResults": max_results +"/compute:alpha/compute.machineTypes.aggregatedList/orderBy": order_by +"/compute:alpha/compute.machineTypes.aggregatedList/pageToken": page_token +"/compute:alpha/compute.machineTypes.aggregatedList/project": project +"/compute:alpha/compute.machineTypes.get": get_machine_type +"/compute:alpha/compute.machineTypes.get/machineType": machine_type +"/compute:alpha/compute.machineTypes.get/project": project +"/compute:alpha/compute.machineTypes.get/zone": zone +"/compute:alpha/compute.machineTypes.list": list_machine_types +"/compute:alpha/compute.machineTypes.list/filter": filter +"/compute:alpha/compute.machineTypes.list/maxResults": max_results +"/compute:alpha/compute.machineTypes.list/orderBy": order_by +"/compute:alpha/compute.machineTypes.list/pageToken": page_token +"/compute:alpha/compute.machineTypes.list/project": project +"/compute:alpha/compute.machineTypes.list/zone": zone +"/compute:alpha/compute.networkEndpointGroups.aggregatedList": aggregated_network_endpoint_group_list +"/compute:alpha/compute.networkEndpointGroups.aggregatedList/filter": filter +"/compute:alpha/compute.networkEndpointGroups.aggregatedList/maxResults": max_results +"/compute:alpha/compute.networkEndpointGroups.aggregatedList/orderBy": order_by +"/compute:alpha/compute.networkEndpointGroups.aggregatedList/pageToken": page_token +"/compute:alpha/compute.networkEndpointGroups.aggregatedList/project": project +"/compute:alpha/compute.networkEndpointGroups.attachNetworkEndpoints": attach_network_endpoint_group_network_endpoints +"/compute:alpha/compute.networkEndpointGroups.attachNetworkEndpoints/networkEndpointGroup": network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.attachNetworkEndpoints/project": project +"/compute:alpha/compute.networkEndpointGroups.attachNetworkEndpoints/requestId": request_id +"/compute:alpha/compute.networkEndpointGroups.attachNetworkEndpoints/zone": zone +"/compute:alpha/compute.networkEndpointGroups.delete": delete_network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.delete/networkEndpointGroup": network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.delete/project": project +"/compute:alpha/compute.networkEndpointGroups.delete/requestId": request_id +"/compute:alpha/compute.networkEndpointGroups.delete/zone": zone +"/compute:alpha/compute.networkEndpointGroups.detachNetworkEndpoints": detach_network_endpoint_group_network_endpoints +"/compute:alpha/compute.networkEndpointGroups.detachNetworkEndpoints/networkEndpointGroup": network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.detachNetworkEndpoints/project": project +"/compute:alpha/compute.networkEndpointGroups.detachNetworkEndpoints/requestId": request_id +"/compute:alpha/compute.networkEndpointGroups.detachNetworkEndpoints/zone": zone +"/compute:alpha/compute.networkEndpointGroups.get": get_network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.get/networkEndpointGroup": network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.get/project": project +"/compute:alpha/compute.networkEndpointGroups.get/zone": zone +"/compute:alpha/compute.networkEndpointGroups.insert": insert_network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.insert/project": project +"/compute:alpha/compute.networkEndpointGroups.insert/requestId": request_id +"/compute:alpha/compute.networkEndpointGroups.insert/zone": zone +"/compute:alpha/compute.networkEndpointGroups.list": list_network_endpoint_groups +"/compute:alpha/compute.networkEndpointGroups.list/filter": filter +"/compute:alpha/compute.networkEndpointGroups.list/maxResults": max_results +"/compute:alpha/compute.networkEndpointGroups.list/orderBy": order_by +"/compute:alpha/compute.networkEndpointGroups.list/pageToken": page_token +"/compute:alpha/compute.networkEndpointGroups.list/project": project +"/compute:alpha/compute.networkEndpointGroups.list/zone": zone +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints": list_network_endpoint_group_network_endpoints +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints/filter": filter +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints/maxResults": max_results +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints/networkEndpointGroup": network_endpoint_group +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints/orderBy": order_by +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints/pageToken": page_token +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints/project": project +"/compute:alpha/compute.networkEndpointGroups.listNetworkEndpoints/zone": zone +"/compute:alpha/compute.networkEndpointGroups.testIamPermissions": test_network_endpoint_group_iam_permissions +"/compute:alpha/compute.networkEndpointGroups.testIamPermissions/project": project +"/compute:alpha/compute.networkEndpointGroups.testIamPermissions/resource": resource +"/compute:alpha/compute.networkEndpointGroups.testIamPermissions/zone": zone +"/compute:alpha/compute.networks.addPeering": add_network_peering +"/compute:alpha/compute.networks.addPeering/network": network +"/compute:alpha/compute.networks.addPeering/project": project +"/compute:alpha/compute.networks.addPeering/requestId": request_id +"/compute:alpha/compute.networks.delete": delete_network +"/compute:alpha/compute.networks.delete/network": network +"/compute:alpha/compute.networks.delete/project": project +"/compute:alpha/compute.networks.delete/requestId": request_id +"/compute:alpha/compute.networks.get": get_network +"/compute:alpha/compute.networks.get/network": network +"/compute:alpha/compute.networks.get/project": project +"/compute:alpha/compute.networks.insert": insert_network +"/compute:alpha/compute.networks.insert/project": project +"/compute:alpha/compute.networks.insert/requestId": request_id +"/compute:alpha/compute.networks.list": list_networks +"/compute:alpha/compute.networks.list/filter": filter +"/compute:alpha/compute.networks.list/maxResults": max_results +"/compute:alpha/compute.networks.list/orderBy": order_by +"/compute:alpha/compute.networks.list/pageToken": page_token +"/compute:alpha/compute.networks.list/project": project +"/compute:alpha/compute.networks.listIpOwners": list_network_ip_owners +"/compute:alpha/compute.networks.listIpOwners/filter": filter +"/compute:alpha/compute.networks.listIpOwners/ipCidrRange": ip_cidr_range +"/compute:alpha/compute.networks.listIpOwners/maxResults": max_results +"/compute:alpha/compute.networks.listIpOwners/network": network +"/compute:alpha/compute.networks.listIpOwners/orderBy": order_by +"/compute:alpha/compute.networks.listIpOwners/ownerProjects": owner_projects +"/compute:alpha/compute.networks.listIpOwners/ownerTypes": owner_types +"/compute:alpha/compute.networks.listIpOwners/pageToken": page_token +"/compute:alpha/compute.networks.listIpOwners/project": project +"/compute:alpha/compute.networks.listIpOwners/subnetName": subnet_name +"/compute:alpha/compute.networks.listIpOwners/subnetRegion": subnet_region +"/compute:alpha/compute.networks.patch": patch_network +"/compute:alpha/compute.networks.patch/network": network +"/compute:alpha/compute.networks.patch/project": project +"/compute:alpha/compute.networks.patch/requestId": request_id +"/compute:alpha/compute.networks.removePeering": remove_network_peering +"/compute:alpha/compute.networks.removePeering/network": network +"/compute:alpha/compute.networks.removePeering/project": project +"/compute:alpha/compute.networks.removePeering/requestId": request_id +"/compute:alpha/compute.networks.switchToCustomMode": switch_network_to_custom_mode +"/compute:alpha/compute.networks.switchToCustomMode/network": network +"/compute:alpha/compute.networks.switchToCustomMode/project": project +"/compute:alpha/compute.networks.switchToCustomMode/requestId": request_id +"/compute:alpha/compute.networks.testIamPermissions": test_network_iam_permissions +"/compute:alpha/compute.networks.testIamPermissions/project": project +"/compute:alpha/compute.networks.testIamPermissions/resource": resource +"/compute:alpha/compute.projects.disableXpnHost": disable_project_xpn_host +"/compute:alpha/compute.projects.disableXpnHost/project": project +"/compute:alpha/compute.projects.disableXpnHost/requestId": request_id +"/compute:alpha/compute.projects.disableXpnResource": disable_project_xpn_resource +"/compute:alpha/compute.projects.disableXpnResource/project": project +"/compute:alpha/compute.projects.disableXpnResource/requestId": request_id +"/compute:alpha/compute.projects.enableXpnHost": enable_project_xpn_host +"/compute:alpha/compute.projects.enableXpnHost/project": project +"/compute:alpha/compute.projects.enableXpnHost/requestId": request_id +"/compute:alpha/compute.projects.enableXpnResource": enable_project_xpn_resource +"/compute:alpha/compute.projects.enableXpnResource/project": project +"/compute:alpha/compute.projects.enableXpnResource/requestId": request_id +"/compute:alpha/compute.projects.get": get_project +"/compute:alpha/compute.projects.get/project": project +"/compute:alpha/compute.projects.getXpnHost": get_project_xpn_host +"/compute:alpha/compute.projects.getXpnHost/project": project +"/compute:alpha/compute.projects.getXpnResources": get_project_xpn_resources +"/compute:alpha/compute.projects.getXpnResources/filter": filter +"/compute:alpha/compute.projects.getXpnResources/maxResults": max_results +"/compute:alpha/compute.projects.getXpnResources/order_by": order_by +"/compute:alpha/compute.projects.getXpnResources/pageToken": page_token +"/compute:alpha/compute.projects.getXpnResources/project": project +"/compute:alpha/compute.projects.listXpnHosts": list_project_xpn_hosts +"/compute:alpha/compute.projects.listXpnHosts/filter": filter +"/compute:alpha/compute.projects.listXpnHosts/maxResults": max_results +"/compute:alpha/compute.projects.listXpnHosts/order_by": order_by +"/compute:alpha/compute.projects.listXpnHosts/pageToken": page_token +"/compute:alpha/compute.projects.listXpnHosts/project": project +"/compute:alpha/compute.projects.moveDisk": move_project_disk +"/compute:alpha/compute.projects.moveDisk/project": project +"/compute:alpha/compute.projects.moveDisk/requestId": request_id +"/compute:alpha/compute.projects.moveInstance": move_project_instance +"/compute:alpha/compute.projects.moveInstance/project": project +"/compute:alpha/compute.projects.moveInstance/requestId": request_id +"/compute:alpha/compute.projects.setCommonInstanceMetadata": set_project_common_instance_metadata +"/compute:alpha/compute.projects.setCommonInstanceMetadata/project": project +"/compute:alpha/compute.projects.setCommonInstanceMetadata/requestId": request_id +"/compute:alpha/compute.projects.setDefaultServiceAccount": set_project_default_service_account +"/compute:alpha/compute.projects.setDefaultServiceAccount/project": project +"/compute:alpha/compute.projects.setDefaultServiceAccount/requestId": request_id +"/compute:alpha/compute.projects.setUsageExportBucket": set_project_usage_export_bucket +"/compute:alpha/compute.projects.setUsageExportBucket/project": project +"/compute:alpha/compute.projects.setUsageExportBucket/requestId": request_id +"/compute:alpha/compute.regionAutoscalers.delete": delete_region_autoscaler +"/compute:alpha/compute.regionAutoscalers.delete/autoscaler": autoscaler +"/compute:alpha/compute.regionAutoscalers.delete/project": project +"/compute:alpha/compute.regionAutoscalers.delete/region": region +"/compute:alpha/compute.regionAutoscalers.delete/requestId": request_id +"/compute:alpha/compute.regionAutoscalers.get": get_region_autoscaler +"/compute:alpha/compute.regionAutoscalers.get/autoscaler": autoscaler +"/compute:alpha/compute.regionAutoscalers.get/project": project +"/compute:alpha/compute.regionAutoscalers.get/region": region +"/compute:alpha/compute.regionAutoscalers.insert": insert_region_autoscaler +"/compute:alpha/compute.regionAutoscalers.insert/project": project +"/compute:alpha/compute.regionAutoscalers.insert/region": region +"/compute:alpha/compute.regionAutoscalers.insert/requestId": request_id +"/compute:alpha/compute.regionAutoscalers.list": list_region_autoscalers +"/compute:alpha/compute.regionAutoscalers.list/filter": filter +"/compute:alpha/compute.regionAutoscalers.list/maxResults": max_results +"/compute:alpha/compute.regionAutoscalers.list/orderBy": order_by +"/compute:alpha/compute.regionAutoscalers.list/pageToken": page_token +"/compute:alpha/compute.regionAutoscalers.list/project": project +"/compute:alpha/compute.regionAutoscalers.list/region": region +"/compute:alpha/compute.regionAutoscalers.patch": patch_region_autoscaler +"/compute:alpha/compute.regionAutoscalers.patch/autoscaler": autoscaler +"/compute:alpha/compute.regionAutoscalers.patch/project": project +"/compute:alpha/compute.regionAutoscalers.patch/region": region +"/compute:alpha/compute.regionAutoscalers.patch/requestId": request_id +"/compute:alpha/compute.regionAutoscalers.testIamPermissions": test_region_autoscaler_iam_permissions +"/compute:alpha/compute.regionAutoscalers.testIamPermissions/project": project +"/compute:alpha/compute.regionAutoscalers.testIamPermissions/region": region +"/compute:alpha/compute.regionAutoscalers.testIamPermissions/resource": resource +"/compute:alpha/compute.regionAutoscalers.update": update_region_autoscaler +"/compute:alpha/compute.regionAutoscalers.update/autoscaler": autoscaler +"/compute:alpha/compute.regionAutoscalers.update/project": project +"/compute:alpha/compute.regionAutoscalers.update/region": region +"/compute:alpha/compute.regionAutoscalers.update/requestId": request_id +"/compute:alpha/compute.regionBackendServices.delete": delete_region_backend_service +"/compute:alpha/compute.regionBackendServices.delete/backendService": backend_service +"/compute:alpha/compute.regionBackendServices.delete/project": project +"/compute:alpha/compute.regionBackendServices.delete/region": region +"/compute:alpha/compute.regionBackendServices.delete/requestId": request_id +"/compute:alpha/compute.regionBackendServices.get": get_region_backend_service +"/compute:alpha/compute.regionBackendServices.get/backendService": backend_service +"/compute:alpha/compute.regionBackendServices.get/project": project +"/compute:alpha/compute.regionBackendServices.get/region": region +"/compute:alpha/compute.regionBackendServices.getHealth": get_region_backend_service_health +"/compute:alpha/compute.regionBackendServices.getHealth/backendService": backend_service +"/compute:alpha/compute.regionBackendServices.getHealth/project": project +"/compute:alpha/compute.regionBackendServices.getHealth/region": region +"/compute:alpha/compute.regionBackendServices.insert": insert_region_backend_service +"/compute:alpha/compute.regionBackendServices.insert/project": project +"/compute:alpha/compute.regionBackendServices.insert/region": region +"/compute:alpha/compute.regionBackendServices.insert/requestId": request_id +"/compute:alpha/compute.regionBackendServices.list": list_region_backend_services +"/compute:alpha/compute.regionBackendServices.list/filter": filter +"/compute:alpha/compute.regionBackendServices.list/maxResults": max_results +"/compute:alpha/compute.regionBackendServices.list/orderBy": order_by +"/compute:alpha/compute.regionBackendServices.list/pageToken": page_token +"/compute:alpha/compute.regionBackendServices.list/project": project +"/compute:alpha/compute.regionBackendServices.list/region": region +"/compute:alpha/compute.regionBackendServices.patch": patch_region_backend_service +"/compute:alpha/compute.regionBackendServices.patch/backendService": backend_service +"/compute:alpha/compute.regionBackendServices.patch/project": project +"/compute:alpha/compute.regionBackendServices.patch/region": region +"/compute:alpha/compute.regionBackendServices.patch/requestId": request_id +"/compute:alpha/compute.regionBackendServices.testIamPermissions": test_region_backend_service_iam_permissions +"/compute:alpha/compute.regionBackendServices.testIamPermissions/project": project +"/compute:alpha/compute.regionBackendServices.testIamPermissions/region": region +"/compute:alpha/compute.regionBackendServices.testIamPermissions/resource": resource +"/compute:alpha/compute.regionBackendServices.update": update_region_backend_service +"/compute:alpha/compute.regionBackendServices.update/backendService": backend_service +"/compute:alpha/compute.regionBackendServices.update/project": project +"/compute:alpha/compute.regionBackendServices.update/region": region +"/compute:alpha/compute.regionBackendServices.update/requestId": request_id +"/compute:alpha/compute.regionCommitments.aggregatedList": aggregated_region_commitment_list +"/compute:alpha/compute.regionCommitments.aggregatedList/filter": filter +"/compute:alpha/compute.regionCommitments.aggregatedList/maxResults": max_results +"/compute:alpha/compute.regionCommitments.aggregatedList/orderBy": order_by +"/compute:alpha/compute.regionCommitments.aggregatedList/pageToken": page_token +"/compute:alpha/compute.regionCommitments.aggregatedList/project": project +"/compute:alpha/compute.regionCommitments.get": get_region_commitment +"/compute:alpha/compute.regionCommitments.get/commitment": commitment +"/compute:alpha/compute.regionCommitments.get/project": project +"/compute:alpha/compute.regionCommitments.get/region": region +"/compute:alpha/compute.regionCommitments.insert": insert_region_commitment +"/compute:alpha/compute.regionCommitments.insert/project": project +"/compute:alpha/compute.regionCommitments.insert/region": region +"/compute:alpha/compute.regionCommitments.insert/requestId": request_id +"/compute:alpha/compute.regionCommitments.list": list_region_commitments +"/compute:alpha/compute.regionCommitments.list/filter": filter +"/compute:alpha/compute.regionCommitments.list/maxResults": max_results +"/compute:alpha/compute.regionCommitments.list/orderBy": order_by +"/compute:alpha/compute.regionCommitments.list/pageToken": page_token +"/compute:alpha/compute.regionCommitments.list/project": project +"/compute:alpha/compute.regionCommitments.list/region": region +"/compute:alpha/compute.regionCommitments.testIamPermissions": test_region_commitment_iam_permissions +"/compute:alpha/compute.regionCommitments.testIamPermissions/project": project +"/compute:alpha/compute.regionCommitments.testIamPermissions/region": region +"/compute:alpha/compute.regionCommitments.testIamPermissions/resource": resource +"/compute:alpha/compute.regionDiskTypes.get": get_region_disk_type +"/compute:alpha/compute.regionDiskTypes.get/diskType": disk_type +"/compute:alpha/compute.regionDiskTypes.get/project": project +"/compute:alpha/compute.regionDiskTypes.get/region": region +"/compute:alpha/compute.regionDiskTypes.list": list_region_disk_types +"/compute:alpha/compute.regionDiskTypes.list/filter": filter +"/compute:alpha/compute.regionDiskTypes.list/maxResults": max_results +"/compute:alpha/compute.regionDiskTypes.list/orderBy": order_by +"/compute:alpha/compute.regionDiskTypes.list/pageToken": page_token +"/compute:alpha/compute.regionDiskTypes.list/project": project +"/compute:alpha/compute.regionDiskTypes.list/region": region +"/compute:alpha/compute.regionDisks.createSnapshot": create_region_disk_snapshot +"/compute:alpha/compute.regionDisks.createSnapshot/disk": disk +"/compute:alpha/compute.regionDisks.createSnapshot/guestFlush": guest_flush +"/compute:alpha/compute.regionDisks.createSnapshot/project": project +"/compute:alpha/compute.regionDisks.createSnapshot/region": region +"/compute:alpha/compute.regionDisks.createSnapshot/requestId": request_id +"/compute:alpha/compute.regionDisks.delete": delete_region_disk +"/compute:alpha/compute.regionDisks.delete/disk": disk +"/compute:alpha/compute.regionDisks.delete/project": project +"/compute:alpha/compute.regionDisks.delete/region": region +"/compute:alpha/compute.regionDisks.delete/requestId": request_id +"/compute:alpha/compute.regionDisks.get": get_region_disk +"/compute:alpha/compute.regionDisks.get/disk": disk +"/compute:alpha/compute.regionDisks.get/project": project +"/compute:alpha/compute.regionDisks.get/region": region +"/compute:alpha/compute.regionDisks.insert": insert_region_disk +"/compute:alpha/compute.regionDisks.insert/project": project +"/compute:alpha/compute.regionDisks.insert/region": region +"/compute:alpha/compute.regionDisks.insert/requestId": request_id +"/compute:alpha/compute.regionDisks.insert/sourceImage": source_image +"/compute:alpha/compute.regionDisks.list": list_region_disks +"/compute:alpha/compute.regionDisks.list/filter": filter +"/compute:alpha/compute.regionDisks.list/maxResults": max_results +"/compute:alpha/compute.regionDisks.list/orderBy": order_by +"/compute:alpha/compute.regionDisks.list/pageToken": page_token +"/compute:alpha/compute.regionDisks.list/project": project +"/compute:alpha/compute.regionDisks.list/region": region +"/compute:alpha/compute.regionDisks.resize": resize_region_disk +"/compute:alpha/compute.regionDisks.resize/disk": disk +"/compute:alpha/compute.regionDisks.resize/project": project +"/compute:alpha/compute.regionDisks.resize/region": region +"/compute:alpha/compute.regionDisks.resize/requestId": request_id +"/compute:alpha/compute.regionDisks.setLabels": set_region_disk_labels +"/compute:alpha/compute.regionDisks.setLabels/project": project +"/compute:alpha/compute.regionDisks.setLabels/region": region +"/compute:alpha/compute.regionDisks.setLabels/requestId": request_id +"/compute:alpha/compute.regionDisks.setLabels/resource": resource +"/compute:alpha/compute.regionDisks.testIamPermissions": test_region_disk_iam_permissions +"/compute:alpha/compute.regionDisks.testIamPermissions/project": project +"/compute:alpha/compute.regionDisks.testIamPermissions/region": region +"/compute:alpha/compute.regionDisks.testIamPermissions/resource": resource +"/compute:alpha/compute.regionInstanceGroupManagers.abandonInstances": abandon_region_instance_group_manager_instances +"/compute:alpha/compute.regionInstanceGroupManagers.abandonInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.abandonInstances/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.abandonInstances/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.abandonInstances/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.applyUpdatesToInstances": apply_region_instance_group_manager_updates_to_instances +"/compute:alpha/compute.regionInstanceGroupManagers.applyUpdatesToInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.applyUpdatesToInstances/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.applyUpdatesToInstances/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.delete": delete_region_instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.delete/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.delete/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.delete/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.delete/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.deleteInstances": delete_region_instance_group_manager_instances +"/compute:alpha/compute.regionInstanceGroupManagers.deleteInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.deleteInstances/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.deleteInstances/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.deleteInstances/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.deletePerInstanceConfigs": delete_region_instance_group_manager_per_instance_configs +"/compute:alpha/compute.regionInstanceGroupManagers.deletePerInstanceConfigs/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.deletePerInstanceConfigs/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.deletePerInstanceConfigs/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.get": get_region_instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.get/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.get/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.get/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.insert": insert_region_instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.insert/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.insert/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.insert/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.list": list_region_instance_group_managers +"/compute:alpha/compute.regionInstanceGroupManagers.list/filter": filter +"/compute:alpha/compute.regionInstanceGroupManagers.list/maxResults": max_results +"/compute:alpha/compute.regionInstanceGroupManagers.list/orderBy": order_by +"/compute:alpha/compute.regionInstanceGroupManagers.list/pageToken": page_token +"/compute:alpha/compute.regionInstanceGroupManagers.list/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.list/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances": list_region_instance_group_manager_managed_instances +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances/filter": filter +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances/maxResults": max_results +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances/order_by": order_by +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances/pageToken": page_token +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.listManagedInstances/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs": list_region_instance_group_manager_per_instance_configs +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs/filter": filter +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs/maxResults": max_results +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs/orderBy": order_by +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs/pageToken": page_token +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.listPerInstanceConfigs/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.patch": patch_region_instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.patch/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.patch/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.patch/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.patch/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.recreateInstances": recreate_region_instance_group_manager_instances +"/compute:alpha/compute.regionInstanceGroupManagers.recreateInstances/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.recreateInstances/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.recreateInstances/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.recreateInstances/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.resize": resize_region_instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.resize/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.resize/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.resize/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.resize/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.resize/size": size +"/compute:alpha/compute.regionInstanceGroupManagers.setAutoHealingPolicies": set_region_instance_group_manager_auto_healing_policies +"/compute:alpha/compute.regionInstanceGroupManagers.setAutoHealingPolicies/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.setAutoHealingPolicies/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.setAutoHealingPolicies/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.setAutoHealingPolicies/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.setInstanceTemplate": set_region_instance_group_manager_instance_template +"/compute:alpha/compute.regionInstanceGroupManagers.setInstanceTemplate/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.setInstanceTemplate/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.setInstanceTemplate/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.setInstanceTemplate/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.setTargetPools": set_region_instance_group_manager_target_pools +"/compute:alpha/compute.regionInstanceGroupManagers.setTargetPools/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.setTargetPools/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.setTargetPools/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.setTargetPools/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.testIamPermissions": test_region_instance_group_manager_iam_permissions +"/compute:alpha/compute.regionInstanceGroupManagers.testIamPermissions/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.testIamPermissions/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.testIamPermissions/resource": resource +"/compute:alpha/compute.regionInstanceGroupManagers.update": update_region_instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.update/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.update/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.update/region": region +"/compute:alpha/compute.regionInstanceGroupManagers.update/requestId": request_id +"/compute:alpha/compute.regionInstanceGroupManagers.updatePerInstanceConfigs": update_region_instance_group_manager_per_instance_configs +"/compute:alpha/compute.regionInstanceGroupManagers.updatePerInstanceConfigs/instanceGroupManager": instance_group_manager +"/compute:alpha/compute.regionInstanceGroupManagers.updatePerInstanceConfigs/project": project +"/compute:alpha/compute.regionInstanceGroupManagers.updatePerInstanceConfigs/region": region +"/compute:alpha/compute.regionInstanceGroups.get": get_region_instance_group +"/compute:alpha/compute.regionInstanceGroups.get/instanceGroup": instance_group +"/compute:alpha/compute.regionInstanceGroups.get/project": project +"/compute:alpha/compute.regionInstanceGroups.get/region": region +"/compute:alpha/compute.regionInstanceGroups.list": list_region_instance_groups +"/compute:alpha/compute.regionInstanceGroups.list/filter": filter +"/compute:alpha/compute.regionInstanceGroups.list/maxResults": max_results +"/compute:alpha/compute.regionInstanceGroups.list/orderBy": order_by +"/compute:alpha/compute.regionInstanceGroups.list/pageToken": page_token +"/compute:alpha/compute.regionInstanceGroups.list/project": project +"/compute:alpha/compute.regionInstanceGroups.list/region": region +"/compute:alpha/compute.regionInstanceGroups.listInstances": list_region_instance_group_instances +"/compute:alpha/compute.regionInstanceGroups.listInstances/filter": filter +"/compute:alpha/compute.regionInstanceGroups.listInstances/instanceGroup": instance_group +"/compute:alpha/compute.regionInstanceGroups.listInstances/maxResults": max_results +"/compute:alpha/compute.regionInstanceGroups.listInstances/orderBy": order_by +"/compute:alpha/compute.regionInstanceGroups.listInstances/pageToken": page_token +"/compute:alpha/compute.regionInstanceGroups.listInstances/project": project +"/compute:alpha/compute.regionInstanceGroups.listInstances/region": region +"/compute:alpha/compute.regionInstanceGroups.setNamedPorts": set_region_instance_group_named_ports +"/compute:alpha/compute.regionInstanceGroups.setNamedPorts/instanceGroup": instance_group +"/compute:alpha/compute.regionInstanceGroups.setNamedPorts/project": project +"/compute:alpha/compute.regionInstanceGroups.setNamedPorts/region": region +"/compute:alpha/compute.regionInstanceGroups.setNamedPorts/requestId": request_id +"/compute:alpha/compute.regionInstanceGroups.testIamPermissions": test_region_instance_group_iam_permissions +"/compute:alpha/compute.regionInstanceGroups.testIamPermissions/project": project +"/compute:alpha/compute.regionInstanceGroups.testIamPermissions/region": region +"/compute:alpha/compute.regionInstanceGroups.testIamPermissions/resource": resource +"/compute:alpha/compute.regionOperations.delete": delete_region_operation +"/compute:alpha/compute.regionOperations.delete/operation": operation +"/compute:alpha/compute.regionOperations.delete/project": project +"/compute:alpha/compute.regionOperations.delete/region": region +"/compute:alpha/compute.regionOperations.get": get_region_operation +"/compute:alpha/compute.regionOperations.get/operation": operation +"/compute:alpha/compute.regionOperations.get/project": project +"/compute:alpha/compute.regionOperations.get/region": region +"/compute:alpha/compute.regionOperations.list": list_region_operations +"/compute:alpha/compute.regionOperations.list/filter": filter +"/compute:alpha/compute.regionOperations.list/maxResults": max_results +"/compute:alpha/compute.regionOperations.list/orderBy": order_by +"/compute:alpha/compute.regionOperations.list/pageToken": page_token +"/compute:alpha/compute.regionOperations.list/project": project +"/compute:alpha/compute.regionOperations.list/region": region +"/compute:alpha/compute.regions.get": get_region +"/compute:alpha/compute.regions.get/project": project +"/compute:alpha/compute.regions.get/region": region +"/compute:alpha/compute.regions.list": list_regions +"/compute:alpha/compute.regions.list/filter": filter +"/compute:alpha/compute.regions.list/maxResults": max_results +"/compute:alpha/compute.regions.list/orderBy": order_by +"/compute:alpha/compute.regions.list/pageToken": page_token +"/compute:alpha/compute.regions.list/project": project +"/compute:alpha/compute.routers.aggregatedList": aggregated_router_list +"/compute:alpha/compute.routers.aggregatedList/filter": filter +"/compute:alpha/compute.routers.aggregatedList/maxResults": max_results +"/compute:alpha/compute.routers.aggregatedList/orderBy": order_by +"/compute:alpha/compute.routers.aggregatedList/pageToken": page_token +"/compute:alpha/compute.routers.aggregatedList/project": project +"/compute:alpha/compute.routers.delete": delete_router +"/compute:alpha/compute.routers.delete/project": project +"/compute:alpha/compute.routers.delete/region": region +"/compute:alpha/compute.routers.delete/requestId": request_id +"/compute:alpha/compute.routers.delete/router": router +"/compute:alpha/compute.routers.get": get_router +"/compute:alpha/compute.routers.get/project": project +"/compute:alpha/compute.routers.get/region": region +"/compute:alpha/compute.routers.get/router": router +"/compute:alpha/compute.routers.getRouterStatus": get_router_router_status +"/compute:alpha/compute.routers.getRouterStatus/project": project +"/compute:alpha/compute.routers.getRouterStatus/region": region +"/compute:alpha/compute.routers.getRouterStatus/router": router +"/compute:alpha/compute.routers.insert": insert_router +"/compute:alpha/compute.routers.insert/project": project +"/compute:alpha/compute.routers.insert/region": region +"/compute:alpha/compute.routers.insert/requestId": request_id +"/compute:alpha/compute.routers.list": list_routers +"/compute:alpha/compute.routers.list/filter": filter +"/compute:alpha/compute.routers.list/maxResults": max_results +"/compute:alpha/compute.routers.list/orderBy": order_by +"/compute:alpha/compute.routers.list/pageToken": page_token +"/compute:alpha/compute.routers.list/project": project +"/compute:alpha/compute.routers.list/region": region +"/compute:alpha/compute.routers.patch": patch_router +"/compute:alpha/compute.routers.patch/project": project +"/compute:alpha/compute.routers.patch/region": region +"/compute:alpha/compute.routers.patch/requestId": request_id +"/compute:alpha/compute.routers.patch/router": router +"/compute:alpha/compute.routers.preview": preview_router +"/compute:alpha/compute.routers.preview/project": project +"/compute:alpha/compute.routers.preview/region": region +"/compute:alpha/compute.routers.preview/router": router +"/compute:alpha/compute.routers.testIamPermissions": test_router_iam_permissions +"/compute:alpha/compute.routers.testIamPermissions/project": project +"/compute:alpha/compute.routers.testIamPermissions/region": region +"/compute:alpha/compute.routers.testIamPermissions/resource": resource +"/compute:alpha/compute.routers.update": update_router +"/compute:alpha/compute.routers.update/project": project +"/compute:alpha/compute.routers.update/region": region +"/compute:alpha/compute.routers.update/requestId": request_id +"/compute:alpha/compute.routers.update/router": router +"/compute:alpha/compute.routes.delete": delete_route +"/compute:alpha/compute.routes.delete/project": project +"/compute:alpha/compute.routes.delete/requestId": request_id +"/compute:alpha/compute.routes.delete/route": route +"/compute:alpha/compute.routes.get": get_route +"/compute:alpha/compute.routes.get/project": project +"/compute:alpha/compute.routes.get/route": route +"/compute:alpha/compute.routes.insert": insert_route +"/compute:alpha/compute.routes.insert/project": project +"/compute:alpha/compute.routes.insert/requestId": request_id +"/compute:alpha/compute.routes.list": list_routes +"/compute:alpha/compute.routes.list/filter": filter +"/compute:alpha/compute.routes.list/maxResults": max_results +"/compute:alpha/compute.routes.list/orderBy": order_by +"/compute:alpha/compute.routes.list/pageToken": page_token +"/compute:alpha/compute.routes.list/project": project +"/compute:alpha/compute.routes.testIamPermissions": test_route_iam_permissions +"/compute:alpha/compute.routes.testIamPermissions/project": project +"/compute:alpha/compute.routes.testIamPermissions/resource": resource +"/compute:alpha/compute.securityPolicies.delete": delete_security_policy +"/compute:alpha/compute.securityPolicies.delete/project": project +"/compute:alpha/compute.securityPolicies.delete/requestId": request_id +"/compute:alpha/compute.securityPolicies.delete/securityPolicy": security_policy +"/compute:alpha/compute.securityPolicies.get": get_security_policy +"/compute:alpha/compute.securityPolicies.get/project": project +"/compute:alpha/compute.securityPolicies.get/securityPolicy": security_policy +"/compute:alpha/compute.securityPolicies.insert": insert_security_policy +"/compute:alpha/compute.securityPolicies.insert/project": project +"/compute:alpha/compute.securityPolicies.insert/requestId": request_id +"/compute:alpha/compute.securityPolicies.list": list_security_policies +"/compute:alpha/compute.securityPolicies.list/filter": filter +"/compute:alpha/compute.securityPolicies.list/maxResults": max_results +"/compute:alpha/compute.securityPolicies.list/orderBy": order_by +"/compute:alpha/compute.securityPolicies.list/pageToken": page_token +"/compute:alpha/compute.securityPolicies.list/project": project +"/compute:alpha/compute.securityPolicies.patch": patch_security_policy +"/compute:alpha/compute.securityPolicies.patch/project": project +"/compute:alpha/compute.securityPolicies.patch/requestId": request_id +"/compute:alpha/compute.securityPolicies.patch/securityPolicy": security_policy +"/compute:alpha/compute.securityPolicies.testIamPermissions": test_security_policy_iam_permissions +"/compute:alpha/compute.securityPolicies.testIamPermissions/project": project +"/compute:alpha/compute.securityPolicies.testIamPermissions/resource": resource +"/compute:alpha/compute.snapshots.delete": delete_snapshot +"/compute:alpha/compute.snapshots.delete/project": project +"/compute:alpha/compute.snapshots.delete/requestId": request_id +"/compute:alpha/compute.snapshots.delete/snapshot": snapshot +"/compute:alpha/compute.snapshots.get": get_snapshot +"/compute:alpha/compute.snapshots.get/project": project +"/compute:alpha/compute.snapshots.get/snapshot": snapshot +"/compute:alpha/compute.snapshots.getIamPolicy": get_snapshot_iam_policy +"/compute:alpha/compute.snapshots.getIamPolicy/project": project +"/compute:alpha/compute.snapshots.getIamPolicy/resource": resource +"/compute:alpha/compute.snapshots.list": list_snapshots +"/compute:alpha/compute.snapshots.list/filter": filter +"/compute:alpha/compute.snapshots.list/maxResults": max_results +"/compute:alpha/compute.snapshots.list/orderBy": order_by +"/compute:alpha/compute.snapshots.list/pageToken": page_token +"/compute:alpha/compute.snapshots.list/project": project +"/compute:alpha/compute.snapshots.setIamPolicy": set_snapshot_iam_policy +"/compute:alpha/compute.snapshots.setIamPolicy/project": project +"/compute:alpha/compute.snapshots.setIamPolicy/resource": resource +"/compute:alpha/compute.snapshots.setLabels": set_snapshot_labels +"/compute:alpha/compute.snapshots.setLabels/project": project +"/compute:alpha/compute.snapshots.setLabels/resource": resource +"/compute:alpha/compute.snapshots.testIamPermissions": test_snapshot_iam_permissions +"/compute:alpha/compute.snapshots.testIamPermissions/project": project +"/compute:alpha/compute.snapshots.testIamPermissions/resource": resource +"/compute:alpha/compute.sslCertificates.delete": delete_ssl_certificate +"/compute:alpha/compute.sslCertificates.delete/project": project +"/compute:alpha/compute.sslCertificates.delete/requestId": request_id +"/compute:alpha/compute.sslCertificates.delete/sslCertificate": ssl_certificate +"/compute:alpha/compute.sslCertificates.get": get_ssl_certificate +"/compute:alpha/compute.sslCertificates.get/project": project +"/compute:alpha/compute.sslCertificates.get/sslCertificate": ssl_certificate +"/compute:alpha/compute.sslCertificates.insert": insert_ssl_certificate +"/compute:alpha/compute.sslCertificates.insert/project": project +"/compute:alpha/compute.sslCertificates.insert/requestId": request_id +"/compute:alpha/compute.sslCertificates.list": list_ssl_certificates +"/compute:alpha/compute.sslCertificates.list/filter": filter +"/compute:alpha/compute.sslCertificates.list/maxResults": max_results +"/compute:alpha/compute.sslCertificates.list/orderBy": order_by +"/compute:alpha/compute.sslCertificates.list/pageToken": page_token +"/compute:alpha/compute.sslCertificates.list/project": project +"/compute:alpha/compute.sslCertificates.testIamPermissions": test_ssl_certificate_iam_permissions +"/compute:alpha/compute.sslCertificates.testIamPermissions/project": project +"/compute:alpha/compute.sslCertificates.testIamPermissions/resource": resource +"/compute:alpha/compute.subnetworks.aggregatedList": aggregated_subnetwork_list +"/compute:alpha/compute.subnetworks.aggregatedList/filter": filter +"/compute:alpha/compute.subnetworks.aggregatedList/maxResults": max_results +"/compute:alpha/compute.subnetworks.aggregatedList/orderBy": order_by +"/compute:alpha/compute.subnetworks.aggregatedList/pageToken": page_token +"/compute:alpha/compute.subnetworks.aggregatedList/project": project +"/compute:alpha/compute.subnetworks.delete": delete_subnetwork +"/compute:alpha/compute.subnetworks.delete/project": project +"/compute:alpha/compute.subnetworks.delete/region": region +"/compute:alpha/compute.subnetworks.delete/requestId": request_id +"/compute:alpha/compute.subnetworks.delete/subnetwork": subnetwork +"/compute:alpha/compute.subnetworks.expandIpCidrRange": expand_subnetwork_ip_cidr_range +"/compute:alpha/compute.subnetworks.expandIpCidrRange/project": project +"/compute:alpha/compute.subnetworks.expandIpCidrRange/region": region +"/compute:alpha/compute.subnetworks.expandIpCidrRange/requestId": request_id +"/compute:alpha/compute.subnetworks.expandIpCidrRange/subnetwork": subnetwork +"/compute:alpha/compute.subnetworks.get": get_subnetwork +"/compute:alpha/compute.subnetworks.get/project": project +"/compute:alpha/compute.subnetworks.get/region": region +"/compute:alpha/compute.subnetworks.get/subnetwork": subnetwork +"/compute:alpha/compute.subnetworks.getIamPolicy": get_subnetwork_iam_policy +"/compute:alpha/compute.subnetworks.getIamPolicy/project": project +"/compute:alpha/compute.subnetworks.getIamPolicy/region": region +"/compute:alpha/compute.subnetworks.getIamPolicy/resource": resource +"/compute:alpha/compute.subnetworks.insert": insert_subnetwork +"/compute:alpha/compute.subnetworks.insert/project": project +"/compute:alpha/compute.subnetworks.insert/region": region +"/compute:alpha/compute.subnetworks.insert/requestId": request_id +"/compute:alpha/compute.subnetworks.list": list_subnetworks +"/compute:alpha/compute.subnetworks.list/filter": filter +"/compute:alpha/compute.subnetworks.list/maxResults": max_results +"/compute:alpha/compute.subnetworks.list/orderBy": order_by +"/compute:alpha/compute.subnetworks.list/pageToken": page_token +"/compute:alpha/compute.subnetworks.list/project": project +"/compute:alpha/compute.subnetworks.list/region": region +"/compute:alpha/compute.subnetworks.patch": patch_subnetwork +"/compute:alpha/compute.subnetworks.patch/project": project +"/compute:alpha/compute.subnetworks.patch/region": region +"/compute:alpha/compute.subnetworks.patch/requestId": request_id +"/compute:alpha/compute.subnetworks.patch/subnetwork": subnetwork +"/compute:alpha/compute.subnetworks.setIamPolicy": set_subnetwork_iam_policy +"/compute:alpha/compute.subnetworks.setIamPolicy/project": project +"/compute:alpha/compute.subnetworks.setIamPolicy/region": region +"/compute:alpha/compute.subnetworks.setIamPolicy/resource": resource +"/compute:alpha/compute.subnetworks.setPrivateIpGoogleAccess": set_subnetwork_private_ip_google_access +"/compute:alpha/compute.subnetworks.setPrivateIpGoogleAccess/project": project +"/compute:alpha/compute.subnetworks.setPrivateIpGoogleAccess/region": region +"/compute:alpha/compute.subnetworks.setPrivateIpGoogleAccess/requestId": request_id +"/compute:alpha/compute.subnetworks.setPrivateIpGoogleAccess/subnetwork": subnetwork +"/compute:alpha/compute.subnetworks.testIamPermissions": test_subnetwork_iam_permissions +"/compute:alpha/compute.subnetworks.testIamPermissions/project": project +"/compute:alpha/compute.subnetworks.testIamPermissions/region": region +"/compute:alpha/compute.subnetworks.testIamPermissions/resource": resource +"/compute:alpha/compute.targetHttpProxies.delete": delete_target_http_proxy +"/compute:alpha/compute.targetHttpProxies.delete/project": project +"/compute:alpha/compute.targetHttpProxies.delete/requestId": request_id +"/compute:alpha/compute.targetHttpProxies.delete/targetHttpProxy": target_http_proxy +"/compute:alpha/compute.targetHttpProxies.get": get_target_http_proxy +"/compute:alpha/compute.targetHttpProxies.get/project": project +"/compute:alpha/compute.targetHttpProxies.get/targetHttpProxy": target_http_proxy +"/compute:alpha/compute.targetHttpProxies.insert": insert_target_http_proxy +"/compute:alpha/compute.targetHttpProxies.insert/project": project +"/compute:alpha/compute.targetHttpProxies.insert/requestId": request_id +"/compute:alpha/compute.targetHttpProxies.list": list_target_http_proxies +"/compute:alpha/compute.targetHttpProxies.list/filter": filter +"/compute:alpha/compute.targetHttpProxies.list/maxResults": max_results +"/compute:alpha/compute.targetHttpProxies.list/orderBy": order_by +"/compute:alpha/compute.targetHttpProxies.list/pageToken": page_token +"/compute:alpha/compute.targetHttpProxies.list/project": project +"/compute:alpha/compute.targetHttpProxies.setUrlMap": set_target_http_proxy_url_map +"/compute:alpha/compute.targetHttpProxies.setUrlMap/project": project +"/compute:alpha/compute.targetHttpProxies.setUrlMap/requestId": request_id +"/compute:alpha/compute.targetHttpProxies.setUrlMap/targetHttpProxy": target_http_proxy +"/compute:alpha/compute.targetHttpProxies.testIamPermissions": test_target_http_proxy_iam_permissions +"/compute:alpha/compute.targetHttpProxies.testIamPermissions/project": project +"/compute:alpha/compute.targetHttpProxies.testIamPermissions/resource": resource +"/compute:alpha/compute.targetHttpsProxies.delete": delete_target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.delete/project": project +"/compute:alpha/compute.targetHttpsProxies.delete/requestId": request_id +"/compute:alpha/compute.targetHttpsProxies.delete/targetHttpsProxy": target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.get": get_target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.get/project": project +"/compute:alpha/compute.targetHttpsProxies.get/targetHttpsProxy": target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.insert": insert_target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.insert/project": project +"/compute:alpha/compute.targetHttpsProxies.insert/requestId": request_id +"/compute:alpha/compute.targetHttpsProxies.list": list_target_https_proxies +"/compute:alpha/compute.targetHttpsProxies.list/filter": filter +"/compute:alpha/compute.targetHttpsProxies.list/maxResults": max_results +"/compute:alpha/compute.targetHttpsProxies.list/orderBy": order_by +"/compute:alpha/compute.targetHttpsProxies.list/pageToken": page_token +"/compute:alpha/compute.targetHttpsProxies.list/project": project +"/compute:alpha/compute.targetHttpsProxies.setQuicOverride": set_target_https_proxy_quic_override +"/compute:alpha/compute.targetHttpsProxies.setQuicOverride/project": project +"/compute:alpha/compute.targetHttpsProxies.setQuicOverride/requestId": request_id +"/compute:alpha/compute.targetHttpsProxies.setQuicOverride/targetHttpsProxy": target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.setSslCertificates": set_target_https_proxy_ssl_certificates +"/compute:alpha/compute.targetHttpsProxies.setSslCertificates/project": project +"/compute:alpha/compute.targetHttpsProxies.setSslCertificates/requestId": request_id +"/compute:alpha/compute.targetHttpsProxies.setSslCertificates/targetHttpsProxy": target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.setUrlMap": set_target_https_proxy_url_map +"/compute:alpha/compute.targetHttpsProxies.setUrlMap/project": project +"/compute:alpha/compute.targetHttpsProxies.setUrlMap/requestId": request_id +"/compute:alpha/compute.targetHttpsProxies.setUrlMap/targetHttpsProxy": target_https_proxy +"/compute:alpha/compute.targetHttpsProxies.testIamPermissions": test_target_https_proxy_iam_permissions +"/compute:alpha/compute.targetHttpsProxies.testIamPermissions/project": project +"/compute:alpha/compute.targetHttpsProxies.testIamPermissions/resource": resource +"/compute:alpha/compute.targetInstances.aggregatedList": aggregated_target_instance_list +"/compute:alpha/compute.targetInstances.aggregatedList/filter": filter +"/compute:alpha/compute.targetInstances.aggregatedList/maxResults": max_results +"/compute:alpha/compute.targetInstances.aggregatedList/orderBy": order_by +"/compute:alpha/compute.targetInstances.aggregatedList/pageToken": page_token +"/compute:alpha/compute.targetInstances.aggregatedList/project": project +"/compute:alpha/compute.targetInstances.delete": delete_target_instance +"/compute:alpha/compute.targetInstances.delete/project": project +"/compute:alpha/compute.targetInstances.delete/requestId": request_id +"/compute:alpha/compute.targetInstances.delete/targetInstance": target_instance +"/compute:alpha/compute.targetInstances.delete/zone": zone +"/compute:alpha/compute.targetInstances.get": get_target_instance +"/compute:alpha/compute.targetInstances.get/project": project +"/compute:alpha/compute.targetInstances.get/targetInstance": target_instance +"/compute:alpha/compute.targetInstances.get/zone": zone +"/compute:alpha/compute.targetInstances.insert": insert_target_instance +"/compute:alpha/compute.targetInstances.insert/project": project +"/compute:alpha/compute.targetInstances.insert/requestId": request_id +"/compute:alpha/compute.targetInstances.insert/zone": zone +"/compute:alpha/compute.targetInstances.list": list_target_instances +"/compute:alpha/compute.targetInstances.list/filter": filter +"/compute:alpha/compute.targetInstances.list/maxResults": max_results +"/compute:alpha/compute.targetInstances.list/orderBy": order_by +"/compute:alpha/compute.targetInstances.list/pageToken": page_token +"/compute:alpha/compute.targetInstances.list/project": project +"/compute:alpha/compute.targetInstances.list/zone": zone +"/compute:alpha/compute.targetInstances.testIamPermissions": test_target_instance_iam_permissions +"/compute:alpha/compute.targetInstances.testIamPermissions/project": project +"/compute:alpha/compute.targetInstances.testIamPermissions/resource": resource +"/compute:alpha/compute.targetInstances.testIamPermissions/zone": zone +"/compute:alpha/compute.targetPools.addHealthCheck": add_target_pool_health_check +"/compute:alpha/compute.targetPools.addHealthCheck/project": project +"/compute:alpha/compute.targetPools.addHealthCheck/region": region +"/compute:alpha/compute.targetPools.addHealthCheck/requestId": request_id +"/compute:alpha/compute.targetPools.addHealthCheck/targetPool": target_pool +"/compute:alpha/compute.targetPools.addInstance": add_target_pool_instance +"/compute:alpha/compute.targetPools.addInstance/project": project +"/compute:alpha/compute.targetPools.addInstance/region": region +"/compute:alpha/compute.targetPools.addInstance/requestId": request_id +"/compute:alpha/compute.targetPools.addInstance/targetPool": target_pool +"/compute:alpha/compute.targetPools.aggregatedList": aggregated_target_pool_list +"/compute:alpha/compute.targetPools.aggregatedList/filter": filter +"/compute:alpha/compute.targetPools.aggregatedList/maxResults": max_results +"/compute:alpha/compute.targetPools.aggregatedList/orderBy": order_by +"/compute:alpha/compute.targetPools.aggregatedList/pageToken": page_token +"/compute:alpha/compute.targetPools.aggregatedList/project": project +"/compute:alpha/compute.targetPools.delete": delete_target_pool +"/compute:alpha/compute.targetPools.delete/project": project +"/compute:alpha/compute.targetPools.delete/region": region +"/compute:alpha/compute.targetPools.delete/requestId": request_id +"/compute:alpha/compute.targetPools.delete/targetPool": target_pool +"/compute:alpha/compute.targetPools.get": get_target_pool +"/compute:alpha/compute.targetPools.get/project": project +"/compute:alpha/compute.targetPools.get/region": region +"/compute:alpha/compute.targetPools.get/targetPool": target_pool +"/compute:alpha/compute.targetPools.getHealth": get_target_pool_health +"/compute:alpha/compute.targetPools.getHealth/project": project +"/compute:alpha/compute.targetPools.getHealth/region": region +"/compute:alpha/compute.targetPools.getHealth/targetPool": target_pool +"/compute:alpha/compute.targetPools.insert": insert_target_pool +"/compute:alpha/compute.targetPools.insert/project": project +"/compute:alpha/compute.targetPools.insert/region": region +"/compute:alpha/compute.targetPools.insert/requestId": request_id +"/compute:alpha/compute.targetPools.list": list_target_pools +"/compute:alpha/compute.targetPools.list/filter": filter +"/compute:alpha/compute.targetPools.list/maxResults": max_results +"/compute:alpha/compute.targetPools.list/orderBy": order_by +"/compute:alpha/compute.targetPools.list/pageToken": page_token +"/compute:alpha/compute.targetPools.list/project": project +"/compute:alpha/compute.targetPools.list/region": region +"/compute:alpha/compute.targetPools.removeHealthCheck": remove_target_pool_health_check +"/compute:alpha/compute.targetPools.removeHealthCheck/project": project +"/compute:alpha/compute.targetPools.removeHealthCheck/region": region +"/compute:alpha/compute.targetPools.removeHealthCheck/requestId": request_id +"/compute:alpha/compute.targetPools.removeHealthCheck/targetPool": target_pool +"/compute:alpha/compute.targetPools.removeInstance": remove_target_pool_instance +"/compute:alpha/compute.targetPools.removeInstance/project": project +"/compute:alpha/compute.targetPools.removeInstance/region": region +"/compute:alpha/compute.targetPools.removeInstance/requestId": request_id +"/compute:alpha/compute.targetPools.removeInstance/targetPool": target_pool +"/compute:alpha/compute.targetPools.setBackup": set_target_pool_backup +"/compute:alpha/compute.targetPools.setBackup/failoverRatio": failover_ratio +"/compute:alpha/compute.targetPools.setBackup/project": project +"/compute:alpha/compute.targetPools.setBackup/region": region +"/compute:alpha/compute.targetPools.setBackup/requestId": request_id +"/compute:alpha/compute.targetPools.setBackup/targetPool": target_pool +"/compute:alpha/compute.targetPools.testIamPermissions": test_target_pool_iam_permissions +"/compute:alpha/compute.targetPools.testIamPermissions/project": project +"/compute:alpha/compute.targetPools.testIamPermissions/region": region +"/compute:alpha/compute.targetPools.testIamPermissions/resource": resource +"/compute:alpha/compute.targetSslProxies.delete": delete_target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.delete/project": project +"/compute:alpha/compute.targetSslProxies.delete/requestId": request_id +"/compute:alpha/compute.targetSslProxies.delete/targetSslProxy": target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.get": get_target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.get/project": project +"/compute:alpha/compute.targetSslProxies.get/targetSslProxy": target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.insert": insert_target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.insert/project": project +"/compute:alpha/compute.targetSslProxies.insert/requestId": request_id +"/compute:alpha/compute.targetSslProxies.list": list_target_ssl_proxies +"/compute:alpha/compute.targetSslProxies.list/filter": filter +"/compute:alpha/compute.targetSslProxies.list/maxResults": max_results +"/compute:alpha/compute.targetSslProxies.list/orderBy": order_by +"/compute:alpha/compute.targetSslProxies.list/pageToken": page_token +"/compute:alpha/compute.targetSslProxies.list/project": project +"/compute:alpha/compute.targetSslProxies.setBackendService": set_target_ssl_proxy_backend_service +"/compute:alpha/compute.targetSslProxies.setBackendService/project": project +"/compute:alpha/compute.targetSslProxies.setBackendService/requestId": request_id +"/compute:alpha/compute.targetSslProxies.setBackendService/targetSslProxy": target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.setProxyHeader": set_target_ssl_proxy_proxy_header +"/compute:alpha/compute.targetSslProxies.setProxyHeader/project": project +"/compute:alpha/compute.targetSslProxies.setProxyHeader/requestId": request_id +"/compute:alpha/compute.targetSslProxies.setProxyHeader/targetSslProxy": target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.setSslCertificates": set_target_ssl_proxy_ssl_certificates +"/compute:alpha/compute.targetSslProxies.setSslCertificates/project": project +"/compute:alpha/compute.targetSslProxies.setSslCertificates/requestId": request_id +"/compute:alpha/compute.targetSslProxies.setSslCertificates/targetSslProxy": target_ssl_proxy +"/compute:alpha/compute.targetSslProxies.testIamPermissions": test_target_ssl_proxy_iam_permissions +"/compute:alpha/compute.targetSslProxies.testIamPermissions/project": project +"/compute:alpha/compute.targetSslProxies.testIamPermissions/resource": resource +"/compute:alpha/compute.targetTcpProxies.delete": delete_target_tcp_proxy +"/compute:alpha/compute.targetTcpProxies.delete/project": project +"/compute:alpha/compute.targetTcpProxies.delete/requestId": request_id +"/compute:alpha/compute.targetTcpProxies.delete/targetTcpProxy": target_tcp_proxy +"/compute:alpha/compute.targetTcpProxies.get": get_target_tcp_proxy +"/compute:alpha/compute.targetTcpProxies.get/project": project +"/compute:alpha/compute.targetTcpProxies.get/targetTcpProxy": target_tcp_proxy +"/compute:alpha/compute.targetTcpProxies.insert": insert_target_tcp_proxy +"/compute:alpha/compute.targetTcpProxies.insert/project": project +"/compute:alpha/compute.targetTcpProxies.insert/requestId": request_id +"/compute:alpha/compute.targetTcpProxies.list": list_target_tcp_proxies +"/compute:alpha/compute.targetTcpProxies.list/filter": filter +"/compute:alpha/compute.targetTcpProxies.list/maxResults": max_results +"/compute:alpha/compute.targetTcpProxies.list/orderBy": order_by +"/compute:alpha/compute.targetTcpProxies.list/pageToken": page_token +"/compute:alpha/compute.targetTcpProxies.list/project": project +"/compute:alpha/compute.targetTcpProxies.setBackendService": set_target_tcp_proxy_backend_service +"/compute:alpha/compute.targetTcpProxies.setBackendService/project": project +"/compute:alpha/compute.targetTcpProxies.setBackendService/requestId": request_id +"/compute:alpha/compute.targetTcpProxies.setBackendService/targetTcpProxy": target_tcp_proxy +"/compute:alpha/compute.targetTcpProxies.setProxyHeader": set_target_tcp_proxy_proxy_header +"/compute:alpha/compute.targetTcpProxies.setProxyHeader/project": project +"/compute:alpha/compute.targetTcpProxies.setProxyHeader/requestId": request_id +"/compute:alpha/compute.targetTcpProxies.setProxyHeader/targetTcpProxy": target_tcp_proxy +"/compute:alpha/compute.targetTcpProxies.testIamPermissions": test_target_tcp_proxy_iam_permissions +"/compute:alpha/compute.targetTcpProxies.testIamPermissions/project": project +"/compute:alpha/compute.targetTcpProxies.testIamPermissions/resource": resource +"/compute:alpha/compute.targetVpnGateways.aggregatedList": aggregated_target_vpn_gateway_list +"/compute:alpha/compute.targetVpnGateways.aggregatedList/filter": filter +"/compute:alpha/compute.targetVpnGateways.aggregatedList/maxResults": max_results +"/compute:alpha/compute.targetVpnGateways.aggregatedList/orderBy": order_by +"/compute:alpha/compute.targetVpnGateways.aggregatedList/pageToken": page_token +"/compute:alpha/compute.targetVpnGateways.aggregatedList/project": project +"/compute:alpha/compute.targetVpnGateways.delete": delete_target_vpn_gateway +"/compute:alpha/compute.targetVpnGateways.delete/project": project +"/compute:alpha/compute.targetVpnGateways.delete/region": region +"/compute:alpha/compute.targetVpnGateways.delete/requestId": request_id +"/compute:alpha/compute.targetVpnGateways.delete/targetVpnGateway": target_vpn_gateway +"/compute:alpha/compute.targetVpnGateways.get": get_target_vpn_gateway +"/compute:alpha/compute.targetVpnGateways.get/project": project +"/compute:alpha/compute.targetVpnGateways.get/region": region +"/compute:alpha/compute.targetVpnGateways.get/targetVpnGateway": target_vpn_gateway +"/compute:alpha/compute.targetVpnGateways.insert": insert_target_vpn_gateway +"/compute:alpha/compute.targetVpnGateways.insert/project": project +"/compute:alpha/compute.targetVpnGateways.insert/region": region +"/compute:alpha/compute.targetVpnGateways.insert/requestId": request_id +"/compute:alpha/compute.targetVpnGateways.list": list_target_vpn_gateways +"/compute:alpha/compute.targetVpnGateways.list/filter": filter +"/compute:alpha/compute.targetVpnGateways.list/maxResults": max_results +"/compute:alpha/compute.targetVpnGateways.list/orderBy": order_by +"/compute:alpha/compute.targetVpnGateways.list/pageToken": page_token +"/compute:alpha/compute.targetVpnGateways.list/project": project +"/compute:alpha/compute.targetVpnGateways.list/region": region +"/compute:alpha/compute.targetVpnGateways.testIamPermissions": test_target_vpn_gateway_iam_permissions +"/compute:alpha/compute.targetVpnGateways.testIamPermissions/project": project +"/compute:alpha/compute.targetVpnGateways.testIamPermissions/region": region +"/compute:alpha/compute.targetVpnGateways.testIamPermissions/resource": resource +"/compute:alpha/compute.urlMaps.delete": delete_url_map +"/compute:alpha/compute.urlMaps.delete/project": project +"/compute:alpha/compute.urlMaps.delete/requestId": request_id +"/compute:alpha/compute.urlMaps.delete/urlMap": url_map +"/compute:alpha/compute.urlMaps.get": get_url_map +"/compute:alpha/compute.urlMaps.get/project": project +"/compute:alpha/compute.urlMaps.get/urlMap": url_map +"/compute:alpha/compute.urlMaps.insert": insert_url_map +"/compute:alpha/compute.urlMaps.insert/project": project +"/compute:alpha/compute.urlMaps.insert/requestId": request_id +"/compute:alpha/compute.urlMaps.invalidateCache": invalidate_url_map_cache +"/compute:alpha/compute.urlMaps.invalidateCache/project": project +"/compute:alpha/compute.urlMaps.invalidateCache/requestId": request_id +"/compute:alpha/compute.urlMaps.invalidateCache/urlMap": url_map +"/compute:alpha/compute.urlMaps.list": list_url_maps +"/compute:alpha/compute.urlMaps.list/filter": filter +"/compute:alpha/compute.urlMaps.list/maxResults": max_results +"/compute:alpha/compute.urlMaps.list/orderBy": order_by +"/compute:alpha/compute.urlMaps.list/pageToken": page_token +"/compute:alpha/compute.urlMaps.list/project": project +"/compute:alpha/compute.urlMaps.patch": patch_url_map +"/compute:alpha/compute.urlMaps.patch/project": project +"/compute:alpha/compute.urlMaps.patch/requestId": request_id +"/compute:alpha/compute.urlMaps.patch/urlMap": url_map +"/compute:alpha/compute.urlMaps.testIamPermissions": test_url_map_iam_permissions +"/compute:alpha/compute.urlMaps.testIamPermissions/project": project +"/compute:alpha/compute.urlMaps.testIamPermissions/resource": resource +"/compute:alpha/compute.urlMaps.update": update_url_map +"/compute:alpha/compute.urlMaps.update/project": project +"/compute:alpha/compute.urlMaps.update/requestId": request_id +"/compute:alpha/compute.urlMaps.update/urlMap": url_map +"/compute:alpha/compute.urlMaps.validate": validate_url_map +"/compute:alpha/compute.urlMaps.validate/project": project +"/compute:alpha/compute.urlMaps.validate/urlMap": url_map +"/compute:alpha/compute.vpnTunnels.aggregatedList": aggregated_vpn_tunnel_list +"/compute:alpha/compute.vpnTunnels.aggregatedList/filter": filter +"/compute:alpha/compute.vpnTunnels.aggregatedList/maxResults": max_results +"/compute:alpha/compute.vpnTunnels.aggregatedList/orderBy": order_by +"/compute:alpha/compute.vpnTunnels.aggregatedList/pageToken": page_token +"/compute:alpha/compute.vpnTunnels.aggregatedList/project": project +"/compute:alpha/compute.vpnTunnels.delete": delete_vpn_tunnel +"/compute:alpha/compute.vpnTunnels.delete/project": project +"/compute:alpha/compute.vpnTunnels.delete/region": region +"/compute:alpha/compute.vpnTunnels.delete/requestId": request_id +"/compute:alpha/compute.vpnTunnels.delete/vpnTunnel": vpn_tunnel +"/compute:alpha/compute.vpnTunnels.get": get_vpn_tunnel +"/compute:alpha/compute.vpnTunnels.get/project": project +"/compute:alpha/compute.vpnTunnels.get/region": region +"/compute:alpha/compute.vpnTunnels.get/vpnTunnel": vpn_tunnel +"/compute:alpha/compute.vpnTunnels.insert": insert_vpn_tunnel +"/compute:alpha/compute.vpnTunnels.insert/project": project +"/compute:alpha/compute.vpnTunnels.insert/region": region +"/compute:alpha/compute.vpnTunnels.insert/requestId": request_id +"/compute:alpha/compute.vpnTunnels.list": list_vpn_tunnels +"/compute:alpha/compute.vpnTunnels.list/filter": filter +"/compute:alpha/compute.vpnTunnels.list/maxResults": max_results +"/compute:alpha/compute.vpnTunnels.list/orderBy": order_by +"/compute:alpha/compute.vpnTunnels.list/pageToken": page_token +"/compute:alpha/compute.vpnTunnels.list/project": project +"/compute:alpha/compute.vpnTunnels.list/region": region +"/compute:alpha/compute.vpnTunnels.setLabels": set_vpn_tunnel_labels +"/compute:alpha/compute.vpnTunnels.setLabels/project": project +"/compute:alpha/compute.vpnTunnels.setLabels/region": region +"/compute:alpha/compute.vpnTunnels.setLabels/requestId": request_id +"/compute:alpha/compute.vpnTunnels.setLabels/resource": resource +"/compute:alpha/compute.vpnTunnels.testIamPermissions": test_vpn_tunnel_iam_permissions +"/compute:alpha/compute.vpnTunnels.testIamPermissions/project": project +"/compute:alpha/compute.vpnTunnels.testIamPermissions/region": region +"/compute:alpha/compute.vpnTunnels.testIamPermissions/resource": resource +"/compute:alpha/compute.zoneOperations.delete": delete_zone_operation +"/compute:alpha/compute.zoneOperations.delete/operation": operation +"/compute:alpha/compute.zoneOperations.delete/project": project +"/compute:alpha/compute.zoneOperations.delete/zone": zone +"/compute:alpha/compute.zoneOperations.get": get_zone_operation +"/compute:alpha/compute.zoneOperations.get/operation": operation +"/compute:alpha/compute.zoneOperations.get/project": project +"/compute:alpha/compute.zoneOperations.get/zone": zone +"/compute:alpha/compute.zoneOperations.list": list_zone_operations +"/compute:alpha/compute.zoneOperations.list/filter": filter +"/compute:alpha/compute.zoneOperations.list/maxResults": max_results +"/compute:alpha/compute.zoneOperations.list/orderBy": order_by +"/compute:alpha/compute.zoneOperations.list/pageToken": page_token +"/compute:alpha/compute.zoneOperations.list/project": project +"/compute:alpha/compute.zoneOperations.list/zone": zone +"/compute:alpha/compute.zones.get": get_zone +"/compute:alpha/compute.zones.get/project": project +"/compute:alpha/compute.zones.get/zone": zone +"/compute:alpha/compute.zones.list": list_zones +"/compute:alpha/compute.zones.list/filter": filter +"/compute:alpha/compute.zones.list/maxResults": max_results +"/compute:alpha/compute.zones.list/orderBy": order_by +"/compute:alpha/compute.zones.list/pageToken": page_token +"/compute:alpha/compute.zones.list/project": project +"/compute:alpha/fields": fields +"/compute:alpha/key": key +"/compute:alpha/quotaUser": quota_user +"/compute:alpha/userIp": user_ip "/compute:beta/AcceleratorConfig": accelerator_config "/compute:beta/AcceleratorConfig/acceleratorCount": accelerator_count "/compute:beta/AcceleratorConfig/acceleratorType": accelerator_type @@ -18139,15 +26105,404 @@ "/container:v1/fields": fields "/container:v1/key": key "/container:v1/quotaUser": quota_user +"/container:v1beta1/AcceleratorConfig": accelerator_config +"/container:v1beta1/AcceleratorConfig/acceleratorCount": accelerator_count +"/container:v1beta1/AcceleratorConfig/acceleratorType": accelerator_type +"/container:v1beta1/AddonsConfig": addons_config +"/container:v1beta1/AddonsConfig/horizontalPodAutoscaling": horizontal_pod_autoscaling +"/container:v1beta1/AddonsConfig/httpLoadBalancing": http_load_balancing +"/container:v1beta1/AddonsConfig/kubernetesDashboard": kubernetes_dashboard +"/container:v1beta1/AutoUpgradeOptions": auto_upgrade_options +"/container:v1beta1/AutoUpgradeOptions/autoUpgradeStartTime": auto_upgrade_start_time +"/container:v1beta1/AutoUpgradeOptions/description": description +"/container:v1beta1/CancelOperationRequest": cancel_operation_request +"/container:v1beta1/CancelOperationRequest/name": name +"/container:v1beta1/CancelOperationRequest/operationId": operation_id +"/container:v1beta1/CancelOperationRequest/projectId": project_id +"/container:v1beta1/CancelOperationRequest/zone": zone +"/container:v1beta1/CidrBlock": cidr_block +"/container:v1beta1/CidrBlock/cidrBlock": cidr_block +"/container:v1beta1/CidrBlock/displayName": display_name +"/container:v1beta1/ClientCertificateConfig": client_certificate_config +"/container:v1beta1/ClientCertificateConfig/issueClientCertificate": issue_client_certificate +"/container:v1beta1/Cluster": cluster +"/container:v1beta1/Cluster/addonsConfig": addons_config +"/container:v1beta1/Cluster/clusterIpv4Cidr": cluster_ipv4_cidr +"/container:v1beta1/Cluster/createTime": create_time +"/container:v1beta1/Cluster/currentMasterVersion": current_master_version +"/container:v1beta1/Cluster/currentNodeCount": current_node_count +"/container:v1beta1/Cluster/currentNodeVersion": current_node_version +"/container:v1beta1/Cluster/description": description +"/container:v1beta1/Cluster/enableKubernetesAlpha": enable_kubernetes_alpha +"/container:v1beta1/Cluster/endpoint": endpoint +"/container:v1beta1/Cluster/expireTime": expire_time +"/container:v1beta1/Cluster/initialClusterVersion": initial_cluster_version +"/container:v1beta1/Cluster/initialNodeCount": initial_node_count +"/container:v1beta1/Cluster/instanceGroupUrls": instance_group_urls +"/container:v1beta1/Cluster/instanceGroupUrls/instance_group_url": instance_group_url +"/container:v1beta1/Cluster/ipAllocationPolicy": ip_allocation_policy +"/container:v1beta1/Cluster/location": location +"/container:v1beta1/Cluster/locations": locations +"/container:v1beta1/Cluster/locations/location": location +"/container:v1beta1/Cluster/loggingService": logging_service +"/container:v1beta1/Cluster/masterAuth": master_auth +"/container:v1beta1/Cluster/masterAuthorizedNetworksConfig": master_authorized_networks_config +"/container:v1beta1/Cluster/monitoringService": monitoring_service +"/container:v1beta1/Cluster/name": name +"/container:v1beta1/Cluster/network": network +"/container:v1beta1/Cluster/networkPolicy": network_policy +"/container:v1beta1/Cluster/nodeConfig": node_config +"/container:v1beta1/Cluster/nodeIpv4CidrSize": node_ipv4_cidr_size +"/container:v1beta1/Cluster/nodePools": node_pools +"/container:v1beta1/Cluster/nodePools/node_pool": node_pool +"/container:v1beta1/Cluster/selfLink": self_link +"/container:v1beta1/Cluster/servicesIpv4Cidr": services_ipv4_cidr +"/container:v1beta1/Cluster/status": status +"/container:v1beta1/Cluster/statusMessage": status_message +"/container:v1beta1/Cluster/subnetwork": subnetwork +"/container:v1beta1/Cluster/zone": zone +"/container:v1beta1/ClusterUpdate": cluster_update +"/container:v1beta1/ClusterUpdate/desiredAddonsConfig": desired_addons_config +"/container:v1beta1/ClusterUpdate/desiredImageType": desired_image_type +"/container:v1beta1/ClusterUpdate/desiredLocations": desired_locations +"/container:v1beta1/ClusterUpdate/desiredLocations/desired_location": desired_location +"/container:v1beta1/ClusterUpdate/desiredMasterAuthorizedNetworksConfig": desired_master_authorized_networks_config +"/container:v1beta1/ClusterUpdate/desiredMasterVersion": desired_master_version +"/container:v1beta1/ClusterUpdate/desiredMonitoringService": desired_monitoring_service +"/container:v1beta1/ClusterUpdate/desiredNodePoolAutoscaling": desired_node_pool_autoscaling +"/container:v1beta1/ClusterUpdate/desiredNodePoolId": desired_node_pool_id +"/container:v1beta1/ClusterUpdate/desiredNodeVersion": desired_node_version +"/container:v1beta1/CompleteIPRotationRequest": complete_ip_rotation_request +"/container:v1beta1/CompleteIPRotationRequest/clusterId": cluster_id +"/container:v1beta1/CompleteIPRotationRequest/name": name +"/container:v1beta1/CompleteIPRotationRequest/projectId": project_id +"/container:v1beta1/CompleteIPRotationRequest/zone": zone +"/container:v1beta1/CreateClusterRequest": create_cluster_request +"/container:v1beta1/CreateClusterRequest/cluster": cluster +"/container:v1beta1/CreateClusterRequest/parent": parent +"/container:v1beta1/CreateClusterRequest/projectId": project_id +"/container:v1beta1/CreateClusterRequest/zone": zone +"/container:v1beta1/CreateNodePoolRequest": create_node_pool_request +"/container:v1beta1/CreateNodePoolRequest/clusterId": cluster_id +"/container:v1beta1/CreateNodePoolRequest/nodePool": node_pool +"/container:v1beta1/CreateNodePoolRequest/parent": parent +"/container:v1beta1/CreateNodePoolRequest/projectId": project_id +"/container:v1beta1/CreateNodePoolRequest/zone": zone +"/container:v1beta1/Empty": empty +"/container:v1beta1/HorizontalPodAutoscaling": horizontal_pod_autoscaling +"/container:v1beta1/HorizontalPodAutoscaling/disabled": disabled +"/container:v1beta1/HttpLoadBalancing": http_load_balancing +"/container:v1beta1/HttpLoadBalancing/disabled": disabled +"/container:v1beta1/IPAllocationPolicy": ip_allocation_policy +"/container:v1beta1/IPAllocationPolicy/clusterIpv4Cidr": cluster_ipv4_cidr +"/container:v1beta1/IPAllocationPolicy/createSubnetwork": create_subnetwork +"/container:v1beta1/IPAllocationPolicy/nodeIpv4Cidr": node_ipv4_cidr +"/container:v1beta1/IPAllocationPolicy/servicesIpv4Cidr": services_ipv4_cidr +"/container:v1beta1/IPAllocationPolicy/subnetworkName": subnetwork_name +"/container:v1beta1/IPAllocationPolicy/useIpAliases": use_ip_aliases +"/container:v1beta1/KubernetesDashboard": kubernetes_dashboard +"/container:v1beta1/KubernetesDashboard/disabled": disabled +"/container:v1beta1/ListClustersResponse": list_clusters_response +"/container:v1beta1/ListClustersResponse/clusters": clusters +"/container:v1beta1/ListClustersResponse/clusters/cluster": cluster +"/container:v1beta1/ListClustersResponse/missingZones": missing_zones +"/container:v1beta1/ListClustersResponse/missingZones/missing_zone": missing_zone +"/container:v1beta1/ListNodePoolsResponse": list_node_pools_response +"/container:v1beta1/ListNodePoolsResponse/nodePools": node_pools +"/container:v1beta1/ListNodePoolsResponse/nodePools/node_pool": node_pool +"/container:v1beta1/ListOperationsResponse": list_operations_response +"/container:v1beta1/ListOperationsResponse/missingZones": missing_zones +"/container:v1beta1/ListOperationsResponse/missingZones/missing_zone": missing_zone +"/container:v1beta1/ListOperationsResponse/operations": operations +"/container:v1beta1/ListOperationsResponse/operations/operation": operation +"/container:v1beta1/MasterAuth": master_auth +"/container:v1beta1/MasterAuth/clientCertificate": client_certificate +"/container:v1beta1/MasterAuth/clientCertificateConfig": client_certificate_config +"/container:v1beta1/MasterAuth/clientKey": client_key +"/container:v1beta1/MasterAuth/clusterCaCertificate": cluster_ca_certificate +"/container:v1beta1/MasterAuth/password": password +"/container:v1beta1/MasterAuth/username": username +"/container:v1beta1/MasterAuthorizedNetworksConfig": master_authorized_networks_config +"/container:v1beta1/MasterAuthorizedNetworksConfig/cidrBlocks": cidr_blocks +"/container:v1beta1/MasterAuthorizedNetworksConfig/cidrBlocks/cidr_block": cidr_block +"/container:v1beta1/MasterAuthorizedNetworksConfig/enabled": enabled +"/container:v1beta1/NetworkPolicy": network_policy +"/container:v1beta1/NetworkPolicy/enabled": enabled +"/container:v1beta1/NetworkPolicy/provider": provider +"/container:v1beta1/NodeConfig": node_config +"/container:v1beta1/NodeConfig/accelerators": accelerators +"/container:v1beta1/NodeConfig/accelerators/accelerator": accelerator +"/container:v1beta1/NodeConfig/diskSizeGb": disk_size_gb +"/container:v1beta1/NodeConfig/imageType": image_type +"/container:v1beta1/NodeConfig/labels": labels +"/container:v1beta1/NodeConfig/labels/label": label +"/container:v1beta1/NodeConfig/localSsdCount": local_ssd_count +"/container:v1beta1/NodeConfig/machineType": machine_type +"/container:v1beta1/NodeConfig/metadata": metadata +"/container:v1beta1/NodeConfig/metadata/metadatum": metadatum +"/container:v1beta1/NodeConfig/oauthScopes": oauth_scopes +"/container:v1beta1/NodeConfig/oauthScopes/oauth_scope": oauth_scope +"/container:v1beta1/NodeConfig/preemptible": preemptible +"/container:v1beta1/NodeConfig/serviceAccount": service_account +"/container:v1beta1/NodeConfig/tags": tags +"/container:v1beta1/NodeConfig/tags/tag": tag +"/container:v1beta1/NodeManagement": node_management +"/container:v1beta1/NodeManagement/autoRepair": auto_repair +"/container:v1beta1/NodeManagement/autoUpgrade": auto_upgrade +"/container:v1beta1/NodeManagement/upgradeOptions": upgrade_options +"/container:v1beta1/NodePool": node_pool +"/container:v1beta1/NodePool/autoscaling": autoscaling +"/container:v1beta1/NodePool/config": config +"/container:v1beta1/NodePool/initialNodeCount": initial_node_count +"/container:v1beta1/NodePool/instanceGroupUrls": instance_group_urls +"/container:v1beta1/NodePool/instanceGroupUrls/instance_group_url": instance_group_url +"/container:v1beta1/NodePool/management": management +"/container:v1beta1/NodePool/name": name +"/container:v1beta1/NodePool/selfLink": self_link +"/container:v1beta1/NodePool/status": status +"/container:v1beta1/NodePool/statusMessage": status_message +"/container:v1beta1/NodePool/version": version +"/container:v1beta1/NodePoolAutoscaling": node_pool_autoscaling +"/container:v1beta1/NodePoolAutoscaling/enabled": enabled +"/container:v1beta1/NodePoolAutoscaling/maxNodeCount": max_node_count +"/container:v1beta1/NodePoolAutoscaling/minNodeCount": min_node_count +"/container:v1beta1/Operation": operation +"/container:v1beta1/Operation/detail": detail +"/container:v1beta1/Operation/location": location +"/container:v1beta1/Operation/name": name +"/container:v1beta1/Operation/operationType": operation_type +"/container:v1beta1/Operation/selfLink": self_link +"/container:v1beta1/Operation/status": status +"/container:v1beta1/Operation/statusMessage": status_message +"/container:v1beta1/Operation/targetLink": target_link +"/container:v1beta1/Operation/zone": zone +"/container:v1beta1/RollbackNodePoolUpgradeRequest": rollback_node_pool_upgrade_request +"/container:v1beta1/RollbackNodePoolUpgradeRequest/clusterId": cluster_id +"/container:v1beta1/RollbackNodePoolUpgradeRequest/name": name +"/container:v1beta1/RollbackNodePoolUpgradeRequest/nodePoolId": node_pool_id +"/container:v1beta1/RollbackNodePoolUpgradeRequest/projectId": project_id +"/container:v1beta1/RollbackNodePoolUpgradeRequest/zone": zone +"/container:v1beta1/ServerConfig": server_config +"/container:v1beta1/ServerConfig/defaultClusterVersion": default_cluster_version +"/container:v1beta1/ServerConfig/defaultImageType": default_image_type +"/container:v1beta1/ServerConfig/validImageTypes": valid_image_types +"/container:v1beta1/ServerConfig/validImageTypes/valid_image_type": valid_image_type +"/container:v1beta1/ServerConfig/validMasterVersions": valid_master_versions +"/container:v1beta1/ServerConfig/validMasterVersions/valid_master_version": valid_master_version +"/container:v1beta1/ServerConfig/validNodeVersions": valid_node_versions +"/container:v1beta1/ServerConfig/validNodeVersions/valid_node_version": valid_node_version +"/container:v1beta1/SetLabelsRequest": set_labels_request +"/container:v1beta1/SetLabelsRequest/clusterId": cluster_id +"/container:v1beta1/SetLabelsRequest/labelFingerprint": label_fingerprint +"/container:v1beta1/SetLabelsRequest/name": name +"/container:v1beta1/SetLabelsRequest/projectId": project_id +"/container:v1beta1/SetLabelsRequest/resourceLabels": resource_labels +"/container:v1beta1/SetLabelsRequest/resourceLabels/resource_label": resource_label +"/container:v1beta1/SetLabelsRequest/zone": zone +"/container:v1beta1/SetLegacyAbacRequest": set_legacy_abac_request +"/container:v1beta1/SetLegacyAbacRequest/clusterId": cluster_id +"/container:v1beta1/SetLegacyAbacRequest/enabled": enabled +"/container:v1beta1/SetLegacyAbacRequest/name": name +"/container:v1beta1/SetLegacyAbacRequest/projectId": project_id +"/container:v1beta1/SetLegacyAbacRequest/zone": zone +"/container:v1beta1/SetMasterAuthRequest": set_master_auth_request +"/container:v1beta1/SetMasterAuthRequest/action": action +"/container:v1beta1/SetMasterAuthRequest/clusterId": cluster_id +"/container:v1beta1/SetMasterAuthRequest/name": name +"/container:v1beta1/SetMasterAuthRequest/projectId": project_id +"/container:v1beta1/SetMasterAuthRequest/update": update +"/container:v1beta1/SetMasterAuthRequest/zone": zone +"/container:v1beta1/SetNetworkPolicyRequest": set_network_policy_request +"/container:v1beta1/SetNetworkPolicyRequest/clusterId": cluster_id +"/container:v1beta1/SetNetworkPolicyRequest/name": name +"/container:v1beta1/SetNetworkPolicyRequest/networkPolicy": network_policy +"/container:v1beta1/SetNetworkPolicyRequest/projectId": project_id +"/container:v1beta1/SetNetworkPolicyRequest/zone": zone +"/container:v1beta1/SetNodePoolManagementRequest": set_node_pool_management_request +"/container:v1beta1/SetNodePoolManagementRequest/clusterId": cluster_id +"/container:v1beta1/SetNodePoolManagementRequest/management": management +"/container:v1beta1/SetNodePoolManagementRequest/name": name +"/container:v1beta1/SetNodePoolManagementRequest/nodePoolId": node_pool_id +"/container:v1beta1/SetNodePoolManagementRequest/projectId": project_id +"/container:v1beta1/SetNodePoolManagementRequest/zone": zone +"/container:v1beta1/StartIPRotationRequest": start_ip_rotation_request +"/container:v1beta1/StartIPRotationRequest/clusterId": cluster_id +"/container:v1beta1/StartIPRotationRequest/name": name +"/container:v1beta1/StartIPRotationRequest/projectId": project_id +"/container:v1beta1/StartIPRotationRequest/zone": zone +"/container:v1beta1/UpdateClusterRequest": update_cluster_request +"/container:v1beta1/UpdateClusterRequest/clusterId": cluster_id +"/container:v1beta1/UpdateClusterRequest/name": name +"/container:v1beta1/UpdateClusterRequest/projectId": project_id +"/container:v1beta1/UpdateClusterRequest/update": update +"/container:v1beta1/UpdateClusterRequest/zone": zone "/container:v1beta1/container.projects.clusters.list": list_clusters +"/container:v1beta1/container.projects.locations.clusters.completeIpRotation": complete_project_location_cluster_ip_rotation +"/container:v1beta1/container.projects.locations.clusters.completeIpRotation/name": name +"/container:v1beta1/container.projects.locations.clusters.create": create_project_location_cluster +"/container:v1beta1/container.projects.locations.clusters.create/parent": parent +"/container:v1beta1/container.projects.locations.clusters.delete": delete_project_location_cluster +"/container:v1beta1/container.projects.locations.clusters.delete/clusterId": cluster_id +"/container:v1beta1/container.projects.locations.clusters.delete/name": name +"/container:v1beta1/container.projects.locations.clusters.delete/projectId": project_id +"/container:v1beta1/container.projects.locations.clusters.delete/zone": zone +"/container:v1beta1/container.projects.locations.clusters.get": get_project_location_cluster +"/container:v1beta1/container.projects.locations.clusters.get/clusterId": cluster_id +"/container:v1beta1/container.projects.locations.clusters.get/name": name +"/container:v1beta1/container.projects.locations.clusters.get/projectId": project_id +"/container:v1beta1/container.projects.locations.clusters.get/zone": zone +"/container:v1beta1/container.projects.locations.clusters.list": list_project_location_clusters +"/container:v1beta1/container.projects.locations.clusters.list/parent": parent +"/container:v1beta1/container.projects.locations.clusters.list/projectId": project_id +"/container:v1beta1/container.projects.locations.clusters.list/zone": zone +"/container:v1beta1/container.projects.locations.clusters.nodePools.create": create_project_location_cluster_node_pool +"/container:v1beta1/container.projects.locations.clusters.nodePools.create/parent": parent +"/container:v1beta1/container.projects.locations.clusters.nodePools.delete": delete_project_location_cluster_node_pool +"/container:v1beta1/container.projects.locations.clusters.nodePools.delete/clusterId": cluster_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.delete/name": name +"/container:v1beta1/container.projects.locations.clusters.nodePools.delete/nodePoolId": node_pool_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.delete/projectId": project_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.delete/zone": zone +"/container:v1beta1/container.projects.locations.clusters.nodePools.get": get_project_location_cluster_node_pool +"/container:v1beta1/container.projects.locations.clusters.nodePools.get/clusterId": cluster_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.get/name": name +"/container:v1beta1/container.projects.locations.clusters.nodePools.get/nodePoolId": node_pool_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.get/projectId": project_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.get/zone": zone +"/container:v1beta1/container.projects.locations.clusters.nodePools.list": list_project_location_cluster_node_pools +"/container:v1beta1/container.projects.locations.clusters.nodePools.list/clusterId": cluster_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.list/parent": parent +"/container:v1beta1/container.projects.locations.clusters.nodePools.list/projectId": project_id +"/container:v1beta1/container.projects.locations.clusters.nodePools.list/zone": zone +"/container:v1beta1/container.projects.locations.clusters.nodePools.rollback": rollback_project_location_cluster_node_pool +"/container:v1beta1/container.projects.locations.clusters.nodePools.rollback/name": name +"/container:v1beta1/container.projects.locations.clusters.nodePools.setManagement": set_project_location_cluster_node_pool_management +"/container:v1beta1/container.projects.locations.clusters.nodePools.setManagement/name": name +"/container:v1beta1/container.projects.locations.clusters.setLegacyAbac": set_cluster_legacy_abac +"/container:v1beta1/container.projects.locations.clusters.setLegacyAbac/name": name +"/container:v1beta1/container.projects.locations.clusters.setMasterAuth": set_project_location_cluster_master_auth +"/container:v1beta1/container.projects.locations.clusters.setMasterAuth/name": name +"/container:v1beta1/container.projects.locations.clusters.setNetworkPolicy": set_project_location_cluster_network_policy +"/container:v1beta1/container.projects.locations.clusters.setNetworkPolicy/name": name +"/container:v1beta1/container.projects.locations.clusters.setResourceLabels": set_project_location_cluster_resource_labels +"/container:v1beta1/container.projects.locations.clusters.setResourceLabels/name": name +"/container:v1beta1/container.projects.locations.clusters.startIpRotation": start_project_location_cluster_ip_rotation +"/container:v1beta1/container.projects.locations.clusters.startIpRotation/name": name +"/container:v1beta1/container.projects.locations.clusters.update": update_project_location_cluster +"/container:v1beta1/container.projects.locations.clusters.update/name": name +"/container:v1beta1/container.projects.locations.getServerConfig": get_project_location_server_config +"/container:v1beta1/container.projects.locations.getServerConfig/name": name +"/container:v1beta1/container.projects.locations.getServerConfig/projectId": project_id +"/container:v1beta1/container.projects.locations.getServerConfig/zone": zone +"/container:v1beta1/container.projects.locations.operations.cancel": cancel_project_location_operation +"/container:v1beta1/container.projects.locations.operations.cancel/name": name +"/container:v1beta1/container.projects.locations.operations.get": get_project_location_operation +"/container:v1beta1/container.projects.locations.operations.get/name": name +"/container:v1beta1/container.projects.locations.operations.get/operationId": operation_id +"/container:v1beta1/container.projects.locations.operations.get/projectId": project_id +"/container:v1beta1/container.projects.locations.operations.get/zone": zone +"/container:v1beta1/container.projects.locations.operations.list": list_project_location_operations +"/container:v1beta1/container.projects.locations.operations.list/parent": parent +"/container:v1beta1/container.projects.locations.operations.list/projectId": project_id +"/container:v1beta1/container.projects.locations.operations.list/zone": zone "/container:v1beta1/container.projects.operations.list": list_operations +"/container:v1beta1/container.projects.zones.clusters.completeIpRotation": complete_project_zone_cluster_ip_rotation +"/container:v1beta1/container.projects.zones.clusters.completeIpRotation/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.completeIpRotation/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.completeIpRotation/zone": zone "/container:v1beta1/container.projects.zones.clusters.create": create_cluster +"/container:v1beta1/container.projects.zones.clusters.create/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.create/zone": zone "/container:v1beta1/container.projects.zones.clusters.delete": delete_zone_cluster +"/container:v1beta1/container.projects.zones.clusters.delete/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.delete/name": name +"/container:v1beta1/container.projects.zones.clusters.delete/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.delete/zone": zone "/container:v1beta1/container.projects.zones.clusters.get": get_zone_cluster +"/container:v1beta1/container.projects.zones.clusters.get/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.get/name": name +"/container:v1beta1/container.projects.zones.clusters.get/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.get/zone": zone +"/container:v1beta1/container.projects.zones.clusters.legacyAbac": legacy_project_zone_cluster_abac +"/container:v1beta1/container.projects.zones.clusters.legacyAbac/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.legacyAbac/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.legacyAbac/zone": zone "/container:v1beta1/container.projects.zones.clusters.list": list_zone_clusters +"/container:v1beta1/container.projects.zones.clusters.list/parent": parent +"/container:v1beta1/container.projects.zones.clusters.list/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.list/zone": zone +"/container:v1beta1/container.projects.zones.clusters.nodePools.create": create_project_zone_cluster_node_pool +"/container:v1beta1/container.projects.zones.clusters.nodePools.create/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.create/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.create/zone": zone +"/container:v1beta1/container.projects.zones.clusters.nodePools.delete": delete_project_zone_cluster_node_pool +"/container:v1beta1/container.projects.zones.clusters.nodePools.delete/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.delete/name": name +"/container:v1beta1/container.projects.zones.clusters.nodePools.delete/nodePoolId": node_pool_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.delete/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.delete/zone": zone +"/container:v1beta1/container.projects.zones.clusters.nodePools.get": get_project_zone_cluster_node_pool +"/container:v1beta1/container.projects.zones.clusters.nodePools.get/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.get/name": name +"/container:v1beta1/container.projects.zones.clusters.nodePools.get/nodePoolId": node_pool_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.get/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.get/zone": zone +"/container:v1beta1/container.projects.zones.clusters.nodePools.list": list_project_zone_cluster_node_pools +"/container:v1beta1/container.projects.zones.clusters.nodePools.list/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.list/parent": parent +"/container:v1beta1/container.projects.zones.clusters.nodePools.list/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.list/zone": zone +"/container:v1beta1/container.projects.zones.clusters.nodePools.rollback": rollback_project_zone_cluster_node_pool +"/container:v1beta1/container.projects.zones.clusters.nodePools.rollback/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.rollback/nodePoolId": node_pool_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.rollback/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.rollback/zone": zone +"/container:v1beta1/container.projects.zones.clusters.nodePools.setManagement": set_project_zone_cluster_node_pool_management +"/container:v1beta1/container.projects.zones.clusters.nodePools.setManagement/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.setManagement/nodePoolId": node_pool_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.setManagement/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.nodePools.setManagement/zone": zone +"/container:v1beta1/container.projects.zones.clusters.resourceLabels": resource_project_zone_cluster_labels +"/container:v1beta1/container.projects.zones.clusters.resourceLabels/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.resourceLabels/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.resourceLabels/zone": zone +"/container:v1beta1/container.projects.zones.clusters.setMasterAuth": set_project_zone_cluster_master_auth +"/container:v1beta1/container.projects.zones.clusters.setMasterAuth/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.setMasterAuth/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.setMasterAuth/zone": zone +"/container:v1beta1/container.projects.zones.clusters.setNetworkPolicy": set_project_zone_cluster_network_policy +"/container:v1beta1/container.projects.zones.clusters.setNetworkPolicy/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.setNetworkPolicy/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.setNetworkPolicy/zone": zone +"/container:v1beta1/container.projects.zones.clusters.startIpRotation": start_project_zone_cluster_ip_rotation +"/container:v1beta1/container.projects.zones.clusters.startIpRotation/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.startIpRotation/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.startIpRotation/zone": zone +"/container:v1beta1/container.projects.zones.clusters.update": update_project_zone_cluster +"/container:v1beta1/container.projects.zones.clusters.update/clusterId": cluster_id +"/container:v1beta1/container.projects.zones.clusters.update/projectId": project_id +"/container:v1beta1/container.projects.zones.clusters.update/zone": zone +"/container:v1beta1/container.projects.zones.getServerconfig": get_project_zone_serverconfig +"/container:v1beta1/container.projects.zones.getServerconfig/name": name +"/container:v1beta1/container.projects.zones.getServerconfig/projectId": project_id +"/container:v1beta1/container.projects.zones.getServerconfig/zone": zone +"/container:v1beta1/container.projects.zones.operations.cancel": cancel_project_zone_operation +"/container:v1beta1/container.projects.zones.operations.cancel/operationId": operation_id +"/container:v1beta1/container.projects.zones.operations.cancel/projectId": project_id +"/container:v1beta1/container.projects.zones.operations.cancel/zone": zone "/container:v1beta1/container.projects.zones.operations.get": get_zone_operation +"/container:v1beta1/container.projects.zones.operations.get/name": name +"/container:v1beta1/container.projects.zones.operations.get/operationId": operation_id +"/container:v1beta1/container.projects.zones.operations.get/projectId": project_id +"/container:v1beta1/container.projects.zones.operations.get/zone": zone "/container:v1beta1/container.projects.zones.operations.list": list_zone_operations +"/container:v1beta1/container.projects.zones.operations.list/parent": parent +"/container:v1beta1/container.projects.zones.operations.list/projectId": project_id +"/container:v1beta1/container.projects.zones.operations.list/zone": zone "/container:v1beta1/container.projects.zones.tokens.get": get_zone_token +"/container:v1beta1/fields": fields +"/container:v1beta1/key": key +"/container:v1beta1/quotaUser": quota_user "/content:v2/Account": account "/content:v2/Account/adultContent": adult_content "/content:v2/Account/adwordsLinks": adwords_links @@ -19279,6 +27634,397 @@ "/content:v2/key": key "/content:v2/quotaUser": quota_user "/content:v2/userIp": user_ip +"/content:v2sandbox/Error": error +"/content:v2sandbox/Error/domain": domain +"/content:v2sandbox/Error/message": message +"/content:v2sandbox/Error/reason": reason +"/content:v2sandbox/Errors": errors +"/content:v2sandbox/Errors/code": code +"/content:v2sandbox/Errors/errors": errors +"/content:v2sandbox/Errors/errors/error": error +"/content:v2sandbox/Errors/message": message +"/content:v2sandbox/Order": order +"/content:v2sandbox/Order/acknowledged": acknowledged +"/content:v2sandbox/Order/channelType": channel_type +"/content:v2sandbox/Order/customer": customer +"/content:v2sandbox/Order/deliveryDetails": delivery_details +"/content:v2sandbox/Order/id": id +"/content:v2sandbox/Order/kind": kind +"/content:v2sandbox/Order/lineItems": line_items +"/content:v2sandbox/Order/lineItems/line_item": line_item +"/content:v2sandbox/Order/merchantId": merchant_id +"/content:v2sandbox/Order/merchantOrderId": merchant_order_id +"/content:v2sandbox/Order/netAmount": net_amount +"/content:v2sandbox/Order/paymentMethod": payment_method +"/content:v2sandbox/Order/paymentStatus": payment_status +"/content:v2sandbox/Order/placedDate": placed_date +"/content:v2sandbox/Order/promotions": promotions +"/content:v2sandbox/Order/promotions/promotion": promotion +"/content:v2sandbox/Order/refunds": refunds +"/content:v2sandbox/Order/refunds/refund": refund +"/content:v2sandbox/Order/shipments": shipments +"/content:v2sandbox/Order/shipments/shipment": shipment +"/content:v2sandbox/Order/shippingCost": shipping_cost +"/content:v2sandbox/Order/shippingCostTax": shipping_cost_tax +"/content:v2sandbox/Order/shippingOption": shipping_option +"/content:v2sandbox/Order/status": status +"/content:v2sandbox/OrderAddress": order_address +"/content:v2sandbox/OrderAddress/country": country +"/content:v2sandbox/OrderAddress/fullAddress": full_address +"/content:v2sandbox/OrderAddress/fullAddress/full_address": full_address +"/content:v2sandbox/OrderAddress/isPostOfficeBox": is_post_office_box +"/content:v2sandbox/OrderAddress/locality": locality +"/content:v2sandbox/OrderAddress/postalCode": postal_code +"/content:v2sandbox/OrderAddress/recipientName": recipient_name +"/content:v2sandbox/OrderAddress/region": region +"/content:v2sandbox/OrderAddress/streetAddress": street_address +"/content:v2sandbox/OrderAddress/streetAddress/street_address": street_address +"/content:v2sandbox/OrderCancellation": order_cancellation +"/content:v2sandbox/OrderCancellation/actor": actor +"/content:v2sandbox/OrderCancellation/creationDate": creation_date +"/content:v2sandbox/OrderCancellation/quantity": quantity +"/content:v2sandbox/OrderCancellation/reason": reason +"/content:v2sandbox/OrderCancellation/reasonText": reason_text +"/content:v2sandbox/OrderCustomer": order_customer +"/content:v2sandbox/OrderCustomer/email": email +"/content:v2sandbox/OrderCustomer/explicitMarketingPreference": explicit_marketing_preference +"/content:v2sandbox/OrderCustomer/fullName": full_name +"/content:v2sandbox/OrderDeliveryDetails": order_delivery_details +"/content:v2sandbox/OrderDeliveryDetails/address": address +"/content:v2sandbox/OrderDeliveryDetails/phoneNumber": phone_number +"/content:v2sandbox/OrderLineItem": order_line_item +"/content:v2sandbox/OrderLineItem/cancellations": cancellations +"/content:v2sandbox/OrderLineItem/cancellations/cancellation": cancellation +"/content:v2sandbox/OrderLineItem/id": id +"/content:v2sandbox/OrderLineItem/price": price +"/content:v2sandbox/OrderLineItem/product": product +"/content:v2sandbox/OrderLineItem/quantityCanceled": quantity_canceled +"/content:v2sandbox/OrderLineItem/quantityDelivered": quantity_delivered +"/content:v2sandbox/OrderLineItem/quantityOrdered": quantity_ordered +"/content:v2sandbox/OrderLineItem/quantityPending": quantity_pending +"/content:v2sandbox/OrderLineItem/quantityReturned": quantity_returned +"/content:v2sandbox/OrderLineItem/quantityShipped": quantity_shipped +"/content:v2sandbox/OrderLineItem/returnInfo": return_info +"/content:v2sandbox/OrderLineItem/returns": returns +"/content:v2sandbox/OrderLineItem/returns/return": return +"/content:v2sandbox/OrderLineItem/shippingDetails": shipping_details +"/content:v2sandbox/OrderLineItem/tax": tax +"/content:v2sandbox/OrderLineItemProduct": order_line_item_product +"/content:v2sandbox/OrderLineItemProduct/brand": brand +"/content:v2sandbox/OrderLineItemProduct/channel": channel +"/content:v2sandbox/OrderLineItemProduct/condition": condition +"/content:v2sandbox/OrderLineItemProduct/contentLanguage": content_language +"/content:v2sandbox/OrderLineItemProduct/gtin": gtin +"/content:v2sandbox/OrderLineItemProduct/id": id +"/content:v2sandbox/OrderLineItemProduct/imageLink": image_link +"/content:v2sandbox/OrderLineItemProduct/itemGroupId": item_group_id +"/content:v2sandbox/OrderLineItemProduct/mpn": mpn +"/content:v2sandbox/OrderLineItemProduct/offerId": offer_id +"/content:v2sandbox/OrderLineItemProduct/price": price +"/content:v2sandbox/OrderLineItemProduct/shownImage": shown_image +"/content:v2sandbox/OrderLineItemProduct/targetCountry": target_country +"/content:v2sandbox/OrderLineItemProduct/title": title +"/content:v2sandbox/OrderLineItemProduct/variantAttributes": variant_attributes +"/content:v2sandbox/OrderLineItemProduct/variantAttributes/variant_attribute": variant_attribute +"/content:v2sandbox/OrderLineItemProductVariantAttribute": order_line_item_product_variant_attribute +"/content:v2sandbox/OrderLineItemProductVariantAttribute/dimension": dimension +"/content:v2sandbox/OrderLineItemProductVariantAttribute/value": value +"/content:v2sandbox/OrderLineItemReturnInfo": order_line_item_return_info +"/content:v2sandbox/OrderLineItemReturnInfo/daysToReturn": days_to_return +"/content:v2sandbox/OrderLineItemReturnInfo/isReturnable": is_returnable +"/content:v2sandbox/OrderLineItemReturnInfo/policyUrl": policy_url +"/content:v2sandbox/OrderLineItemShippingDetails": order_line_item_shipping_details +"/content:v2sandbox/OrderLineItemShippingDetails/deliverByDate": deliver_by_date +"/content:v2sandbox/OrderLineItemShippingDetails/method": method_prop +"/content:v2sandbox/OrderLineItemShippingDetails/shipByDate": ship_by_date +"/content:v2sandbox/OrderLineItemShippingDetailsMethod": order_line_item_shipping_details_method +"/content:v2sandbox/OrderLineItemShippingDetailsMethod/carrier": carrier +"/content:v2sandbox/OrderLineItemShippingDetailsMethod/maxDaysInTransit": max_days_in_transit +"/content:v2sandbox/OrderLineItemShippingDetailsMethod/methodName": method_name +"/content:v2sandbox/OrderLineItemShippingDetailsMethod/minDaysInTransit": min_days_in_transit +"/content:v2sandbox/OrderPaymentMethod": order_payment_method +"/content:v2sandbox/OrderPaymentMethod/billingAddress": billing_address +"/content:v2sandbox/OrderPaymentMethod/expirationMonth": expiration_month +"/content:v2sandbox/OrderPaymentMethod/expirationYear": expiration_year +"/content:v2sandbox/OrderPaymentMethod/lastFourDigits": last_four_digits +"/content:v2sandbox/OrderPaymentMethod/phoneNumber": phone_number +"/content:v2sandbox/OrderPaymentMethod/type": type +"/content:v2sandbox/OrderPromotion": order_promotion +"/content:v2sandbox/OrderPromotion/benefits": benefits +"/content:v2sandbox/OrderPromotion/benefits/benefit": benefit +"/content:v2sandbox/OrderPromotion/effectiveDates": effective_dates +"/content:v2sandbox/OrderPromotion/genericRedemptionCode": generic_redemption_code +"/content:v2sandbox/OrderPromotion/id": id +"/content:v2sandbox/OrderPromotion/longTitle": long_title +"/content:v2sandbox/OrderPromotion/productApplicability": product_applicability +"/content:v2sandbox/OrderPromotion/redemptionChannel": redemption_channel +"/content:v2sandbox/OrderPromotionBenefit": order_promotion_benefit +"/content:v2sandbox/OrderPromotionBenefit/discount": discount +"/content:v2sandbox/OrderPromotionBenefit/offerIds": offer_ids +"/content:v2sandbox/OrderPromotionBenefit/offerIds/offer_id": offer_id +"/content:v2sandbox/OrderPromotionBenefit/subType": sub_type +"/content:v2sandbox/OrderPromotionBenefit/taxImpact": tax_impact +"/content:v2sandbox/OrderPromotionBenefit/type": type +"/content:v2sandbox/OrderRefund": order_refund +"/content:v2sandbox/OrderRefund/actor": actor +"/content:v2sandbox/OrderRefund/amount": amount +"/content:v2sandbox/OrderRefund/creationDate": creation_date +"/content:v2sandbox/OrderRefund/reason": reason +"/content:v2sandbox/OrderRefund/reasonText": reason_text +"/content:v2sandbox/OrderReturn": order_return +"/content:v2sandbox/OrderReturn/actor": actor +"/content:v2sandbox/OrderReturn/creationDate": creation_date +"/content:v2sandbox/OrderReturn/quantity": quantity +"/content:v2sandbox/OrderReturn/reason": reason +"/content:v2sandbox/OrderReturn/reasonText": reason_text +"/content:v2sandbox/OrderShipment": order_shipment +"/content:v2sandbox/OrderShipment/carrier": carrier +"/content:v2sandbox/OrderShipment/creationDate": creation_date +"/content:v2sandbox/OrderShipment/deliveryDate": delivery_date +"/content:v2sandbox/OrderShipment/id": id +"/content:v2sandbox/OrderShipment/lineItems": line_items +"/content:v2sandbox/OrderShipment/lineItems/line_item": line_item +"/content:v2sandbox/OrderShipment/status": status +"/content:v2sandbox/OrderShipment/trackingId": tracking_id +"/content:v2sandbox/OrderShipmentLineItemShipment": order_shipment_line_item_shipment +"/content:v2sandbox/OrderShipmentLineItemShipment/lineItemId": line_item_id +"/content:v2sandbox/OrderShipmentLineItemShipment/quantity": quantity +"/content:v2sandbox/OrdersAcknowledgeRequest": orders_acknowledge_request +"/content:v2sandbox/OrdersAcknowledgeRequest/operationId": operation_id +"/content:v2sandbox/OrdersAcknowledgeResponse": orders_acknowledge_response +"/content:v2sandbox/OrdersAcknowledgeResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersAcknowledgeResponse/kind": kind +"/content:v2sandbox/OrdersAdvanceTestOrderResponse": orders_advance_test_order_response +"/content:v2sandbox/OrdersAdvanceTestOrderResponse/kind": kind +"/content:v2sandbox/OrdersCancelLineItemRequest": orders_cancel_line_item_request +"/content:v2sandbox/OrdersCancelLineItemRequest/amount": amount +"/content:v2sandbox/OrdersCancelLineItemRequest/lineItemId": line_item_id +"/content:v2sandbox/OrdersCancelLineItemRequest/operationId": operation_id +"/content:v2sandbox/OrdersCancelLineItemRequest/quantity": quantity +"/content:v2sandbox/OrdersCancelLineItemRequest/reason": reason +"/content:v2sandbox/OrdersCancelLineItemRequest/reasonText": reason_text +"/content:v2sandbox/OrdersCancelLineItemResponse": orders_cancel_line_item_response +"/content:v2sandbox/OrdersCancelLineItemResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersCancelLineItemResponse/kind": kind +"/content:v2sandbox/OrdersCancelRequest": orders_cancel_request +"/content:v2sandbox/OrdersCancelRequest/operationId": operation_id +"/content:v2sandbox/OrdersCancelRequest/reason": reason +"/content:v2sandbox/OrdersCancelRequest/reasonText": reason_text +"/content:v2sandbox/OrdersCancelResponse": orders_cancel_response +"/content:v2sandbox/OrdersCancelResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersCancelResponse/kind": kind +"/content:v2sandbox/OrdersCreateTestOrderRequest": orders_create_test_order_request +"/content:v2sandbox/OrdersCreateTestOrderRequest/templateName": template_name +"/content:v2sandbox/OrdersCreateTestOrderRequest/testOrder": test_order +"/content:v2sandbox/OrdersCreateTestOrderResponse": orders_create_test_order_response +"/content:v2sandbox/OrdersCreateTestOrderResponse/kind": kind +"/content:v2sandbox/OrdersCreateTestOrderResponse/orderId": order_id +"/content:v2sandbox/OrdersCustomBatchRequest": orders_custom_batch_request +"/content:v2sandbox/OrdersCustomBatchRequest/entries": entries +"/content:v2sandbox/OrdersCustomBatchRequest/entries/entry": entry +"/content:v2sandbox/OrdersCustomBatchRequestEntry": orders_custom_batch_request_entry +"/content:v2sandbox/OrdersCustomBatchRequestEntry/batchId": batch_id +"/content:v2sandbox/OrdersCustomBatchRequestEntry/cancel": cancel +"/content:v2sandbox/OrdersCustomBatchRequestEntry/cancelLineItem": cancel_line_item +"/content:v2sandbox/OrdersCustomBatchRequestEntry/merchantId": merchant_id +"/content:v2sandbox/OrdersCustomBatchRequestEntry/merchantOrderId": merchant_order_id +"/content:v2sandbox/OrdersCustomBatchRequestEntry/method": method_prop +"/content:v2sandbox/OrdersCustomBatchRequestEntry/operationId": operation_id +"/content:v2sandbox/OrdersCustomBatchRequestEntry/orderId": order_id +"/content:v2sandbox/OrdersCustomBatchRequestEntry/refund": refund +"/content:v2sandbox/OrdersCustomBatchRequestEntry/returnLineItem": return_line_item +"/content:v2sandbox/OrdersCustomBatchRequestEntry/shipLineItems": ship_line_items +"/content:v2sandbox/OrdersCustomBatchRequestEntry/updateShipment": update_shipment +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancel": orders_custom_batch_request_entry_cancel +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancel/reason": reason +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancel/reasonText": reason_text +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancelLineItem": orders_custom_batch_request_entry_cancel_line_item +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancelLineItem/amount": amount +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancelLineItem/lineItemId": line_item_id +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancelLineItem/quantity": quantity +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancelLineItem/reason": reason +"/content:v2sandbox/OrdersCustomBatchRequestEntryCancelLineItem/reasonText": reason_text +"/content:v2sandbox/OrdersCustomBatchRequestEntryRefund": orders_custom_batch_request_entry_refund +"/content:v2sandbox/OrdersCustomBatchRequestEntryRefund/amount": amount +"/content:v2sandbox/OrdersCustomBatchRequestEntryRefund/reason": reason +"/content:v2sandbox/OrdersCustomBatchRequestEntryRefund/reasonText": reason_text +"/content:v2sandbox/OrdersCustomBatchRequestEntryReturnLineItem": orders_custom_batch_request_entry_return_line_item +"/content:v2sandbox/OrdersCustomBatchRequestEntryReturnLineItem/lineItemId": line_item_id +"/content:v2sandbox/OrdersCustomBatchRequestEntryReturnLineItem/quantity": quantity +"/content:v2sandbox/OrdersCustomBatchRequestEntryReturnLineItem/reason": reason +"/content:v2sandbox/OrdersCustomBatchRequestEntryReturnLineItem/reasonText": reason_text +"/content:v2sandbox/OrdersCustomBatchRequestEntryShipLineItems": orders_custom_batch_request_entry_ship_line_items +"/content:v2sandbox/OrdersCustomBatchRequestEntryShipLineItems/carrier": carrier +"/content:v2sandbox/OrdersCustomBatchRequestEntryShipLineItems/lineItems": line_items +"/content:v2sandbox/OrdersCustomBatchRequestEntryShipLineItems/lineItems/line_item": line_item +"/content:v2sandbox/OrdersCustomBatchRequestEntryShipLineItems/shipmentId": shipment_id +"/content:v2sandbox/OrdersCustomBatchRequestEntryShipLineItems/trackingId": tracking_id +"/content:v2sandbox/OrdersCustomBatchRequestEntryUpdateShipment": orders_custom_batch_request_entry_update_shipment +"/content:v2sandbox/OrdersCustomBatchRequestEntryUpdateShipment/carrier": carrier +"/content:v2sandbox/OrdersCustomBatchRequestEntryUpdateShipment/shipmentId": shipment_id +"/content:v2sandbox/OrdersCustomBatchRequestEntryUpdateShipment/status": status +"/content:v2sandbox/OrdersCustomBatchRequestEntryUpdateShipment/trackingId": tracking_id +"/content:v2sandbox/OrdersCustomBatchResponse": orders_custom_batch_response +"/content:v2sandbox/OrdersCustomBatchResponse/entries": entries +"/content:v2sandbox/OrdersCustomBatchResponse/entries/entry": entry +"/content:v2sandbox/OrdersCustomBatchResponse/kind": kind +"/content:v2sandbox/OrdersCustomBatchResponseEntry": orders_custom_batch_response_entry +"/content:v2sandbox/OrdersCustomBatchResponseEntry/batchId": batch_id +"/content:v2sandbox/OrdersCustomBatchResponseEntry/errors": errors +"/content:v2sandbox/OrdersCustomBatchResponseEntry/executionStatus": execution_status +"/content:v2sandbox/OrdersCustomBatchResponseEntry/kind": kind +"/content:v2sandbox/OrdersCustomBatchResponseEntry/order": order +"/content:v2sandbox/OrdersGetByMerchantOrderIdResponse": orders_get_by_merchant_order_id_response +"/content:v2sandbox/OrdersGetByMerchantOrderIdResponse/kind": kind +"/content:v2sandbox/OrdersGetByMerchantOrderIdResponse/order": order +"/content:v2sandbox/OrdersGetTestOrderTemplateResponse": orders_get_test_order_template_response +"/content:v2sandbox/OrdersGetTestOrderTemplateResponse/kind": kind +"/content:v2sandbox/OrdersGetTestOrderTemplateResponse/template": template +"/content:v2sandbox/OrdersListResponse": orders_list_response +"/content:v2sandbox/OrdersListResponse/kind": kind +"/content:v2sandbox/OrdersListResponse/nextPageToken": next_page_token +"/content:v2sandbox/OrdersListResponse/resources": resources +"/content:v2sandbox/OrdersListResponse/resources/resource": resource +"/content:v2sandbox/OrdersRefundRequest": orders_refund_request +"/content:v2sandbox/OrdersRefundRequest/amount": amount +"/content:v2sandbox/OrdersRefundRequest/operationId": operation_id +"/content:v2sandbox/OrdersRefundRequest/reason": reason +"/content:v2sandbox/OrdersRefundRequest/reasonText": reason_text +"/content:v2sandbox/OrdersRefundResponse": orders_refund_response +"/content:v2sandbox/OrdersRefundResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersRefundResponse/kind": kind +"/content:v2sandbox/OrdersReturnLineItemRequest": orders_return_line_item_request +"/content:v2sandbox/OrdersReturnLineItemRequest/lineItemId": line_item_id +"/content:v2sandbox/OrdersReturnLineItemRequest/operationId": operation_id +"/content:v2sandbox/OrdersReturnLineItemRequest/quantity": quantity +"/content:v2sandbox/OrdersReturnLineItemRequest/reason": reason +"/content:v2sandbox/OrdersReturnLineItemRequest/reasonText": reason_text +"/content:v2sandbox/OrdersReturnLineItemResponse": orders_return_line_item_response +"/content:v2sandbox/OrdersReturnLineItemResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersReturnLineItemResponse/kind": kind +"/content:v2sandbox/OrdersShipLineItemsRequest": orders_ship_line_items_request +"/content:v2sandbox/OrdersShipLineItemsRequest/carrier": carrier +"/content:v2sandbox/OrdersShipLineItemsRequest/lineItems": line_items +"/content:v2sandbox/OrdersShipLineItemsRequest/lineItems/line_item": line_item +"/content:v2sandbox/OrdersShipLineItemsRequest/operationId": operation_id +"/content:v2sandbox/OrdersShipLineItemsRequest/shipmentId": shipment_id +"/content:v2sandbox/OrdersShipLineItemsRequest/trackingId": tracking_id +"/content:v2sandbox/OrdersShipLineItemsResponse": orders_ship_line_items_response +"/content:v2sandbox/OrdersShipLineItemsResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersShipLineItemsResponse/kind": kind +"/content:v2sandbox/OrdersUpdateMerchantOrderIdRequest": orders_update_merchant_order_id_request +"/content:v2sandbox/OrdersUpdateMerchantOrderIdRequest/merchantOrderId": merchant_order_id +"/content:v2sandbox/OrdersUpdateMerchantOrderIdRequest/operationId": operation_id +"/content:v2sandbox/OrdersUpdateMerchantOrderIdResponse": orders_update_merchant_order_id_response +"/content:v2sandbox/OrdersUpdateMerchantOrderIdResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersUpdateMerchantOrderIdResponse/kind": kind +"/content:v2sandbox/OrdersUpdateShipmentRequest": orders_update_shipment_request +"/content:v2sandbox/OrdersUpdateShipmentRequest/carrier": carrier +"/content:v2sandbox/OrdersUpdateShipmentRequest/operationId": operation_id +"/content:v2sandbox/OrdersUpdateShipmentRequest/shipmentId": shipment_id +"/content:v2sandbox/OrdersUpdateShipmentRequest/status": status +"/content:v2sandbox/OrdersUpdateShipmentRequest/trackingId": tracking_id +"/content:v2sandbox/OrdersUpdateShipmentResponse": orders_update_shipment_response +"/content:v2sandbox/OrdersUpdateShipmentResponse/executionStatus": execution_status +"/content:v2sandbox/OrdersUpdateShipmentResponse/kind": kind +"/content:v2sandbox/Price": price +"/content:v2sandbox/Price/currency": currency +"/content:v2sandbox/Price/value": value +"/content:v2sandbox/TestOrder": test_order +"/content:v2sandbox/TestOrder/customer": customer +"/content:v2sandbox/TestOrder/kind": kind +"/content:v2sandbox/TestOrder/lineItems": line_items +"/content:v2sandbox/TestOrder/lineItems/line_item": line_item +"/content:v2sandbox/TestOrder/paymentMethod": payment_method +"/content:v2sandbox/TestOrder/predefinedDeliveryAddress": predefined_delivery_address +"/content:v2sandbox/TestOrder/promotions": promotions +"/content:v2sandbox/TestOrder/promotions/promotion": promotion +"/content:v2sandbox/TestOrder/shippingCost": shipping_cost +"/content:v2sandbox/TestOrder/shippingCostTax": shipping_cost_tax +"/content:v2sandbox/TestOrder/shippingOption": shipping_option +"/content:v2sandbox/TestOrderCustomer": test_order_customer +"/content:v2sandbox/TestOrderCustomer/email": email +"/content:v2sandbox/TestOrderCustomer/explicitMarketingPreference": explicit_marketing_preference +"/content:v2sandbox/TestOrderCustomer/fullName": full_name +"/content:v2sandbox/TestOrderLineItem": test_order_line_item +"/content:v2sandbox/TestOrderLineItem/product": product +"/content:v2sandbox/TestOrderLineItem/quantityOrdered": quantity_ordered +"/content:v2sandbox/TestOrderLineItem/returnInfo": return_info +"/content:v2sandbox/TestOrderLineItem/shippingDetails": shipping_details +"/content:v2sandbox/TestOrderLineItem/unitTax": unit_tax +"/content:v2sandbox/TestOrderLineItemProduct": test_order_line_item_product +"/content:v2sandbox/TestOrderLineItemProduct/brand": brand +"/content:v2sandbox/TestOrderLineItemProduct/channel": channel +"/content:v2sandbox/TestOrderLineItemProduct/condition": condition +"/content:v2sandbox/TestOrderLineItemProduct/contentLanguage": content_language +"/content:v2sandbox/TestOrderLineItemProduct/gtin": gtin +"/content:v2sandbox/TestOrderLineItemProduct/imageLink": image_link +"/content:v2sandbox/TestOrderLineItemProduct/itemGroupId": item_group_id +"/content:v2sandbox/TestOrderLineItemProduct/mpn": mpn +"/content:v2sandbox/TestOrderLineItemProduct/offerId": offer_id +"/content:v2sandbox/TestOrderLineItemProduct/price": price +"/content:v2sandbox/TestOrderLineItemProduct/targetCountry": target_country +"/content:v2sandbox/TestOrderLineItemProduct/title": title +"/content:v2sandbox/TestOrderLineItemProduct/variantAttributes": variant_attributes +"/content:v2sandbox/TestOrderLineItemProduct/variantAttributes/variant_attribute": variant_attribute +"/content:v2sandbox/TestOrderPaymentMethod": test_order_payment_method +"/content:v2sandbox/TestOrderPaymentMethod/expirationMonth": expiration_month +"/content:v2sandbox/TestOrderPaymentMethod/expirationYear": expiration_year +"/content:v2sandbox/TestOrderPaymentMethod/lastFourDigits": last_four_digits +"/content:v2sandbox/TestOrderPaymentMethod/predefinedBillingAddress": predefined_billing_address +"/content:v2sandbox/TestOrderPaymentMethod/type": type +"/content:v2sandbox/content.orders.acknowledge": acknowledge_order +"/content:v2sandbox/content.orders.acknowledge/merchantId": merchant_id +"/content:v2sandbox/content.orders.acknowledge/orderId": order_id +"/content:v2sandbox/content.orders.advancetestorder": advancetestorder_order +"/content:v2sandbox/content.orders.advancetestorder/merchantId": merchant_id +"/content:v2sandbox/content.orders.advancetestorder/orderId": order_id +"/content:v2sandbox/content.orders.cancel": cancel_order +"/content:v2sandbox/content.orders.cancel/merchantId": merchant_id +"/content:v2sandbox/content.orders.cancel/orderId": order_id +"/content:v2sandbox/content.orders.cancellineitem": cancellineitem_order +"/content:v2sandbox/content.orders.cancellineitem/merchantId": merchant_id +"/content:v2sandbox/content.orders.cancellineitem/orderId": order_id +"/content:v2sandbox/content.orders.createtestorder": createtestorder_order +"/content:v2sandbox/content.orders.createtestorder/merchantId": merchant_id +"/content:v2sandbox/content.orders.custombatch": custombatch_order +"/content:v2sandbox/content.orders.get": get_order +"/content:v2sandbox/content.orders.get/merchantId": merchant_id +"/content:v2sandbox/content.orders.get/orderId": order_id +"/content:v2sandbox/content.orders.getbymerchantorderid": getbymerchantorderid_order +"/content:v2sandbox/content.orders.getbymerchantorderid/merchantId": merchant_id +"/content:v2sandbox/content.orders.getbymerchantorderid/merchantOrderId": merchant_order_id +"/content:v2sandbox/content.orders.gettestordertemplate": gettestordertemplate_order +"/content:v2sandbox/content.orders.gettestordertemplate/merchantId": merchant_id +"/content:v2sandbox/content.orders.gettestordertemplate/templateName": template_name +"/content:v2sandbox/content.orders.list": list_orders +"/content:v2sandbox/content.orders.list/acknowledged": acknowledged +"/content:v2sandbox/content.orders.list/maxResults": max_results +"/content:v2sandbox/content.orders.list/merchantId": merchant_id +"/content:v2sandbox/content.orders.list/orderBy": order_by +"/content:v2sandbox/content.orders.list/pageToken": page_token +"/content:v2sandbox/content.orders.list/placedDateEnd": placed_date_end +"/content:v2sandbox/content.orders.list/placedDateStart": placed_date_start +"/content:v2sandbox/content.orders.list/statuses": statuses +"/content:v2sandbox/content.orders.refund": refund_order +"/content:v2sandbox/content.orders.refund/merchantId": merchant_id +"/content:v2sandbox/content.orders.refund/orderId": order_id +"/content:v2sandbox/content.orders.returnlineitem": returnlineitem_order +"/content:v2sandbox/content.orders.returnlineitem/merchantId": merchant_id +"/content:v2sandbox/content.orders.returnlineitem/orderId": order_id +"/content:v2sandbox/content.orders.shiplineitems": shiplineitems_order +"/content:v2sandbox/content.orders.shiplineitems/merchantId": merchant_id +"/content:v2sandbox/content.orders.shiplineitems/orderId": order_id +"/content:v2sandbox/content.orders.updatemerchantorderid": updatemerchantorderid_order +"/content:v2sandbox/content.orders.updatemerchantorderid/merchantId": merchant_id +"/content:v2sandbox/content.orders.updatemerchantorderid/orderId": order_id +"/content:v2sandbox/content.orders.updateshipment": updateshipment_order +"/content:v2sandbox/content.orders.updateshipment/merchantId": merchant_id +"/content:v2sandbox/content.orders.updateshipment/orderId": order_id +"/content:v2sandbox/fields": fields +"/content:v2sandbox/key": key +"/content:v2sandbox/quotaUser": quota_user +"/content:v2sandbox/userIp": user_ip "/coordinate:v1/CustomFieldDefListResponse": list_custom_field_def_response "/coordinate:v1/JobListResponse": list_job_response "/coordinate:v1/LocationListResponse": list_location_response @@ -20573,6 +29319,316 @@ "/dataproc:v1/fields": fields "/dataproc:v1/key": key "/dataproc:v1/quotaUser": quota_user +"/dataproc:v1beta2/AcceleratorConfig": accelerator_config +"/dataproc:v1beta2/AcceleratorConfig/acceleratorCount": accelerator_count +"/dataproc:v1beta2/AcceleratorConfig/acceleratorTypeUri": accelerator_type_uri +"/dataproc:v1beta2/CancelJobRequest": cancel_job_request +"/dataproc:v1beta2/Cluster": cluster +"/dataproc:v1beta2/Cluster/clusterName": cluster_name +"/dataproc:v1beta2/Cluster/clusterUuid": cluster_uuid +"/dataproc:v1beta2/Cluster/config": config +"/dataproc:v1beta2/Cluster/labels": labels +"/dataproc:v1beta2/Cluster/labels/label": label +"/dataproc:v1beta2/Cluster/metrics": metrics +"/dataproc:v1beta2/Cluster/projectId": project_id +"/dataproc:v1beta2/Cluster/status": status +"/dataproc:v1beta2/Cluster/statusHistory": status_history +"/dataproc:v1beta2/Cluster/statusHistory/status_history": status_history +"/dataproc:v1beta2/ClusterConfig": cluster_config +"/dataproc:v1beta2/ClusterConfig/configBucket": config_bucket +"/dataproc:v1beta2/ClusterConfig/gceClusterConfig": gce_cluster_config +"/dataproc:v1beta2/ClusterConfig/initializationActions": initialization_actions +"/dataproc:v1beta2/ClusterConfig/initializationActions/initialization_action": initialization_action +"/dataproc:v1beta2/ClusterConfig/lifecycleConfig": lifecycle_config +"/dataproc:v1beta2/ClusterConfig/masterConfig": master_config +"/dataproc:v1beta2/ClusterConfig/secondaryWorkerConfig": secondary_worker_config +"/dataproc:v1beta2/ClusterConfig/softwareConfig": software_config +"/dataproc:v1beta2/ClusterConfig/workerConfig": worker_config +"/dataproc:v1beta2/ClusterMetrics": cluster_metrics +"/dataproc:v1beta2/ClusterMetrics/hdfsMetrics": hdfs_metrics +"/dataproc:v1beta2/ClusterMetrics/hdfsMetrics/hdfs_metric": hdfs_metric +"/dataproc:v1beta2/ClusterMetrics/yarnMetrics": yarn_metrics +"/dataproc:v1beta2/ClusterMetrics/yarnMetrics/yarn_metric": yarn_metric +"/dataproc:v1beta2/ClusterOperationMetadata": cluster_operation_metadata +"/dataproc:v1beta2/ClusterOperationMetadata/clusterName": cluster_name +"/dataproc:v1beta2/ClusterOperationMetadata/clusterUuid": cluster_uuid +"/dataproc:v1beta2/ClusterOperationMetadata/description": description +"/dataproc:v1beta2/ClusterOperationMetadata/labels": labels +"/dataproc:v1beta2/ClusterOperationMetadata/labels/label": label +"/dataproc:v1beta2/ClusterOperationMetadata/operationType": operation_type +"/dataproc:v1beta2/ClusterOperationMetadata/status": status +"/dataproc:v1beta2/ClusterOperationMetadata/statusHistory": status_history +"/dataproc:v1beta2/ClusterOperationMetadata/statusHistory/status_history": status_history +"/dataproc:v1beta2/ClusterOperationMetadata/warnings": warnings +"/dataproc:v1beta2/ClusterOperationMetadata/warnings/warning": warning +"/dataproc:v1beta2/ClusterOperationStatus": cluster_operation_status +"/dataproc:v1beta2/ClusterOperationStatus/details": details +"/dataproc:v1beta2/ClusterOperationStatus/innerState": inner_state +"/dataproc:v1beta2/ClusterOperationStatus/state": state +"/dataproc:v1beta2/ClusterOperationStatus/stateStartTime": state_start_time +"/dataproc:v1beta2/ClusterStatus": cluster_status +"/dataproc:v1beta2/ClusterStatus/detail": detail +"/dataproc:v1beta2/ClusterStatus/state": state +"/dataproc:v1beta2/ClusterStatus/stateStartTime": state_start_time +"/dataproc:v1beta2/ClusterStatus/substate": substate +"/dataproc:v1beta2/DiagnoseClusterRequest": diagnose_cluster_request +"/dataproc:v1beta2/DiagnoseClusterResults": diagnose_cluster_results +"/dataproc:v1beta2/DiagnoseClusterResults/outputUri": output_uri +"/dataproc:v1beta2/DiskConfig": disk_config +"/dataproc:v1beta2/DiskConfig/bootDiskSizeGb": boot_disk_size_gb +"/dataproc:v1beta2/DiskConfig/numLocalSsds": num_local_ssds +"/dataproc:v1beta2/Empty": empty +"/dataproc:v1beta2/GceClusterConfig": gce_cluster_config +"/dataproc:v1beta2/GceClusterConfig/internalIpOnly": internal_ip_only +"/dataproc:v1beta2/GceClusterConfig/metadata": metadata +"/dataproc:v1beta2/GceClusterConfig/metadata/metadatum": metadatum +"/dataproc:v1beta2/GceClusterConfig/networkUri": network_uri +"/dataproc:v1beta2/GceClusterConfig/serviceAccount": service_account +"/dataproc:v1beta2/GceClusterConfig/serviceAccountScopes": service_account_scopes +"/dataproc:v1beta2/GceClusterConfig/serviceAccountScopes/service_account_scope": service_account_scope +"/dataproc:v1beta2/GceClusterConfig/subnetworkUri": subnetwork_uri +"/dataproc:v1beta2/GceClusterConfig/tags": tags +"/dataproc:v1beta2/GceClusterConfig/tags/tag": tag +"/dataproc:v1beta2/GceClusterConfig/zoneUri": zone_uri +"/dataproc:v1beta2/HadoopJob": hadoop_job +"/dataproc:v1beta2/HadoopJob/archiveUris": archive_uris +"/dataproc:v1beta2/HadoopJob/archiveUris/archive_uri": archive_uri +"/dataproc:v1beta2/HadoopJob/args": args +"/dataproc:v1beta2/HadoopJob/args/arg": arg +"/dataproc:v1beta2/HadoopJob/fileUris": file_uris +"/dataproc:v1beta2/HadoopJob/fileUris/file_uri": file_uri +"/dataproc:v1beta2/HadoopJob/jarFileUris": jar_file_uris +"/dataproc:v1beta2/HadoopJob/jarFileUris/jar_file_uri": jar_file_uri +"/dataproc:v1beta2/HadoopJob/loggingConfig": logging_config +"/dataproc:v1beta2/HadoopJob/mainClass": main_class +"/dataproc:v1beta2/HadoopJob/mainJarFileUri": main_jar_file_uri +"/dataproc:v1beta2/HadoopJob/properties": properties +"/dataproc:v1beta2/HadoopJob/properties/property": property +"/dataproc:v1beta2/HiveJob": hive_job +"/dataproc:v1beta2/HiveJob/continueOnFailure": continue_on_failure +"/dataproc:v1beta2/HiveJob/jarFileUris": jar_file_uris +"/dataproc:v1beta2/HiveJob/jarFileUris/jar_file_uri": jar_file_uri +"/dataproc:v1beta2/HiveJob/properties": properties +"/dataproc:v1beta2/HiveJob/properties/property": property +"/dataproc:v1beta2/HiveJob/queryFileUri": query_file_uri +"/dataproc:v1beta2/HiveJob/queryList": query_list +"/dataproc:v1beta2/HiveJob/scriptVariables": script_variables +"/dataproc:v1beta2/HiveJob/scriptVariables/script_variable": script_variable +"/dataproc:v1beta2/InstanceGroupConfig": instance_group_config +"/dataproc:v1beta2/InstanceGroupConfig/accelerators": accelerators +"/dataproc:v1beta2/InstanceGroupConfig/accelerators/accelerator": accelerator +"/dataproc:v1beta2/InstanceGroupConfig/diskConfig": disk_config +"/dataproc:v1beta2/InstanceGroupConfig/imageUri": image_uri +"/dataproc:v1beta2/InstanceGroupConfig/instanceNames": instance_names +"/dataproc:v1beta2/InstanceGroupConfig/instanceNames/instance_name": instance_name +"/dataproc:v1beta2/InstanceGroupConfig/isPreemptible": is_preemptible +"/dataproc:v1beta2/InstanceGroupConfig/machineTypeUri": machine_type_uri +"/dataproc:v1beta2/InstanceGroupConfig/managedGroupConfig": managed_group_config +"/dataproc:v1beta2/InstanceGroupConfig/numInstances": num_instances +"/dataproc:v1beta2/Job": job +"/dataproc:v1beta2/Job/driverControlFilesUri": driver_control_files_uri +"/dataproc:v1beta2/Job/driverOutputResourceUri": driver_output_resource_uri +"/dataproc:v1beta2/Job/hadoopJob": hadoop_job +"/dataproc:v1beta2/Job/hiveJob": hive_job +"/dataproc:v1beta2/Job/labels": labels +"/dataproc:v1beta2/Job/labels/label": label +"/dataproc:v1beta2/Job/pigJob": pig_job +"/dataproc:v1beta2/Job/placement": placement +"/dataproc:v1beta2/Job/pysparkJob": pyspark_job +"/dataproc:v1beta2/Job/reference": reference +"/dataproc:v1beta2/Job/scheduling": scheduling +"/dataproc:v1beta2/Job/sparkJob": spark_job +"/dataproc:v1beta2/Job/sparkSqlJob": spark_sql_job +"/dataproc:v1beta2/Job/status": status +"/dataproc:v1beta2/Job/statusHistory": status_history +"/dataproc:v1beta2/Job/statusHistory/status_history": status_history +"/dataproc:v1beta2/Job/yarnApplications": yarn_applications +"/dataproc:v1beta2/Job/yarnApplications/yarn_application": yarn_application +"/dataproc:v1beta2/JobPlacement": job_placement +"/dataproc:v1beta2/JobPlacement/clusterName": cluster_name +"/dataproc:v1beta2/JobPlacement/clusterUuid": cluster_uuid +"/dataproc:v1beta2/JobReference": job_reference +"/dataproc:v1beta2/JobReference/jobId": job_id +"/dataproc:v1beta2/JobReference/projectId": project_id +"/dataproc:v1beta2/JobScheduling": job_scheduling +"/dataproc:v1beta2/JobScheduling/maxFailuresPerHour": max_failures_per_hour +"/dataproc:v1beta2/JobStatus": job_status +"/dataproc:v1beta2/JobStatus/details": details +"/dataproc:v1beta2/JobStatus/state": state +"/dataproc:v1beta2/JobStatus/stateStartTime": state_start_time +"/dataproc:v1beta2/JobStatus/substate": substate +"/dataproc:v1beta2/LifecycleConfig": lifecycle_config +"/dataproc:v1beta2/LifecycleConfig/autoDeleteTime": auto_delete_time +"/dataproc:v1beta2/LifecycleConfig/autoDeleteTtl": auto_delete_ttl +"/dataproc:v1beta2/LifecycleConfig/idleDeleteTtl": idle_delete_ttl +"/dataproc:v1beta2/ListClustersResponse": list_clusters_response +"/dataproc:v1beta2/ListClustersResponse/clusters": clusters +"/dataproc:v1beta2/ListClustersResponse/clusters/cluster": cluster +"/dataproc:v1beta2/ListClustersResponse/nextPageToken": next_page_token +"/dataproc:v1beta2/ListJobsResponse": list_jobs_response +"/dataproc:v1beta2/ListJobsResponse/jobs": jobs +"/dataproc:v1beta2/ListJobsResponse/jobs/job": job +"/dataproc:v1beta2/ListJobsResponse/nextPageToken": next_page_token +"/dataproc:v1beta2/ListOperationsResponse": list_operations_response +"/dataproc:v1beta2/ListOperationsResponse/nextPageToken": next_page_token +"/dataproc:v1beta2/ListOperationsResponse/operations": operations +"/dataproc:v1beta2/ListOperationsResponse/operations/operation": operation +"/dataproc:v1beta2/LoggingConfig": logging_config +"/dataproc:v1beta2/LoggingConfig/driverLogLevels": driver_log_levels +"/dataproc:v1beta2/LoggingConfig/driverLogLevels/driver_log_level": driver_log_level +"/dataproc:v1beta2/ManagedGroupConfig": managed_group_config +"/dataproc:v1beta2/ManagedGroupConfig/instanceGroupManagerName": instance_group_manager_name +"/dataproc:v1beta2/ManagedGroupConfig/instanceTemplateName": instance_template_name +"/dataproc:v1beta2/NodeInitializationAction": node_initialization_action +"/dataproc:v1beta2/NodeInitializationAction/executableFile": executable_file +"/dataproc:v1beta2/NodeInitializationAction/executionTimeout": execution_timeout +"/dataproc:v1beta2/Operation": operation +"/dataproc:v1beta2/Operation/done": done +"/dataproc:v1beta2/Operation/error": error +"/dataproc:v1beta2/Operation/metadata": metadata +"/dataproc:v1beta2/Operation/metadata/metadatum": metadatum +"/dataproc:v1beta2/Operation/name": name +"/dataproc:v1beta2/Operation/response": response +"/dataproc:v1beta2/Operation/response/response": response +"/dataproc:v1beta2/PigJob": pig_job +"/dataproc:v1beta2/PigJob/continueOnFailure": continue_on_failure +"/dataproc:v1beta2/PigJob/jarFileUris": jar_file_uris +"/dataproc:v1beta2/PigJob/jarFileUris/jar_file_uri": jar_file_uri +"/dataproc:v1beta2/PigJob/loggingConfig": logging_config +"/dataproc:v1beta2/PigJob/properties": properties +"/dataproc:v1beta2/PigJob/properties/property": property +"/dataproc:v1beta2/PigJob/queryFileUri": query_file_uri +"/dataproc:v1beta2/PigJob/queryList": query_list +"/dataproc:v1beta2/PigJob/scriptVariables": script_variables +"/dataproc:v1beta2/PigJob/scriptVariables/script_variable": script_variable +"/dataproc:v1beta2/PySparkJob": py_spark_job +"/dataproc:v1beta2/PySparkJob/archiveUris": archive_uris +"/dataproc:v1beta2/PySparkJob/archiveUris/archive_uri": archive_uri +"/dataproc:v1beta2/PySparkJob/args": args +"/dataproc:v1beta2/PySparkJob/args/arg": arg +"/dataproc:v1beta2/PySparkJob/fileUris": file_uris +"/dataproc:v1beta2/PySparkJob/fileUris/file_uri": file_uri +"/dataproc:v1beta2/PySparkJob/jarFileUris": jar_file_uris +"/dataproc:v1beta2/PySparkJob/jarFileUris/jar_file_uri": jar_file_uri +"/dataproc:v1beta2/PySparkJob/loggingConfig": logging_config +"/dataproc:v1beta2/PySparkJob/mainPythonFileUri": main_python_file_uri +"/dataproc:v1beta2/PySparkJob/properties": properties +"/dataproc:v1beta2/PySparkJob/properties/property": property +"/dataproc:v1beta2/PySparkJob/pythonFileUris": python_file_uris +"/dataproc:v1beta2/PySparkJob/pythonFileUris/python_file_uri": python_file_uri +"/dataproc:v1beta2/QueryList": query_list +"/dataproc:v1beta2/QueryList/queries": queries +"/dataproc:v1beta2/QueryList/queries/query": query +"/dataproc:v1beta2/SoftwareConfig": software_config +"/dataproc:v1beta2/SoftwareConfig/imageVersion": image_version +"/dataproc:v1beta2/SoftwareConfig/properties": properties +"/dataproc:v1beta2/SoftwareConfig/properties/property": property +"/dataproc:v1beta2/SparkJob": spark_job +"/dataproc:v1beta2/SparkJob/archiveUris": archive_uris +"/dataproc:v1beta2/SparkJob/archiveUris/archive_uri": archive_uri +"/dataproc:v1beta2/SparkJob/args": args +"/dataproc:v1beta2/SparkJob/args/arg": arg +"/dataproc:v1beta2/SparkJob/fileUris": file_uris +"/dataproc:v1beta2/SparkJob/fileUris/file_uri": file_uri +"/dataproc:v1beta2/SparkJob/jarFileUris": jar_file_uris +"/dataproc:v1beta2/SparkJob/jarFileUris/jar_file_uri": jar_file_uri +"/dataproc:v1beta2/SparkJob/loggingConfig": logging_config +"/dataproc:v1beta2/SparkJob/mainClass": main_class +"/dataproc:v1beta2/SparkJob/mainJarFileUri": main_jar_file_uri +"/dataproc:v1beta2/SparkJob/properties": properties +"/dataproc:v1beta2/SparkJob/properties/property": property +"/dataproc:v1beta2/SparkSqlJob": spark_sql_job +"/dataproc:v1beta2/SparkSqlJob/jarFileUris": jar_file_uris +"/dataproc:v1beta2/SparkSqlJob/jarFileUris/jar_file_uri": jar_file_uri +"/dataproc:v1beta2/SparkSqlJob/loggingConfig": logging_config +"/dataproc:v1beta2/SparkSqlJob/properties": properties +"/dataproc:v1beta2/SparkSqlJob/properties/property": property +"/dataproc:v1beta2/SparkSqlJob/queryFileUri": query_file_uri +"/dataproc:v1beta2/SparkSqlJob/queryList": query_list +"/dataproc:v1beta2/SparkSqlJob/scriptVariables": script_variables +"/dataproc:v1beta2/SparkSqlJob/scriptVariables/script_variable": script_variable +"/dataproc:v1beta2/Status": status +"/dataproc:v1beta2/Status/code": code +"/dataproc:v1beta2/Status/details": details +"/dataproc:v1beta2/Status/details/detail": detail +"/dataproc:v1beta2/Status/details/detail/detail": detail +"/dataproc:v1beta2/Status/message": message +"/dataproc:v1beta2/SubmitJobRequest": submit_job_request +"/dataproc:v1beta2/SubmitJobRequest/job": job +"/dataproc:v1beta2/YarnApplication": yarn_application +"/dataproc:v1beta2/YarnApplication/name": name +"/dataproc:v1beta2/YarnApplication/progress": progress +"/dataproc:v1beta2/YarnApplication/state": state +"/dataproc:v1beta2/YarnApplication/trackingUrl": tracking_url +"/dataproc:v1beta2/dataproc.projects.regions.clusters.create": create_project_region_cluster +"/dataproc:v1beta2/dataproc.projects.regions.clusters.create/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.clusters.create/region": region +"/dataproc:v1beta2/dataproc.projects.regions.clusters.delete": delete_project_region_cluster +"/dataproc:v1beta2/dataproc.projects.regions.clusters.delete/clusterName": cluster_name +"/dataproc:v1beta2/dataproc.projects.regions.clusters.delete/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.clusters.delete/region": region +"/dataproc:v1beta2/dataproc.projects.regions.clusters.diagnose": diagnose_cluster +"/dataproc:v1beta2/dataproc.projects.regions.clusters.diagnose/clusterName": cluster_name +"/dataproc:v1beta2/dataproc.projects.regions.clusters.diagnose/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.clusters.diagnose/region": region +"/dataproc:v1beta2/dataproc.projects.regions.clusters.get": get_project_region_cluster +"/dataproc:v1beta2/dataproc.projects.regions.clusters.get/clusterName": cluster_name +"/dataproc:v1beta2/dataproc.projects.regions.clusters.get/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.clusters.get/region": region +"/dataproc:v1beta2/dataproc.projects.regions.clusters.list": list_project_region_clusters +"/dataproc:v1beta2/dataproc.projects.regions.clusters.list/filter": filter +"/dataproc:v1beta2/dataproc.projects.regions.clusters.list/pageSize": page_size +"/dataproc:v1beta2/dataproc.projects.regions.clusters.list/pageToken": page_token +"/dataproc:v1beta2/dataproc.projects.regions.clusters.list/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.clusters.list/region": region +"/dataproc:v1beta2/dataproc.projects.regions.clusters.patch": patch_project_region_cluster +"/dataproc:v1beta2/dataproc.projects.regions.clusters.patch/clusterName": cluster_name +"/dataproc:v1beta2/dataproc.projects.regions.clusters.patch/gracefulDecommissionTimeout": graceful_decommission_timeout +"/dataproc:v1beta2/dataproc.projects.regions.clusters.patch/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.clusters.patch/region": region +"/dataproc:v1beta2/dataproc.projects.regions.clusters.patch/updateMask": update_mask +"/dataproc:v1beta2/dataproc.projects.regions.jobs.cancel": cancel_job +"/dataproc:v1beta2/dataproc.projects.regions.jobs.cancel/jobId": job_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.cancel/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.cancel/region": region +"/dataproc:v1beta2/dataproc.projects.regions.jobs.delete": delete_project_region_job +"/dataproc:v1beta2/dataproc.projects.regions.jobs.delete/jobId": job_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.delete/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.delete/region": region +"/dataproc:v1beta2/dataproc.projects.regions.jobs.get": get_project_region_job +"/dataproc:v1beta2/dataproc.projects.regions.jobs.get/jobId": job_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.get/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.get/region": region +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list": list_project_region_jobs +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list/clusterName": cluster_name +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list/filter": filter +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list/jobStateMatcher": job_state_matcher +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list/pageSize": page_size +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list/pageToken": page_token +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.list/region": region +"/dataproc:v1beta2/dataproc.projects.regions.jobs.patch": patch_project_region_job +"/dataproc:v1beta2/dataproc.projects.regions.jobs.patch/jobId": job_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.patch/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.patch/region": region +"/dataproc:v1beta2/dataproc.projects.regions.jobs.patch/updateMask": update_mask +"/dataproc:v1beta2/dataproc.projects.regions.jobs.submit": submit_job +"/dataproc:v1beta2/dataproc.projects.regions.jobs.submit/projectId": project_id +"/dataproc:v1beta2/dataproc.projects.regions.jobs.submit/region": region +"/dataproc:v1beta2/dataproc.projects.regions.operations.cancel": cancel_project_region_operation +"/dataproc:v1beta2/dataproc.projects.regions.operations.cancel/name": name +"/dataproc:v1beta2/dataproc.projects.regions.operations.delete": delete_project_region_operation +"/dataproc:v1beta2/dataproc.projects.regions.operations.delete/name": name +"/dataproc:v1beta2/dataproc.projects.regions.operations.get": get_project_region_operation +"/dataproc:v1beta2/dataproc.projects.regions.operations.get/name": name +"/dataproc:v1beta2/dataproc.projects.regions.operations.list": list_project_region_operations +"/dataproc:v1beta2/dataproc.projects.regions.operations.list/filter": filter +"/dataproc:v1beta2/dataproc.projects.regions.operations.list/name": name +"/dataproc:v1beta2/dataproc.projects.regions.operations.list/pageSize": page_size +"/dataproc:v1beta2/dataproc.projects.regions.operations.list/pageToken": page_token +"/dataproc:v1beta2/fields": fields +"/dataproc:v1beta2/key": key +"/dataproc:v1beta2/quotaUser": quota_user "/datastore:v1/AllocateIdsRequest": allocate_ids_request "/datastore:v1/AllocateIdsRequest/keys": keys "/datastore:v1/AllocateIdsRequest/keys/key": key @@ -20803,6 +29859,668 @@ "/datastore:v1beta2/AllocateIdsResponse": allocate_ids_response "/datastore:v1beta2/BeginTransactionRequest": begin_transaction_request "/datastore:v1beta2/BeginTransactionResponse": begin_transaction_response +"/datastore:v1beta3/AllocateIdsRequest": allocate_ids_request +"/datastore:v1beta3/AllocateIdsRequest/keys": keys +"/datastore:v1beta3/AllocateIdsRequest/keys/key": key +"/datastore:v1beta3/AllocateIdsResponse": allocate_ids_response +"/datastore:v1beta3/AllocateIdsResponse/keys": keys +"/datastore:v1beta3/AllocateIdsResponse/keys/key": key +"/datastore:v1beta3/ArrayValue": array_value +"/datastore:v1beta3/ArrayValue/values": values +"/datastore:v1beta3/ArrayValue/values/value": value +"/datastore:v1beta3/BeginTransactionRequest": begin_transaction_request +"/datastore:v1beta3/BeginTransactionRequest/transactionOptions": transaction_options +"/datastore:v1beta3/BeginTransactionResponse": begin_transaction_response +"/datastore:v1beta3/BeginTransactionResponse/transaction": transaction +"/datastore:v1beta3/CommitRequest": commit_request +"/datastore:v1beta3/CommitRequest/mode": mode +"/datastore:v1beta3/CommitRequest/mutations": mutations +"/datastore:v1beta3/CommitRequest/mutations/mutation": mutation +"/datastore:v1beta3/CommitRequest/transaction": transaction +"/datastore:v1beta3/CommitResponse": commit_response +"/datastore:v1beta3/CommitResponse/indexUpdates": index_updates +"/datastore:v1beta3/CommitResponse/mutationResults": mutation_results +"/datastore:v1beta3/CommitResponse/mutationResults/mutation_result": mutation_result +"/datastore:v1beta3/CompositeFilter": composite_filter +"/datastore:v1beta3/CompositeFilter/filters": filters +"/datastore:v1beta3/CompositeFilter/filters/filter": filter +"/datastore:v1beta3/CompositeFilter/op": op +"/datastore:v1beta3/Entity": entity +"/datastore:v1beta3/Entity/key": key +"/datastore:v1beta3/Entity/properties": properties +"/datastore:v1beta3/Entity/properties/property": property +"/datastore:v1beta3/EntityResult": entity_result +"/datastore:v1beta3/EntityResult/cursor": cursor +"/datastore:v1beta3/EntityResult/entity": entity +"/datastore:v1beta3/EntityResult/version": version +"/datastore:v1beta3/Filter": filter +"/datastore:v1beta3/Filter/compositeFilter": composite_filter +"/datastore:v1beta3/Filter/propertyFilter": property_filter +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1CommonMetadata": google_datastore_admin_v1beta1_common_metadata +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1CommonMetadata/endTime": end_time +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1CommonMetadata/labels": labels +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1CommonMetadata/labels/label": label +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1CommonMetadata/operationType": operation_type +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1CommonMetadata/startTime": start_time +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1CommonMetadata/state": state +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1EntityFilter": google_datastore_admin_v1beta1_entity_filter +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1EntityFilter/kinds": kinds +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1EntityFilter/kinds/kind": kind +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1EntityFilter/namespaceIds": namespace_ids +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1EntityFilter/namespaceIds/namespace_id": namespace_id +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": google_datastore_admin_v1beta1_export_entities_metadata +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesMetadata/common": common +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesMetadata/entityFilter": entity_filter +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesMetadata/outputUrlPrefix": output_url_prefix +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesMetadata/progressBytes": progress_bytes +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesMetadata/progressEntities": progress_entities +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesResponse": google_datastore_admin_v1beta1_export_entities_response +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ExportEntitiesResponse/outputUrl": output_url +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": google_datastore_admin_v1beta1_import_entities_metadata +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ImportEntitiesMetadata/common": common +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ImportEntitiesMetadata/entityFilter": entity_filter +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ImportEntitiesMetadata/inputUrl": input_url +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ImportEntitiesMetadata/progressBytes": progress_bytes +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1ImportEntitiesMetadata/progressEntities": progress_entities +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1Progress": google_datastore_admin_v1beta1_progress +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1Progress/workCompleted": work_completed +"/datastore:v1beta3/GoogleDatastoreAdminV1beta1Progress/workEstimated": work_estimated +"/datastore:v1beta3/GqlQuery": gql_query +"/datastore:v1beta3/GqlQuery/allowLiterals": allow_literals +"/datastore:v1beta3/GqlQuery/namedBindings": named_bindings +"/datastore:v1beta3/GqlQuery/namedBindings/named_binding": named_binding +"/datastore:v1beta3/GqlQuery/positionalBindings": positional_bindings +"/datastore:v1beta3/GqlQuery/positionalBindings/positional_binding": positional_binding +"/datastore:v1beta3/GqlQuery/queryString": query_string +"/datastore:v1beta3/GqlQueryParameter": gql_query_parameter +"/datastore:v1beta3/GqlQueryParameter/cursor": cursor +"/datastore:v1beta3/GqlQueryParameter/value": value +"/datastore:v1beta3/Key": key +"/datastore:v1beta3/Key/partitionId": partition_id +"/datastore:v1beta3/Key/path": path +"/datastore:v1beta3/Key/path/path": path +"/datastore:v1beta3/KindExpression": kind_expression +"/datastore:v1beta3/KindExpression/name": name +"/datastore:v1beta3/LatLng": lat_lng +"/datastore:v1beta3/LatLng/latitude": latitude +"/datastore:v1beta3/LatLng/longitude": longitude +"/datastore:v1beta3/LookupRequest": lookup_request +"/datastore:v1beta3/LookupRequest/keys": keys +"/datastore:v1beta3/LookupRequest/keys/key": key +"/datastore:v1beta3/LookupRequest/readOptions": read_options +"/datastore:v1beta3/LookupResponse": lookup_response +"/datastore:v1beta3/LookupResponse/deferred": deferred +"/datastore:v1beta3/LookupResponse/deferred/deferred": deferred +"/datastore:v1beta3/LookupResponse/found": found +"/datastore:v1beta3/LookupResponse/found/found": found +"/datastore:v1beta3/LookupResponse/missing": missing +"/datastore:v1beta3/LookupResponse/missing/missing": missing +"/datastore:v1beta3/Mutation": mutation +"/datastore:v1beta3/Mutation/baseVersion": base_version +"/datastore:v1beta3/Mutation/delete": delete +"/datastore:v1beta3/Mutation/insert": insert +"/datastore:v1beta3/Mutation/update": update +"/datastore:v1beta3/Mutation/upsert": upsert +"/datastore:v1beta3/MutationResult": mutation_result +"/datastore:v1beta3/MutationResult/conflictDetected": conflict_detected +"/datastore:v1beta3/MutationResult/key": key +"/datastore:v1beta3/MutationResult/version": version +"/datastore:v1beta3/PartitionId": partition_id +"/datastore:v1beta3/PartitionId/namespaceId": namespace_id +"/datastore:v1beta3/PartitionId/projectId": project_id +"/datastore:v1beta3/PathElement": path_element +"/datastore:v1beta3/PathElement/id": id +"/datastore:v1beta3/PathElement/kind": kind +"/datastore:v1beta3/PathElement/name": name +"/datastore:v1beta3/Projection": projection +"/datastore:v1beta3/Projection/property": property +"/datastore:v1beta3/PropertyFilter": property_filter +"/datastore:v1beta3/PropertyFilter/op": op +"/datastore:v1beta3/PropertyFilter/property": property +"/datastore:v1beta3/PropertyFilter/value": value +"/datastore:v1beta3/PropertyOrder": property_order +"/datastore:v1beta3/PropertyOrder/direction": direction +"/datastore:v1beta3/PropertyOrder/property": property +"/datastore:v1beta3/PropertyReference": property_reference +"/datastore:v1beta3/PropertyReference/name": name +"/datastore:v1beta3/Query": query +"/datastore:v1beta3/Query/distinctOn": distinct_on +"/datastore:v1beta3/Query/distinctOn/distinct_on": distinct_on +"/datastore:v1beta3/Query/endCursor": end_cursor +"/datastore:v1beta3/Query/filter": filter +"/datastore:v1beta3/Query/kind": kind +"/datastore:v1beta3/Query/kind/kind": kind +"/datastore:v1beta3/Query/limit": limit +"/datastore:v1beta3/Query/offset": offset +"/datastore:v1beta3/Query/order": order +"/datastore:v1beta3/Query/order/order": order +"/datastore:v1beta3/Query/projection": projection +"/datastore:v1beta3/Query/projection/projection": projection +"/datastore:v1beta3/Query/startCursor": start_cursor +"/datastore:v1beta3/QueryResultBatch": query_result_batch +"/datastore:v1beta3/QueryResultBatch/endCursor": end_cursor +"/datastore:v1beta3/QueryResultBatch/entityResultType": entity_result_type +"/datastore:v1beta3/QueryResultBatch/entityResults": entity_results +"/datastore:v1beta3/QueryResultBatch/entityResults/entity_result": entity_result +"/datastore:v1beta3/QueryResultBatch/moreResults": more_results +"/datastore:v1beta3/QueryResultBatch/skippedCursor": skipped_cursor +"/datastore:v1beta3/QueryResultBatch/skippedResults": skipped_results +"/datastore:v1beta3/QueryResultBatch/snapshotVersion": snapshot_version +"/datastore:v1beta3/ReadOnly": read_only +"/datastore:v1beta3/ReadOptions": read_options +"/datastore:v1beta3/ReadOptions/readConsistency": read_consistency +"/datastore:v1beta3/ReadOptions/transaction": transaction +"/datastore:v1beta3/ReadWrite": read_write +"/datastore:v1beta3/ReadWrite/previousTransaction": previous_transaction +"/datastore:v1beta3/RollbackRequest": rollback_request +"/datastore:v1beta3/RollbackRequest/transaction": transaction +"/datastore:v1beta3/RollbackResponse": rollback_response +"/datastore:v1beta3/RunQueryRequest": run_query_request +"/datastore:v1beta3/RunQueryRequest/gqlQuery": gql_query +"/datastore:v1beta3/RunQueryRequest/partitionId": partition_id +"/datastore:v1beta3/RunQueryRequest/query": query +"/datastore:v1beta3/RunQueryRequest/readOptions": read_options +"/datastore:v1beta3/RunQueryResponse": run_query_response +"/datastore:v1beta3/RunQueryResponse/batch": batch +"/datastore:v1beta3/RunQueryResponse/query": query +"/datastore:v1beta3/TransactionOptions": transaction_options +"/datastore:v1beta3/TransactionOptions/readOnly": read_only +"/datastore:v1beta3/TransactionOptions/readWrite": read_write +"/datastore:v1beta3/Value": value +"/datastore:v1beta3/Value/arrayValue": array_value +"/datastore:v1beta3/Value/blobValue": blob_value +"/datastore:v1beta3/Value/booleanValue": boolean_value +"/datastore:v1beta3/Value/doubleValue": double_value +"/datastore:v1beta3/Value/entityValue": entity_value +"/datastore:v1beta3/Value/excludeFromIndexes": exclude_from_indexes +"/datastore:v1beta3/Value/geoPointValue": geo_point_value +"/datastore:v1beta3/Value/integerValue": integer_value +"/datastore:v1beta3/Value/keyValue": key_value +"/datastore:v1beta3/Value/meaning": meaning +"/datastore:v1beta3/Value/nullValue": null_value +"/datastore:v1beta3/Value/stringValue": string_value +"/datastore:v1beta3/Value/timestampValue": timestamp_value +"/datastore:v1beta3/datastore.projects.allocateIds": allocate_project_ids +"/datastore:v1beta3/datastore.projects.allocateIds/projectId": project_id +"/datastore:v1beta3/datastore.projects.beginTransaction": begin_project_transaction +"/datastore:v1beta3/datastore.projects.beginTransaction/projectId": project_id +"/datastore:v1beta3/datastore.projects.commit": commit_project +"/datastore:v1beta3/datastore.projects.commit/projectId": project_id +"/datastore:v1beta3/datastore.projects.lookup": lookup_project +"/datastore:v1beta3/datastore.projects.lookup/projectId": project_id +"/datastore:v1beta3/datastore.projects.rollback": rollback_project +"/datastore:v1beta3/datastore.projects.rollback/projectId": project_id +"/datastore:v1beta3/datastore.projects.runQuery": run_project_query +"/datastore:v1beta3/datastore.projects.runQuery/projectId": project_id +"/datastore:v1beta3/fields": fields +"/datastore:v1beta3/key": key +"/datastore:v1beta3/quotaUser": quota_user +"/deploymentmanager:alpha/AuditConfig": audit_config +"/deploymentmanager:alpha/AuditConfig/auditLogConfigs": audit_log_configs +"/deploymentmanager:alpha/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config +"/deploymentmanager:alpha/AuditConfig/exemptedMembers": exempted_members +"/deploymentmanager:alpha/AuditConfig/exemptedMembers/exempted_member": exempted_member +"/deploymentmanager:alpha/AuditConfig/service": service +"/deploymentmanager:alpha/AuditLogConfig": audit_log_config +"/deploymentmanager:alpha/AuditLogConfig/exemptedMembers": exempted_members +"/deploymentmanager:alpha/AuditLogConfig/exemptedMembers/exempted_member": exempted_member +"/deploymentmanager:alpha/AuditLogConfig/logType": log_type +"/deploymentmanager:alpha/AuthorizationLoggingOptions": authorization_logging_options +"/deploymentmanager:alpha/AuthorizationLoggingOptions/permissionType": permission_type +"/deploymentmanager:alpha/BasicAuth": basic_auth +"/deploymentmanager:alpha/BasicAuth/password": password +"/deploymentmanager:alpha/BasicAuth/user": user +"/deploymentmanager:alpha/Binding": binding +"/deploymentmanager:alpha/Binding/condition": condition +"/deploymentmanager:alpha/Binding/members": members +"/deploymentmanager:alpha/Binding/members/member": member +"/deploymentmanager:alpha/Binding/role": role +"/deploymentmanager:alpha/CollectionOverride": collection_override +"/deploymentmanager:alpha/CollectionOverride/collection": collection +"/deploymentmanager:alpha/CollectionOverride/options": options +"/deploymentmanager:alpha/CompositeType": composite_type +"/deploymentmanager:alpha/CompositeType/description": description +"/deploymentmanager:alpha/CompositeType/id": id +"/deploymentmanager:alpha/CompositeType/insertTime": insert_time +"/deploymentmanager:alpha/CompositeType/labels": labels +"/deploymentmanager:alpha/CompositeType/labels/label": label +"/deploymentmanager:alpha/CompositeType/name": name +"/deploymentmanager:alpha/CompositeType/operation": operation +"/deploymentmanager:alpha/CompositeType/selfLink": self_link +"/deploymentmanager:alpha/CompositeType/status": status +"/deploymentmanager:alpha/CompositeType/templateContents": template_contents +"/deploymentmanager:alpha/CompositeTypeLabelEntry": composite_type_label_entry +"/deploymentmanager:alpha/CompositeTypeLabelEntry/key": key +"/deploymentmanager:alpha/CompositeTypeLabelEntry/value": value +"/deploymentmanager:alpha/CompositeTypesListResponse": composite_types_list_response +"/deploymentmanager:alpha/CompositeTypesListResponse/compositeTypes": composite_types +"/deploymentmanager:alpha/CompositeTypesListResponse/compositeTypes/composite_type": composite_type +"/deploymentmanager:alpha/CompositeTypesListResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/Condition": condition +"/deploymentmanager:alpha/Condition/iam": iam +"/deploymentmanager:alpha/Condition/op": op +"/deploymentmanager:alpha/Condition/svc": svc +"/deploymentmanager:alpha/Condition/sys": sys +"/deploymentmanager:alpha/Condition/value": value +"/deploymentmanager:alpha/Condition/values": values +"/deploymentmanager:alpha/Condition/values/value": value +"/deploymentmanager:alpha/ConfigFile": config_file +"/deploymentmanager:alpha/ConfigFile/content": content +"/deploymentmanager:alpha/ConfigurableService": configurable_service +"/deploymentmanager:alpha/ConfigurableService/collectionOverrides": collection_overrides +"/deploymentmanager:alpha/ConfigurableService/collectionOverrides/collection_override": collection_override +"/deploymentmanager:alpha/ConfigurableService/credential": credential +"/deploymentmanager:alpha/ConfigurableService/descriptorUrl": descriptor_url +"/deploymentmanager:alpha/ConfigurableService/options": options +"/deploymentmanager:alpha/Credential": credential +"/deploymentmanager:alpha/Credential/basicAuth": basic_auth +"/deploymentmanager:alpha/Deployment": deployment +"/deploymentmanager:alpha/Deployment/description": description +"/deploymentmanager:alpha/Deployment/fingerprint": fingerprint +"/deploymentmanager:alpha/Deployment/id": id +"/deploymentmanager:alpha/Deployment/insertTime": insert_time +"/deploymentmanager:alpha/Deployment/labels": labels +"/deploymentmanager:alpha/Deployment/labels/label": label +"/deploymentmanager:alpha/Deployment/manifest": manifest +"/deploymentmanager:alpha/Deployment/name": name +"/deploymentmanager:alpha/Deployment/operation": operation +"/deploymentmanager:alpha/Deployment/selfLink": self_link +"/deploymentmanager:alpha/Deployment/target": target +"/deploymentmanager:alpha/Deployment/update": update +"/deploymentmanager:alpha/DeploymentLabelEntry": deployment_label_entry +"/deploymentmanager:alpha/DeploymentLabelEntry/key": key +"/deploymentmanager:alpha/DeploymentLabelEntry/value": value +"/deploymentmanager:alpha/DeploymentUpdate": deployment_update +"/deploymentmanager:alpha/DeploymentUpdate/description": description +"/deploymentmanager:alpha/DeploymentUpdate/labels": labels +"/deploymentmanager:alpha/DeploymentUpdate/labels/label": label +"/deploymentmanager:alpha/DeploymentUpdate/manifest": manifest +"/deploymentmanager:alpha/DeploymentUpdateLabelEntry": deployment_update_label_entry +"/deploymentmanager:alpha/DeploymentUpdateLabelEntry/key": key +"/deploymentmanager:alpha/DeploymentUpdateLabelEntry/value": value +"/deploymentmanager:alpha/DeploymentsCancelPreviewRequest": deployments_cancel_preview_request +"/deploymentmanager:alpha/DeploymentsCancelPreviewRequest/fingerprint": fingerprint +"/deploymentmanager:alpha/DeploymentsListResponse": deployments_list_response +"/deploymentmanager:alpha/DeploymentsListResponse/deployments": deployments +"/deploymentmanager:alpha/DeploymentsListResponse/deployments/deployment": deployment +"/deploymentmanager:alpha/DeploymentsListResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/DeploymentsStopRequest": deployments_stop_request +"/deploymentmanager:alpha/DeploymentsStopRequest/fingerprint": fingerprint +"/deploymentmanager:alpha/Expr": expr +"/deploymentmanager:alpha/Expr/description": description +"/deploymentmanager:alpha/Expr/expression": expression +"/deploymentmanager:alpha/Expr/location": location +"/deploymentmanager:alpha/Expr/title": title +"/deploymentmanager:alpha/ImportFile": import_file +"/deploymentmanager:alpha/ImportFile/content": content +"/deploymentmanager:alpha/ImportFile/name": name +"/deploymentmanager:alpha/InputMapping": input_mapping +"/deploymentmanager:alpha/InputMapping/fieldName": field_name +"/deploymentmanager:alpha/InputMapping/location": location +"/deploymentmanager:alpha/InputMapping/methodMatch": method_match +"/deploymentmanager:alpha/InputMapping/value": value +"/deploymentmanager:alpha/LogConfig": log_config +"/deploymentmanager:alpha/LogConfig/cloudAudit": cloud_audit +"/deploymentmanager:alpha/LogConfig/counter": counter +"/deploymentmanager:alpha/LogConfig/dataAccess": data_access +"/deploymentmanager:alpha/LogConfigCloudAuditOptions": log_config_cloud_audit_options +"/deploymentmanager:alpha/LogConfigCloudAuditOptions/authorizationLoggingOptions": authorization_logging_options +"/deploymentmanager:alpha/LogConfigCloudAuditOptions/logName": log_name +"/deploymentmanager:alpha/LogConfigCounterOptions": log_config_counter_options +"/deploymentmanager:alpha/LogConfigCounterOptions/field": field +"/deploymentmanager:alpha/LogConfigCounterOptions/metric": metric +"/deploymentmanager:alpha/LogConfigDataAccessOptions": log_config_data_access_options +"/deploymentmanager:alpha/LogConfigDataAccessOptions/logMode": log_mode +"/deploymentmanager:alpha/Manifest": manifest +"/deploymentmanager:alpha/Manifest/config": config +"/deploymentmanager:alpha/Manifest/expandedConfig": expanded_config +"/deploymentmanager:alpha/Manifest/id": id +"/deploymentmanager:alpha/Manifest/imports": imports +"/deploymentmanager:alpha/Manifest/imports/import": import +"/deploymentmanager:alpha/Manifest/insertTime": insert_time +"/deploymentmanager:alpha/Manifest/layout": layout +"/deploymentmanager:alpha/Manifest/name": name +"/deploymentmanager:alpha/Manifest/selfLink": self_link +"/deploymentmanager:alpha/ManifestsListResponse": manifests_list_response +"/deploymentmanager:alpha/ManifestsListResponse/manifests": manifests +"/deploymentmanager:alpha/ManifestsListResponse/manifests/manifest": manifest +"/deploymentmanager:alpha/ManifestsListResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/Operation": operation +"/deploymentmanager:alpha/Operation/clientOperationId": client_operation_id +"/deploymentmanager:alpha/Operation/creationTimestamp": creation_timestamp +"/deploymentmanager:alpha/Operation/description": description +"/deploymentmanager:alpha/Operation/endTime": end_time +"/deploymentmanager:alpha/Operation/error": error +"/deploymentmanager:alpha/Operation/error/errors": errors +"/deploymentmanager:alpha/Operation/error/errors/error": error +"/deploymentmanager:alpha/Operation/error/errors/error/code": code +"/deploymentmanager:alpha/Operation/error/errors/error/location": location +"/deploymentmanager:alpha/Operation/error/errors/error/message": message +"/deploymentmanager:alpha/Operation/httpErrorMessage": http_error_message +"/deploymentmanager:alpha/Operation/httpErrorStatusCode": http_error_status_code +"/deploymentmanager:alpha/Operation/id": id +"/deploymentmanager:alpha/Operation/insertTime": insert_time +"/deploymentmanager:alpha/Operation/kind": kind +"/deploymentmanager:alpha/Operation/name": name +"/deploymentmanager:alpha/Operation/operationType": operation_type +"/deploymentmanager:alpha/Operation/progress": progress +"/deploymentmanager:alpha/Operation/region": region +"/deploymentmanager:alpha/Operation/selfLink": self_link +"/deploymentmanager:alpha/Operation/startTime": start_time +"/deploymentmanager:alpha/Operation/status": status +"/deploymentmanager:alpha/Operation/statusMessage": status_message +"/deploymentmanager:alpha/Operation/targetId": target_id +"/deploymentmanager:alpha/Operation/targetLink": target_link +"/deploymentmanager:alpha/Operation/user": user +"/deploymentmanager:alpha/Operation/warnings": warnings +"/deploymentmanager:alpha/Operation/warnings/warning": warning +"/deploymentmanager:alpha/Operation/warnings/warning/code": code +"/deploymentmanager:alpha/Operation/warnings/warning/data": data +"/deploymentmanager:alpha/Operation/warnings/warning/data/datum": datum +"/deploymentmanager:alpha/Operation/warnings/warning/data/datum/key": key +"/deploymentmanager:alpha/Operation/warnings/warning/data/datum/value": value +"/deploymentmanager:alpha/Operation/warnings/warning/message": message +"/deploymentmanager:alpha/Operation/zone": zone +"/deploymentmanager:alpha/OperationsListResponse": operations_list_response +"/deploymentmanager:alpha/OperationsListResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/OperationsListResponse/operations": operations +"/deploymentmanager:alpha/OperationsListResponse/operations/operation": operation +"/deploymentmanager:alpha/Options": options +"/deploymentmanager:alpha/Options/inputMappings": input_mappings +"/deploymentmanager:alpha/Options/inputMappings/input_mapping": input_mapping +"/deploymentmanager:alpha/Options/nameProperty": name_property +"/deploymentmanager:alpha/Options/validationOptions": validation_options +"/deploymentmanager:alpha/Policy": policy +"/deploymentmanager:alpha/Policy/auditConfigs": audit_configs +"/deploymentmanager:alpha/Policy/auditConfigs/audit_config": audit_config +"/deploymentmanager:alpha/Policy/bindings": bindings +"/deploymentmanager:alpha/Policy/bindings/binding": binding +"/deploymentmanager:alpha/Policy/etag": etag +"/deploymentmanager:alpha/Policy/iamOwned": iam_owned +"/deploymentmanager:alpha/Policy/rules": rules +"/deploymentmanager:alpha/Policy/rules/rule": rule +"/deploymentmanager:alpha/Policy/version": version +"/deploymentmanager:alpha/Resource": resource +"/deploymentmanager:alpha/Resource/accessControl": access_control +"/deploymentmanager:alpha/Resource/finalProperties": final_properties +"/deploymentmanager:alpha/Resource/id": id +"/deploymentmanager:alpha/Resource/insertTime": insert_time +"/deploymentmanager:alpha/Resource/manifest": manifest +"/deploymentmanager:alpha/Resource/name": name +"/deploymentmanager:alpha/Resource/properties": properties +"/deploymentmanager:alpha/Resource/type": type +"/deploymentmanager:alpha/Resource/update": update +"/deploymentmanager:alpha/Resource/updateTime": update_time +"/deploymentmanager:alpha/Resource/url": url +"/deploymentmanager:alpha/Resource/warnings": warnings +"/deploymentmanager:alpha/Resource/warnings/warning": warning +"/deploymentmanager:alpha/Resource/warnings/warning/code": code +"/deploymentmanager:alpha/Resource/warnings/warning/data": data +"/deploymentmanager:alpha/Resource/warnings/warning/data/datum": datum +"/deploymentmanager:alpha/Resource/warnings/warning/data/datum/key": key +"/deploymentmanager:alpha/Resource/warnings/warning/data/datum/value": value +"/deploymentmanager:alpha/Resource/warnings/warning/message": message +"/deploymentmanager:alpha/ResourceAccessControl": resource_access_control +"/deploymentmanager:alpha/ResourceAccessControl/gcpIamPolicy": gcp_iam_policy +"/deploymentmanager:alpha/ResourceUpdate": resource_update +"/deploymentmanager:alpha/ResourceUpdate/accessControl": access_control +"/deploymentmanager:alpha/ResourceUpdate/error": error +"/deploymentmanager:alpha/ResourceUpdate/error/errors": errors +"/deploymentmanager:alpha/ResourceUpdate/error/errors/error": error +"/deploymentmanager:alpha/ResourceUpdate/error/errors/error/code": code +"/deploymentmanager:alpha/ResourceUpdate/error/errors/error/location": location +"/deploymentmanager:alpha/ResourceUpdate/error/errors/error/message": message +"/deploymentmanager:alpha/ResourceUpdate/finalProperties": final_properties +"/deploymentmanager:alpha/ResourceUpdate/intent": intent +"/deploymentmanager:alpha/ResourceUpdate/manifest": manifest +"/deploymentmanager:alpha/ResourceUpdate/properties": properties +"/deploymentmanager:alpha/ResourceUpdate/state": state +"/deploymentmanager:alpha/ResourceUpdate/warnings": warnings +"/deploymentmanager:alpha/ResourceUpdate/warnings/warning": warning +"/deploymentmanager:alpha/ResourceUpdate/warnings/warning/code": code +"/deploymentmanager:alpha/ResourceUpdate/warnings/warning/data": data +"/deploymentmanager:alpha/ResourceUpdate/warnings/warning/data/datum": datum +"/deploymentmanager:alpha/ResourceUpdate/warnings/warning/data/datum/key": key +"/deploymentmanager:alpha/ResourceUpdate/warnings/warning/data/datum/value": value +"/deploymentmanager:alpha/ResourceUpdate/warnings/warning/message": message +"/deploymentmanager:alpha/ResourcesListResponse": resources_list_response +"/deploymentmanager:alpha/ResourcesListResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/ResourcesListResponse/resources": resources +"/deploymentmanager:alpha/ResourcesListResponse/resources/resource": resource +"/deploymentmanager:alpha/Rule": rule +"/deploymentmanager:alpha/Rule/action": action +"/deploymentmanager:alpha/Rule/conditions": conditions +"/deploymentmanager:alpha/Rule/conditions/condition": condition +"/deploymentmanager:alpha/Rule/description": description +"/deploymentmanager:alpha/Rule/ins": ins +"/deploymentmanager:alpha/Rule/ins/in": in +"/deploymentmanager:alpha/Rule/logConfigs": log_configs +"/deploymentmanager:alpha/Rule/logConfigs/log_config": log_config +"/deploymentmanager:alpha/Rule/notIns": not_ins +"/deploymentmanager:alpha/Rule/notIns/not_in": not_in +"/deploymentmanager:alpha/Rule/permissions": permissions +"/deploymentmanager:alpha/Rule/permissions/permission": permission +"/deploymentmanager:alpha/TargetConfiguration": target_configuration +"/deploymentmanager:alpha/TargetConfiguration/config": config +"/deploymentmanager:alpha/TargetConfiguration/imports": imports +"/deploymentmanager:alpha/TargetConfiguration/imports/import": import +"/deploymentmanager:alpha/TemplateContents": template_contents +"/deploymentmanager:alpha/TemplateContents/imports": imports +"/deploymentmanager:alpha/TemplateContents/imports/import": import +"/deploymentmanager:alpha/TemplateContents/interpreter": interpreter +"/deploymentmanager:alpha/TemplateContents/schema": schema +"/deploymentmanager:alpha/TemplateContents/template": template +"/deploymentmanager:alpha/TestPermissionsRequest": test_permissions_request +"/deploymentmanager:alpha/TestPermissionsRequest/permissions": permissions +"/deploymentmanager:alpha/TestPermissionsRequest/permissions/permission": permission +"/deploymentmanager:alpha/TestPermissionsResponse": test_permissions_response +"/deploymentmanager:alpha/TestPermissionsResponse/permissions": permissions +"/deploymentmanager:alpha/TestPermissionsResponse/permissions/permission": permission +"/deploymentmanager:alpha/Type": type +"/deploymentmanager:alpha/Type/configurableService": configurable_service +"/deploymentmanager:alpha/Type/description": description +"/deploymentmanager:alpha/Type/id": id +"/deploymentmanager:alpha/Type/insertTime": insert_time +"/deploymentmanager:alpha/Type/labels": labels +"/deploymentmanager:alpha/Type/labels/label": label +"/deploymentmanager:alpha/Type/name": name +"/deploymentmanager:alpha/Type/operation": operation +"/deploymentmanager:alpha/Type/selfLink": self_link +"/deploymentmanager:alpha/TypeInfo": type_info +"/deploymentmanager:alpha/TypeInfo/description": description +"/deploymentmanager:alpha/TypeInfo/documentationLink": documentation_link +"/deploymentmanager:alpha/TypeInfo/kind": kind +"/deploymentmanager:alpha/TypeInfo/name": name +"/deploymentmanager:alpha/TypeInfo/schema": schema +"/deploymentmanager:alpha/TypeInfo/selfLink": self_link +"/deploymentmanager:alpha/TypeInfo/title": title +"/deploymentmanager:alpha/TypeInfoSchemaInfo": type_info_schema_info +"/deploymentmanager:alpha/TypeInfoSchemaInfo/input": input +"/deploymentmanager:alpha/TypeInfoSchemaInfo/output": output +"/deploymentmanager:alpha/TypeLabelEntry": type_label_entry +"/deploymentmanager:alpha/TypeLabelEntry/key": key +"/deploymentmanager:alpha/TypeLabelEntry/value": value +"/deploymentmanager:alpha/TypeProvider": type_provider +"/deploymentmanager:alpha/TypeProvider/collectionOverrides": collection_overrides +"/deploymentmanager:alpha/TypeProvider/collectionOverrides/collection_override": collection_override +"/deploymentmanager:alpha/TypeProvider/credential": credential +"/deploymentmanager:alpha/TypeProvider/description": description +"/deploymentmanager:alpha/TypeProvider/descriptorUrl": descriptor_url +"/deploymentmanager:alpha/TypeProvider/id": id +"/deploymentmanager:alpha/TypeProvider/insertTime": insert_time +"/deploymentmanager:alpha/TypeProvider/labels": labels +"/deploymentmanager:alpha/TypeProvider/labels/label": label +"/deploymentmanager:alpha/TypeProvider/name": name +"/deploymentmanager:alpha/TypeProvider/operation": operation +"/deploymentmanager:alpha/TypeProvider/options": options +"/deploymentmanager:alpha/TypeProvider/selfLink": self_link +"/deploymentmanager:alpha/TypeProviderLabelEntry": type_provider_label_entry +"/deploymentmanager:alpha/TypeProviderLabelEntry/key": key +"/deploymentmanager:alpha/TypeProviderLabelEntry/value": value +"/deploymentmanager:alpha/TypeProvidersListResponse": type_providers_list_response +"/deploymentmanager:alpha/TypeProvidersListResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/TypeProvidersListResponse/typeProviders": type_providers +"/deploymentmanager:alpha/TypeProvidersListResponse/typeProviders/type_provider": type_provider +"/deploymentmanager:alpha/TypeProvidersListTypesResponse": type_providers_list_types_response +"/deploymentmanager:alpha/TypeProvidersListTypesResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/TypeProvidersListTypesResponse/types": types +"/deploymentmanager:alpha/TypeProvidersListTypesResponse/types/type": type +"/deploymentmanager:alpha/TypesListResponse": types_list_response +"/deploymentmanager:alpha/TypesListResponse/nextPageToken": next_page_token +"/deploymentmanager:alpha/TypesListResponse/types": types +"/deploymentmanager:alpha/TypesListResponse/types/type": type +"/deploymentmanager:alpha/ValidationOptions": validation_options +"/deploymentmanager:alpha/ValidationOptions/schemaValidation": schema_validation +"/deploymentmanager:alpha/ValidationOptions/undeclaredProperties": undeclared_properties +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.delete": delete_composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.delete/compositeType": composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.delete/project": project +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.get": get_composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.get/compositeType": composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.get/project": project +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.insert": insert_composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.insert/project": project +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.list": list_composite_types +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.list/filter": filter +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.list/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.list/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.list/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.list/project": project +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.patch": patch_composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.patch/compositeType": composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.patch/project": project +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.update": update_composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.update/compositeType": composite_type +"/deploymentmanager:alpha/deploymentmanager.compositeTypes.update/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.cancelPreview": cancel_deployment_preview +"/deploymentmanager:alpha/deploymentmanager.deployments.cancelPreview/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.cancelPreview/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.delete": delete_deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.delete/deletePolicy": delete_policy +"/deploymentmanager:alpha/deploymentmanager.deployments.delete/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.delete/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.get": get_deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.get/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.get/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.getIamPolicy": get_deployment_iam_policy +"/deploymentmanager:alpha/deploymentmanager.deployments.getIamPolicy/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.getIamPolicy/resource": resource +"/deploymentmanager:alpha/deploymentmanager.deployments.insert": insert_deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.insert/preview": preview +"/deploymentmanager:alpha/deploymentmanager.deployments.insert/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.list": list_deployments +"/deploymentmanager:alpha/deploymentmanager.deployments.list/filter": filter +"/deploymentmanager:alpha/deploymentmanager.deployments.list/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.deployments.list/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.deployments.list/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.deployments.list/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.patch": patch_deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.patch/createPolicy": create_policy +"/deploymentmanager:alpha/deploymentmanager.deployments.patch/deletePolicy": delete_policy +"/deploymentmanager:alpha/deploymentmanager.deployments.patch/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.patch/preview": preview +"/deploymentmanager:alpha/deploymentmanager.deployments.patch/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.setIamPolicy": set_deployment_iam_policy +"/deploymentmanager:alpha/deploymentmanager.deployments.setIamPolicy/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.setIamPolicy/resource": resource +"/deploymentmanager:alpha/deploymentmanager.deployments.stop": stop_deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.stop/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.stop/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.testIamPermissions": test_deployment_iam_permissions +"/deploymentmanager:alpha/deploymentmanager.deployments.testIamPermissions/project": project +"/deploymentmanager:alpha/deploymentmanager.deployments.testIamPermissions/resource": resource +"/deploymentmanager:alpha/deploymentmanager.deployments.update": update_deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.update/createPolicy": create_policy +"/deploymentmanager:alpha/deploymentmanager.deployments.update/deletePolicy": delete_policy +"/deploymentmanager:alpha/deploymentmanager.deployments.update/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.deployments.update/preview": preview +"/deploymentmanager:alpha/deploymentmanager.deployments.update/project": project +"/deploymentmanager:alpha/deploymentmanager.manifests.get": get_manifest +"/deploymentmanager:alpha/deploymentmanager.manifests.get/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.manifests.get/manifest": manifest +"/deploymentmanager:alpha/deploymentmanager.manifests.get/project": project +"/deploymentmanager:alpha/deploymentmanager.manifests.list": list_manifests +"/deploymentmanager:alpha/deploymentmanager.manifests.list/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.manifests.list/filter": filter +"/deploymentmanager:alpha/deploymentmanager.manifests.list/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.manifests.list/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.manifests.list/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.manifests.list/project": project +"/deploymentmanager:alpha/deploymentmanager.operations.get": get_operation +"/deploymentmanager:alpha/deploymentmanager.operations.get/operation": operation +"/deploymentmanager:alpha/deploymentmanager.operations.get/project": project +"/deploymentmanager:alpha/deploymentmanager.operations.list": list_operations +"/deploymentmanager:alpha/deploymentmanager.operations.list/filter": filter +"/deploymentmanager:alpha/deploymentmanager.operations.list/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.operations.list/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.operations.list/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.operations.list/project": project +"/deploymentmanager:alpha/deploymentmanager.resources.get": get_resource +"/deploymentmanager:alpha/deploymentmanager.resources.get/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.resources.get/project": project +"/deploymentmanager:alpha/deploymentmanager.resources.get/resource": resource +"/deploymentmanager:alpha/deploymentmanager.resources.list": list_resources +"/deploymentmanager:alpha/deploymentmanager.resources.list/deployment": deployment +"/deploymentmanager:alpha/deploymentmanager.resources.list/filter": filter +"/deploymentmanager:alpha/deploymentmanager.resources.list/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.resources.list/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.resources.list/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.resources.list/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.delete": delete_type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.delete/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.delete/typeProvider": type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.get": get_type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.get/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.get/typeProvider": type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.getType": get_type_provider_type +"/deploymentmanager:alpha/deploymentmanager.typeProviders.getType/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.getType/type": type +"/deploymentmanager:alpha/deploymentmanager.typeProviders.getType/typeProvider": type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.insert": insert_type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.insert/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.list": list_type_providers +"/deploymentmanager:alpha/deploymentmanager.typeProviders.list/filter": filter +"/deploymentmanager:alpha/deploymentmanager.typeProviders.list/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.typeProviders.list/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.typeProviders.list/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.typeProviders.list/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.listTypes": list_type_provider_types +"/deploymentmanager:alpha/deploymentmanager.typeProviders.listTypes/filter": filter +"/deploymentmanager:alpha/deploymentmanager.typeProviders.listTypes/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.typeProviders.listTypes/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.typeProviders.listTypes/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.typeProviders.listTypes/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.listTypes/typeProvider": type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.patch": patch_type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.patch/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.patch/typeProvider": type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.update": update_type_provider +"/deploymentmanager:alpha/deploymentmanager.typeProviders.update/project": project +"/deploymentmanager:alpha/deploymentmanager.typeProviders.update/typeProvider": type_provider +"/deploymentmanager:alpha/deploymentmanager.types.delete": delete_type +"/deploymentmanager:alpha/deploymentmanager.types.delete/project": project +"/deploymentmanager:alpha/deploymentmanager.types.delete/type": type +"/deploymentmanager:alpha/deploymentmanager.types.get": get_type +"/deploymentmanager:alpha/deploymentmanager.types.get/project": project +"/deploymentmanager:alpha/deploymentmanager.types.get/type": type +"/deploymentmanager:alpha/deploymentmanager.types.insert": insert_type +"/deploymentmanager:alpha/deploymentmanager.types.insert/project": project +"/deploymentmanager:alpha/deploymentmanager.types.list": list_types +"/deploymentmanager:alpha/deploymentmanager.types.list/filter": filter +"/deploymentmanager:alpha/deploymentmanager.types.list/maxResults": max_results +"/deploymentmanager:alpha/deploymentmanager.types.list/orderBy": order_by +"/deploymentmanager:alpha/deploymentmanager.types.list/pageToken": page_token +"/deploymentmanager:alpha/deploymentmanager.types.list/project": project +"/deploymentmanager:alpha/deploymentmanager.types.patch": patch_type +"/deploymentmanager:alpha/deploymentmanager.types.patch/project": project +"/deploymentmanager:alpha/deploymentmanager.types.patch/type": type +"/deploymentmanager:alpha/deploymentmanager.types.update": update_type +"/deploymentmanager:alpha/deploymentmanager.types.update/project": project +"/deploymentmanager:alpha/deploymentmanager.types.update/type": type +"/deploymentmanager:alpha/fields": fields +"/deploymentmanager:alpha/key": key +"/deploymentmanager:alpha/quotaUser": quota_user +"/deploymentmanager:alpha/userIp": user_ip "/deploymentmanager:v2/AuditConfig": audit_config "/deploymentmanager:v2/AuditConfig/auditLogConfigs": audit_log_configs "/deploymentmanager:v2/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config @@ -21110,6 +30828,458 @@ "/deploymentmanager:v2/key": key "/deploymentmanager:v2/quotaUser": quota_user "/deploymentmanager:v2/userIp": user_ip +"/deploymentmanager:v2beta/AuditConfig": audit_config +"/deploymentmanager:v2beta/AuditConfig/auditLogConfigs": audit_log_configs +"/deploymentmanager:v2beta/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config +"/deploymentmanager:v2beta/AuditConfig/exemptedMembers": exempted_members +"/deploymentmanager:v2beta/AuditConfig/exemptedMembers/exempted_member": exempted_member +"/deploymentmanager:v2beta/AuditConfig/service": service +"/deploymentmanager:v2beta/AuditLogConfig": audit_log_config +"/deploymentmanager:v2beta/AuditLogConfig/exemptedMembers": exempted_members +"/deploymentmanager:v2beta/AuditLogConfig/exemptedMembers/exempted_member": exempted_member +"/deploymentmanager:v2beta/AuditLogConfig/logType": log_type +"/deploymentmanager:v2beta/AuthorizationLoggingOptions": authorization_logging_options +"/deploymentmanager:v2beta/AuthorizationLoggingOptions/permissionType": permission_type +"/deploymentmanager:v2beta/BaseType": base_type +"/deploymentmanager:v2beta/BaseType/collectionOverrides": collection_overrides +"/deploymentmanager:v2beta/BaseType/collectionOverrides/collection_override": collection_override +"/deploymentmanager:v2beta/BaseType/credential": credential +"/deploymentmanager:v2beta/BaseType/descriptorUrl": descriptor_url +"/deploymentmanager:v2beta/BaseType/options": options +"/deploymentmanager:v2beta/BasicAuth": basic_auth +"/deploymentmanager:v2beta/BasicAuth/password": password +"/deploymentmanager:v2beta/BasicAuth/user": user +"/deploymentmanager:v2beta/Binding": binding +"/deploymentmanager:v2beta/Binding/condition": condition +"/deploymentmanager:v2beta/Binding/members": members +"/deploymentmanager:v2beta/Binding/members/member": member +"/deploymentmanager:v2beta/Binding/role": role +"/deploymentmanager:v2beta/CollectionOverride": collection_override +"/deploymentmanager:v2beta/CollectionOverride/collection": collection +"/deploymentmanager:v2beta/CollectionOverride/options": options +"/deploymentmanager:v2beta/CompositeType": composite_type +"/deploymentmanager:v2beta/CompositeType/description": description +"/deploymentmanager:v2beta/CompositeType/id": id +"/deploymentmanager:v2beta/CompositeType/insertTime": insert_time +"/deploymentmanager:v2beta/CompositeType/labels": labels +"/deploymentmanager:v2beta/CompositeType/labels/label": label +"/deploymentmanager:v2beta/CompositeType/name": name +"/deploymentmanager:v2beta/CompositeType/operation": operation +"/deploymentmanager:v2beta/CompositeType/selfLink": self_link +"/deploymentmanager:v2beta/CompositeType/status": status +"/deploymentmanager:v2beta/CompositeType/templateContents": template_contents +"/deploymentmanager:v2beta/CompositeTypeLabelEntry": composite_type_label_entry +"/deploymentmanager:v2beta/CompositeTypeLabelEntry/key": key +"/deploymentmanager:v2beta/CompositeTypeLabelEntry/value": value +"/deploymentmanager:v2beta/CompositeTypesListResponse": composite_types_list_response +"/deploymentmanager:v2beta/CompositeTypesListResponse/compositeTypes": composite_types +"/deploymentmanager:v2beta/CompositeTypesListResponse/compositeTypes/composite_type": composite_type +"/deploymentmanager:v2beta/CompositeTypesListResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/Condition": condition +"/deploymentmanager:v2beta/Condition/iam": iam +"/deploymentmanager:v2beta/Condition/op": op +"/deploymentmanager:v2beta/Condition/svc": svc +"/deploymentmanager:v2beta/Condition/sys": sys +"/deploymentmanager:v2beta/Condition/value": value +"/deploymentmanager:v2beta/Condition/values": values +"/deploymentmanager:v2beta/Condition/values/value": value +"/deploymentmanager:v2beta/ConfigFile": config_file +"/deploymentmanager:v2beta/ConfigFile/content": content +"/deploymentmanager:v2beta/Credential": credential +"/deploymentmanager:v2beta/Credential/basicAuth": basic_auth +"/deploymentmanager:v2beta/Deployment": deployment +"/deploymentmanager:v2beta/Deployment/description": description +"/deploymentmanager:v2beta/Deployment/fingerprint": fingerprint +"/deploymentmanager:v2beta/Deployment/id": id +"/deploymentmanager:v2beta/Deployment/insertTime": insert_time +"/deploymentmanager:v2beta/Deployment/labels": labels +"/deploymentmanager:v2beta/Deployment/labels/label": label +"/deploymentmanager:v2beta/Deployment/manifest": manifest +"/deploymentmanager:v2beta/Deployment/name": name +"/deploymentmanager:v2beta/Deployment/operation": operation +"/deploymentmanager:v2beta/Deployment/selfLink": self_link +"/deploymentmanager:v2beta/Deployment/target": target +"/deploymentmanager:v2beta/Deployment/update": update +"/deploymentmanager:v2beta/DeploymentLabelEntry": deployment_label_entry +"/deploymentmanager:v2beta/DeploymentLabelEntry/key": key +"/deploymentmanager:v2beta/DeploymentLabelEntry/value": value +"/deploymentmanager:v2beta/DeploymentUpdate": deployment_update +"/deploymentmanager:v2beta/DeploymentUpdate/description": description +"/deploymentmanager:v2beta/DeploymentUpdate/labels": labels +"/deploymentmanager:v2beta/DeploymentUpdate/labels/label": label +"/deploymentmanager:v2beta/DeploymentUpdate/manifest": manifest +"/deploymentmanager:v2beta/DeploymentUpdateLabelEntry": deployment_update_label_entry +"/deploymentmanager:v2beta/DeploymentUpdateLabelEntry/key": key +"/deploymentmanager:v2beta/DeploymentUpdateLabelEntry/value": value +"/deploymentmanager:v2beta/DeploymentsCancelPreviewRequest": deployments_cancel_preview_request +"/deploymentmanager:v2beta/DeploymentsCancelPreviewRequest/fingerprint": fingerprint +"/deploymentmanager:v2beta/DeploymentsListResponse": deployments_list_response +"/deploymentmanager:v2beta/DeploymentsListResponse/deployments": deployments +"/deploymentmanager:v2beta/DeploymentsListResponse/deployments/deployment": deployment +"/deploymentmanager:v2beta/DeploymentsListResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/DeploymentsStopRequest": deployments_stop_request +"/deploymentmanager:v2beta/DeploymentsStopRequest/fingerprint": fingerprint +"/deploymentmanager:v2beta/Expr": expr +"/deploymentmanager:v2beta/Expr/description": description +"/deploymentmanager:v2beta/Expr/expression": expression +"/deploymentmanager:v2beta/Expr/location": location +"/deploymentmanager:v2beta/Expr/title": title +"/deploymentmanager:v2beta/ImportFile": import_file +"/deploymentmanager:v2beta/ImportFile/content": content +"/deploymentmanager:v2beta/ImportFile/name": name +"/deploymentmanager:v2beta/InputMapping": input_mapping +"/deploymentmanager:v2beta/InputMapping/fieldName": field_name +"/deploymentmanager:v2beta/InputMapping/location": location +"/deploymentmanager:v2beta/InputMapping/methodMatch": method_match +"/deploymentmanager:v2beta/InputMapping/value": value +"/deploymentmanager:v2beta/LogConfig": log_config +"/deploymentmanager:v2beta/LogConfig/cloudAudit": cloud_audit +"/deploymentmanager:v2beta/LogConfig/counter": counter +"/deploymentmanager:v2beta/LogConfig/dataAccess": data_access +"/deploymentmanager:v2beta/LogConfigCloudAuditOptions": log_config_cloud_audit_options +"/deploymentmanager:v2beta/LogConfigCloudAuditOptions/authorizationLoggingOptions": authorization_logging_options +"/deploymentmanager:v2beta/LogConfigCloudAuditOptions/logName": log_name +"/deploymentmanager:v2beta/LogConfigCounterOptions": log_config_counter_options +"/deploymentmanager:v2beta/LogConfigCounterOptions/field": field +"/deploymentmanager:v2beta/LogConfigCounterOptions/metric": metric +"/deploymentmanager:v2beta/LogConfigDataAccessOptions": log_config_data_access_options +"/deploymentmanager:v2beta/LogConfigDataAccessOptions/logMode": log_mode +"/deploymentmanager:v2beta/Manifest": manifest +"/deploymentmanager:v2beta/Manifest/config": config +"/deploymentmanager:v2beta/Manifest/expandedConfig": expanded_config +"/deploymentmanager:v2beta/Manifest/id": id +"/deploymentmanager:v2beta/Manifest/imports": imports +"/deploymentmanager:v2beta/Manifest/imports/import": import +"/deploymentmanager:v2beta/Manifest/insertTime": insert_time +"/deploymentmanager:v2beta/Manifest/layout": layout +"/deploymentmanager:v2beta/Manifest/name": name +"/deploymentmanager:v2beta/Manifest/selfLink": self_link +"/deploymentmanager:v2beta/ManifestsListResponse": manifests_list_response +"/deploymentmanager:v2beta/ManifestsListResponse/manifests": manifests +"/deploymentmanager:v2beta/ManifestsListResponse/manifests/manifest": manifest +"/deploymentmanager:v2beta/ManifestsListResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/Operation": operation +"/deploymentmanager:v2beta/Operation/clientOperationId": client_operation_id +"/deploymentmanager:v2beta/Operation/creationTimestamp": creation_timestamp +"/deploymentmanager:v2beta/Operation/description": description +"/deploymentmanager:v2beta/Operation/endTime": end_time +"/deploymentmanager:v2beta/Operation/error": error +"/deploymentmanager:v2beta/Operation/error/errors": errors +"/deploymentmanager:v2beta/Operation/error/errors/error": error +"/deploymentmanager:v2beta/Operation/error/errors/error/code": code +"/deploymentmanager:v2beta/Operation/error/errors/error/location": location +"/deploymentmanager:v2beta/Operation/error/errors/error/message": message +"/deploymentmanager:v2beta/Operation/httpErrorMessage": http_error_message +"/deploymentmanager:v2beta/Operation/httpErrorStatusCode": http_error_status_code +"/deploymentmanager:v2beta/Operation/id": id +"/deploymentmanager:v2beta/Operation/insertTime": insert_time +"/deploymentmanager:v2beta/Operation/kind": kind +"/deploymentmanager:v2beta/Operation/name": name +"/deploymentmanager:v2beta/Operation/operationType": operation_type +"/deploymentmanager:v2beta/Operation/progress": progress +"/deploymentmanager:v2beta/Operation/region": region +"/deploymentmanager:v2beta/Operation/selfLink": self_link +"/deploymentmanager:v2beta/Operation/startTime": start_time +"/deploymentmanager:v2beta/Operation/status": status +"/deploymentmanager:v2beta/Operation/statusMessage": status_message +"/deploymentmanager:v2beta/Operation/targetId": target_id +"/deploymentmanager:v2beta/Operation/targetLink": target_link +"/deploymentmanager:v2beta/Operation/user": user +"/deploymentmanager:v2beta/Operation/warnings": warnings +"/deploymentmanager:v2beta/Operation/warnings/warning": warning +"/deploymentmanager:v2beta/Operation/warnings/warning/code": code +"/deploymentmanager:v2beta/Operation/warnings/warning/data": data +"/deploymentmanager:v2beta/Operation/warnings/warning/data/datum": datum +"/deploymentmanager:v2beta/Operation/warnings/warning/data/datum/key": key +"/deploymentmanager:v2beta/Operation/warnings/warning/data/datum/value": value +"/deploymentmanager:v2beta/Operation/warnings/warning/message": message +"/deploymentmanager:v2beta/Operation/zone": zone +"/deploymentmanager:v2beta/OperationsListResponse": operations_list_response +"/deploymentmanager:v2beta/OperationsListResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/OperationsListResponse/operations": operations +"/deploymentmanager:v2beta/OperationsListResponse/operations/operation": operation +"/deploymentmanager:v2beta/Options": options +"/deploymentmanager:v2beta/Options/inputMappings": input_mappings +"/deploymentmanager:v2beta/Options/inputMappings/input_mapping": input_mapping +"/deploymentmanager:v2beta/Options/validationOptions": validation_options +"/deploymentmanager:v2beta/Options/virtualProperties": virtual_properties +"/deploymentmanager:v2beta/Policy": policy +"/deploymentmanager:v2beta/Policy/auditConfigs": audit_configs +"/deploymentmanager:v2beta/Policy/auditConfigs/audit_config": audit_config +"/deploymentmanager:v2beta/Policy/bindings": bindings +"/deploymentmanager:v2beta/Policy/bindings/binding": binding +"/deploymentmanager:v2beta/Policy/etag": etag +"/deploymentmanager:v2beta/Policy/iamOwned": iam_owned +"/deploymentmanager:v2beta/Policy/rules": rules +"/deploymentmanager:v2beta/Policy/rules/rule": rule +"/deploymentmanager:v2beta/Policy/version": version +"/deploymentmanager:v2beta/Resource": resource +"/deploymentmanager:v2beta/Resource/accessControl": access_control +"/deploymentmanager:v2beta/Resource/finalProperties": final_properties +"/deploymentmanager:v2beta/Resource/id": id +"/deploymentmanager:v2beta/Resource/insertTime": insert_time +"/deploymentmanager:v2beta/Resource/manifest": manifest +"/deploymentmanager:v2beta/Resource/name": name +"/deploymentmanager:v2beta/Resource/properties": properties +"/deploymentmanager:v2beta/Resource/type": type +"/deploymentmanager:v2beta/Resource/update": update +"/deploymentmanager:v2beta/Resource/updateTime": update_time +"/deploymentmanager:v2beta/Resource/url": url +"/deploymentmanager:v2beta/Resource/warnings": warnings +"/deploymentmanager:v2beta/Resource/warnings/warning": warning +"/deploymentmanager:v2beta/Resource/warnings/warning/code": code +"/deploymentmanager:v2beta/Resource/warnings/warning/data": data +"/deploymentmanager:v2beta/Resource/warnings/warning/data/datum": datum +"/deploymentmanager:v2beta/Resource/warnings/warning/data/datum/key": key +"/deploymentmanager:v2beta/Resource/warnings/warning/data/datum/value": value +"/deploymentmanager:v2beta/Resource/warnings/warning/message": message +"/deploymentmanager:v2beta/ResourceAccessControl": resource_access_control +"/deploymentmanager:v2beta/ResourceAccessControl/gcpIamPolicy": gcp_iam_policy +"/deploymentmanager:v2beta/ResourceUpdate": resource_update +"/deploymentmanager:v2beta/ResourceUpdate/accessControl": access_control +"/deploymentmanager:v2beta/ResourceUpdate/error": error +"/deploymentmanager:v2beta/ResourceUpdate/error/errors": errors +"/deploymentmanager:v2beta/ResourceUpdate/error/errors/error": error +"/deploymentmanager:v2beta/ResourceUpdate/error/errors/error/code": code +"/deploymentmanager:v2beta/ResourceUpdate/error/errors/error/location": location +"/deploymentmanager:v2beta/ResourceUpdate/error/errors/error/message": message +"/deploymentmanager:v2beta/ResourceUpdate/finalProperties": final_properties +"/deploymentmanager:v2beta/ResourceUpdate/intent": intent +"/deploymentmanager:v2beta/ResourceUpdate/manifest": manifest +"/deploymentmanager:v2beta/ResourceUpdate/properties": properties +"/deploymentmanager:v2beta/ResourceUpdate/state": state +"/deploymentmanager:v2beta/ResourceUpdate/warnings": warnings +"/deploymentmanager:v2beta/ResourceUpdate/warnings/warning": warning +"/deploymentmanager:v2beta/ResourceUpdate/warnings/warning/code": code +"/deploymentmanager:v2beta/ResourceUpdate/warnings/warning/data": data +"/deploymentmanager:v2beta/ResourceUpdate/warnings/warning/data/datum": datum +"/deploymentmanager:v2beta/ResourceUpdate/warnings/warning/data/datum/key": key +"/deploymentmanager:v2beta/ResourceUpdate/warnings/warning/data/datum/value": value +"/deploymentmanager:v2beta/ResourceUpdate/warnings/warning/message": message +"/deploymentmanager:v2beta/ResourcesListResponse": resources_list_response +"/deploymentmanager:v2beta/ResourcesListResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/ResourcesListResponse/resources": resources +"/deploymentmanager:v2beta/ResourcesListResponse/resources/resource": resource +"/deploymentmanager:v2beta/Rule": rule +"/deploymentmanager:v2beta/Rule/action": action +"/deploymentmanager:v2beta/Rule/conditions": conditions +"/deploymentmanager:v2beta/Rule/conditions/condition": condition +"/deploymentmanager:v2beta/Rule/description": description +"/deploymentmanager:v2beta/Rule/ins": ins +"/deploymentmanager:v2beta/Rule/ins/in": in +"/deploymentmanager:v2beta/Rule/logConfigs": log_configs +"/deploymentmanager:v2beta/Rule/logConfigs/log_config": log_config +"/deploymentmanager:v2beta/Rule/notIns": not_ins +"/deploymentmanager:v2beta/Rule/notIns/not_in": not_in +"/deploymentmanager:v2beta/Rule/permissions": permissions +"/deploymentmanager:v2beta/Rule/permissions/permission": permission +"/deploymentmanager:v2beta/TargetConfiguration": target_configuration +"/deploymentmanager:v2beta/TargetConfiguration/config": config +"/deploymentmanager:v2beta/TargetConfiguration/imports": imports +"/deploymentmanager:v2beta/TargetConfiguration/imports/import": import +"/deploymentmanager:v2beta/TemplateContents": template_contents +"/deploymentmanager:v2beta/TemplateContents/imports": imports +"/deploymentmanager:v2beta/TemplateContents/imports/import": import +"/deploymentmanager:v2beta/TemplateContents/interpreter": interpreter +"/deploymentmanager:v2beta/TemplateContents/schema": schema +"/deploymentmanager:v2beta/TemplateContents/template": template +"/deploymentmanager:v2beta/TestPermissionsRequest": test_permissions_request +"/deploymentmanager:v2beta/TestPermissionsRequest/permissions": permissions +"/deploymentmanager:v2beta/TestPermissionsRequest/permissions/permission": permission +"/deploymentmanager:v2beta/TestPermissionsResponse": test_permissions_response +"/deploymentmanager:v2beta/TestPermissionsResponse/permissions": permissions +"/deploymentmanager:v2beta/TestPermissionsResponse/permissions/permission": permission +"/deploymentmanager:v2beta/Type": type +"/deploymentmanager:v2beta/Type/base": base +"/deploymentmanager:v2beta/Type/description": description +"/deploymentmanager:v2beta/Type/id": id +"/deploymentmanager:v2beta/Type/insertTime": insert_time +"/deploymentmanager:v2beta/Type/labels": labels +"/deploymentmanager:v2beta/Type/labels/label": label +"/deploymentmanager:v2beta/Type/name": name +"/deploymentmanager:v2beta/Type/operation": operation +"/deploymentmanager:v2beta/Type/selfLink": self_link +"/deploymentmanager:v2beta/TypeInfo": type_info +"/deploymentmanager:v2beta/TypeInfo/description": description +"/deploymentmanager:v2beta/TypeInfo/documentationLink": documentation_link +"/deploymentmanager:v2beta/TypeInfo/kind": kind +"/deploymentmanager:v2beta/TypeInfo/name": name +"/deploymentmanager:v2beta/TypeInfo/schema": schema +"/deploymentmanager:v2beta/TypeInfo/selfLink": self_link +"/deploymentmanager:v2beta/TypeInfo/title": title +"/deploymentmanager:v2beta/TypeInfoSchemaInfo": type_info_schema_info +"/deploymentmanager:v2beta/TypeInfoSchemaInfo/input": input +"/deploymentmanager:v2beta/TypeInfoSchemaInfo/output": output +"/deploymentmanager:v2beta/TypeLabelEntry": type_label_entry +"/deploymentmanager:v2beta/TypeLabelEntry/key": key +"/deploymentmanager:v2beta/TypeLabelEntry/value": value +"/deploymentmanager:v2beta/TypeProvider": type_provider +"/deploymentmanager:v2beta/TypeProvider/collectionOverrides": collection_overrides +"/deploymentmanager:v2beta/TypeProvider/collectionOverrides/collection_override": collection_override +"/deploymentmanager:v2beta/TypeProvider/credential": credential +"/deploymentmanager:v2beta/TypeProvider/description": description +"/deploymentmanager:v2beta/TypeProvider/descriptorUrl": descriptor_url +"/deploymentmanager:v2beta/TypeProvider/id": id +"/deploymentmanager:v2beta/TypeProvider/insertTime": insert_time +"/deploymentmanager:v2beta/TypeProvider/labels": labels +"/deploymentmanager:v2beta/TypeProvider/labels/label": label +"/deploymentmanager:v2beta/TypeProvider/name": name +"/deploymentmanager:v2beta/TypeProvider/operation": operation +"/deploymentmanager:v2beta/TypeProvider/options": options +"/deploymentmanager:v2beta/TypeProvider/selfLink": self_link +"/deploymentmanager:v2beta/TypeProviderLabelEntry": type_provider_label_entry +"/deploymentmanager:v2beta/TypeProviderLabelEntry/key": key +"/deploymentmanager:v2beta/TypeProviderLabelEntry/value": value +"/deploymentmanager:v2beta/TypeProvidersListResponse": type_providers_list_response +"/deploymentmanager:v2beta/TypeProvidersListResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/TypeProvidersListResponse/typeProviders": type_providers +"/deploymentmanager:v2beta/TypeProvidersListResponse/typeProviders/type_provider": type_provider +"/deploymentmanager:v2beta/TypeProvidersListTypesResponse": type_providers_list_types_response +"/deploymentmanager:v2beta/TypeProvidersListTypesResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/TypeProvidersListTypesResponse/types": types +"/deploymentmanager:v2beta/TypeProvidersListTypesResponse/types/type": type +"/deploymentmanager:v2beta/TypesListResponse": types_list_response +"/deploymentmanager:v2beta/TypesListResponse/nextPageToken": next_page_token +"/deploymentmanager:v2beta/TypesListResponse/types": types +"/deploymentmanager:v2beta/TypesListResponse/types/type": type +"/deploymentmanager:v2beta/ValidationOptions": validation_options +"/deploymentmanager:v2beta/ValidationOptions/schemaValidation": schema_validation +"/deploymentmanager:v2beta/ValidationOptions/undeclaredProperties": undeclared_properties +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.delete": delete_composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.delete/compositeType": composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.delete/project": project +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.get": get_composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.get/compositeType": composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.get/project": project +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.insert": insert_composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.insert/project": project +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.list": list_composite_types +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.list/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.list/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.list/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.list/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.list/project": project +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.patch": patch_composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.patch/compositeType": composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.patch/project": project +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.update": update_composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.update/compositeType": composite_type +"/deploymentmanager:v2beta/deploymentmanager.compositeTypes.update/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.cancelPreview": cancel_deployment_preview +"/deploymentmanager:v2beta/deploymentmanager.deployments.cancelPreview/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.cancelPreview/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.delete": delete_deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.delete/deletePolicy": delete_policy +"/deploymentmanager:v2beta/deploymentmanager.deployments.delete/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.delete/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.get": get_deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.get/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.get/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.getIamPolicy": get_deployment_iam_policy +"/deploymentmanager:v2beta/deploymentmanager.deployments.getIamPolicy/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.getIamPolicy/resource": resource +"/deploymentmanager:v2beta/deploymentmanager.deployments.insert": insert_deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.insert/preview": preview +"/deploymentmanager:v2beta/deploymentmanager.deployments.insert/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.list": list_deployments +"/deploymentmanager:v2beta/deploymentmanager.deployments.list/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.deployments.list/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.deployments.list/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.deployments.list/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.deployments.list/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.patch": patch_deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.patch/createPolicy": create_policy +"/deploymentmanager:v2beta/deploymentmanager.deployments.patch/deletePolicy": delete_policy +"/deploymentmanager:v2beta/deploymentmanager.deployments.patch/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.patch/preview": preview +"/deploymentmanager:v2beta/deploymentmanager.deployments.patch/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.setIamPolicy": set_deployment_iam_policy +"/deploymentmanager:v2beta/deploymentmanager.deployments.setIamPolicy/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.setIamPolicy/resource": resource +"/deploymentmanager:v2beta/deploymentmanager.deployments.stop": stop_deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.stop/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.stop/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.testIamPermissions": test_deployment_iam_permissions +"/deploymentmanager:v2beta/deploymentmanager.deployments.testIamPermissions/project": project +"/deploymentmanager:v2beta/deploymentmanager.deployments.testIamPermissions/resource": resource +"/deploymentmanager:v2beta/deploymentmanager.deployments.update": update_deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.update/createPolicy": create_policy +"/deploymentmanager:v2beta/deploymentmanager.deployments.update/deletePolicy": delete_policy +"/deploymentmanager:v2beta/deploymentmanager.deployments.update/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.deployments.update/preview": preview +"/deploymentmanager:v2beta/deploymentmanager.deployments.update/project": project +"/deploymentmanager:v2beta/deploymentmanager.manifests.get": get_manifest +"/deploymentmanager:v2beta/deploymentmanager.manifests.get/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.manifests.get/manifest": manifest +"/deploymentmanager:v2beta/deploymentmanager.manifests.get/project": project +"/deploymentmanager:v2beta/deploymentmanager.manifests.list": list_manifests +"/deploymentmanager:v2beta/deploymentmanager.manifests.list/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.manifests.list/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.manifests.list/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.manifests.list/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.manifests.list/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.manifests.list/project": project +"/deploymentmanager:v2beta/deploymentmanager.operations.get": get_operation +"/deploymentmanager:v2beta/deploymentmanager.operations.get/operation": operation +"/deploymentmanager:v2beta/deploymentmanager.operations.get/project": project +"/deploymentmanager:v2beta/deploymentmanager.operations.list": list_operations +"/deploymentmanager:v2beta/deploymentmanager.operations.list/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.operations.list/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.operations.list/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.operations.list/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.operations.list/project": project +"/deploymentmanager:v2beta/deploymentmanager.resources.get": get_resource +"/deploymentmanager:v2beta/deploymentmanager.resources.get/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.resources.get/project": project +"/deploymentmanager:v2beta/deploymentmanager.resources.get/resource": resource +"/deploymentmanager:v2beta/deploymentmanager.resources.list": list_resources +"/deploymentmanager:v2beta/deploymentmanager.resources.list/deployment": deployment +"/deploymentmanager:v2beta/deploymentmanager.resources.list/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.resources.list/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.resources.list/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.resources.list/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.resources.list/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.delete": delete_type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.delete/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.delete/typeProvider": type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.get": get_type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.get/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.get/typeProvider": type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.getType": get_type_provider_type +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.getType/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.getType/type": type +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.getType/typeProvider": type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.insert": insert_type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.insert/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.list": list_type_providers +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.list/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.list/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.list/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.list/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.list/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.listTypes": list_type_provider_types +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.listTypes/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.listTypes/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.listTypes/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.listTypes/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.listTypes/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.listTypes/typeProvider": type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.patch": patch_type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.patch/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.patch/typeProvider": type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.update": update_type_provider +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.update/project": project +"/deploymentmanager:v2beta/deploymentmanager.typeProviders.update/typeProvider": type_provider +"/deploymentmanager:v2beta/deploymentmanager.types.list": list_types +"/deploymentmanager:v2beta/deploymentmanager.types.list/filter": filter +"/deploymentmanager:v2beta/deploymentmanager.types.list/maxResults": max_results +"/deploymentmanager:v2beta/deploymentmanager.types.list/orderBy": order_by +"/deploymentmanager:v2beta/deploymentmanager.types.list/pageToken": page_token +"/deploymentmanager:v2beta/deploymentmanager.types.list/project": project +"/deploymentmanager:v2beta/fields": fields +"/deploymentmanager:v2beta/key": key +"/deploymentmanager:v2beta/quotaUser": quota_user +"/deploymentmanager:v2beta/userIp": user_ip "/deploymentmanager:v2beta1/DeploymentsListResponse": list_deployments_response "/deploymentmanager:v2beta1/ManifestsListResponse": list_manifests_response "/deploymentmanager:v2beta1/OperationsListResponse": list_operations_response @@ -28826,6 +38996,252 @@ "/fitness:v1/key": key "/fitness:v1/quotaUser": quota_user "/fitness:v1/userIp": user_ip +"/fusiontables:v1/Bucket": bucket +"/fusiontables:v1/Bucket/color": color +"/fusiontables:v1/Bucket/icon": icon +"/fusiontables:v1/Bucket/max": max +"/fusiontables:v1/Bucket/min": min +"/fusiontables:v1/Bucket/opacity": opacity +"/fusiontables:v1/Bucket/weight": weight +"/fusiontables:v1/Column": column +"/fusiontables:v1/Column/baseColumn": base_column +"/fusiontables:v1/Column/baseColumn/columnId": column_id +"/fusiontables:v1/Column/baseColumn/tableIndex": table_index +"/fusiontables:v1/Column/columnId": column_id +"/fusiontables:v1/Column/description": description +"/fusiontables:v1/Column/graph_predicate": graph_predicate +"/fusiontables:v1/Column/kind": kind +"/fusiontables:v1/Column/name": name +"/fusiontables:v1/Column/type": type +"/fusiontables:v1/ColumnList": column_list +"/fusiontables:v1/ColumnList/items": items +"/fusiontables:v1/ColumnList/items/item": item +"/fusiontables:v1/ColumnList/kind": kind +"/fusiontables:v1/ColumnList/nextPageToken": next_page_token +"/fusiontables:v1/ColumnList/totalItems": total_items +"/fusiontables:v1/Geometry": geometry +"/fusiontables:v1/Geometry/geometries": geometries +"/fusiontables:v1/Geometry/geometries/geometry": geometry +"/fusiontables:v1/Geometry/geometry": geometry +"/fusiontables:v1/Geometry/type": type +"/fusiontables:v1/Import": import +"/fusiontables:v1/Import/kind": kind +"/fusiontables:v1/Import/numRowsReceived": num_rows_received +"/fusiontables:v1/Line": line +"/fusiontables:v1/Line/coordinates": coordinates +"/fusiontables:v1/Line/coordinates/coordinate": coordinate +"/fusiontables:v1/Line/coordinates/coordinate/coordinate": coordinate +"/fusiontables:v1/Line/type": type +"/fusiontables:v1/LineStyle": line_style +"/fusiontables:v1/LineStyle/strokeColor": stroke_color +"/fusiontables:v1/LineStyle/strokeColorStyler": stroke_color_styler +"/fusiontables:v1/LineStyle/strokeOpacity": stroke_opacity +"/fusiontables:v1/LineStyle/strokeWeight": stroke_weight +"/fusiontables:v1/LineStyle/strokeWeightStyler": stroke_weight_styler +"/fusiontables:v1/Point": point +"/fusiontables:v1/Point/coordinates": coordinates +"/fusiontables:v1/Point/coordinates/coordinate": coordinate +"/fusiontables:v1/Point/type": type +"/fusiontables:v1/PointStyle": point_style +"/fusiontables:v1/PointStyle/iconName": icon_name +"/fusiontables:v1/PointStyle/iconStyler": icon_styler +"/fusiontables:v1/Polygon": polygon +"/fusiontables:v1/Polygon/coordinates": coordinates +"/fusiontables:v1/Polygon/coordinates/coordinate": coordinate +"/fusiontables:v1/Polygon/coordinates/coordinate/coordinate": coordinate +"/fusiontables:v1/Polygon/coordinates/coordinate/coordinate/coordinate": coordinate +"/fusiontables:v1/Polygon/type": type +"/fusiontables:v1/PolygonStyle": polygon_style +"/fusiontables:v1/PolygonStyle/fillColor": fill_color +"/fusiontables:v1/PolygonStyle/fillColorStyler": fill_color_styler +"/fusiontables:v1/PolygonStyle/fillOpacity": fill_opacity +"/fusiontables:v1/PolygonStyle/strokeColor": stroke_color +"/fusiontables:v1/PolygonStyle/strokeColorStyler": stroke_color_styler +"/fusiontables:v1/PolygonStyle/strokeOpacity": stroke_opacity +"/fusiontables:v1/PolygonStyle/strokeWeight": stroke_weight +"/fusiontables:v1/PolygonStyle/strokeWeightStyler": stroke_weight_styler +"/fusiontables:v1/Sqlresponse": sqlresponse +"/fusiontables:v1/Sqlresponse/columns": columns +"/fusiontables:v1/Sqlresponse/columns/column": column +"/fusiontables:v1/Sqlresponse/kind": kind +"/fusiontables:v1/Sqlresponse/rows": rows +"/fusiontables:v1/Sqlresponse/rows/row": row +"/fusiontables:v1/Sqlresponse/rows/row/row": row +"/fusiontables:v1/StyleFunction": style_function +"/fusiontables:v1/StyleFunction/buckets": buckets +"/fusiontables:v1/StyleFunction/buckets/bucket": bucket +"/fusiontables:v1/StyleFunction/columnName": column_name +"/fusiontables:v1/StyleFunction/gradient": gradient +"/fusiontables:v1/StyleFunction/gradient/colors": colors +"/fusiontables:v1/StyleFunction/gradient/colors/color": color +"/fusiontables:v1/StyleFunction/gradient/colors/color/color": color +"/fusiontables:v1/StyleFunction/gradient/colors/color/opacity": opacity +"/fusiontables:v1/StyleFunction/gradient/max": max +"/fusiontables:v1/StyleFunction/gradient/min": min +"/fusiontables:v1/StyleFunction/kind": kind +"/fusiontables:v1/StyleSetting": style_setting +"/fusiontables:v1/StyleSetting/kind": kind +"/fusiontables:v1/StyleSetting/markerOptions": marker_options +"/fusiontables:v1/StyleSetting/name": name +"/fusiontables:v1/StyleSetting/polygonOptions": polygon_options +"/fusiontables:v1/StyleSetting/polylineOptions": polyline_options +"/fusiontables:v1/StyleSetting/styleId": style_id +"/fusiontables:v1/StyleSetting/tableId": table_id +"/fusiontables:v1/StyleSettingList": style_setting_list +"/fusiontables:v1/StyleSettingList/items": items +"/fusiontables:v1/StyleSettingList/items/item": item +"/fusiontables:v1/StyleSettingList/kind": kind +"/fusiontables:v1/StyleSettingList/nextPageToken": next_page_token +"/fusiontables:v1/StyleSettingList/totalItems": total_items +"/fusiontables:v1/Table": table +"/fusiontables:v1/Table/attribution": attribution +"/fusiontables:v1/Table/attributionLink": attribution_link +"/fusiontables:v1/Table/baseTableIds": base_table_ids +"/fusiontables:v1/Table/baseTableIds/base_table_id": base_table_id +"/fusiontables:v1/Table/columns": columns +"/fusiontables:v1/Table/columns/column": column +"/fusiontables:v1/Table/description": description +"/fusiontables:v1/Table/isExportable": is_exportable +"/fusiontables:v1/Table/kind": kind +"/fusiontables:v1/Table/name": name +"/fusiontables:v1/Table/sql": sql +"/fusiontables:v1/Table/tableId": table_id +"/fusiontables:v1/TableList": table_list +"/fusiontables:v1/TableList/items": items +"/fusiontables:v1/TableList/items/item": item +"/fusiontables:v1/TableList/kind": kind +"/fusiontables:v1/TableList/nextPageToken": next_page_token +"/fusiontables:v1/Task": task +"/fusiontables:v1/Task/kind": kind +"/fusiontables:v1/Task/progress": progress +"/fusiontables:v1/Task/started": started +"/fusiontables:v1/Task/taskId": task_id +"/fusiontables:v1/Task/type": type +"/fusiontables:v1/TaskList": task_list +"/fusiontables:v1/TaskList/items": items +"/fusiontables:v1/TaskList/items/item": item +"/fusiontables:v1/TaskList/kind": kind +"/fusiontables:v1/TaskList/nextPageToken": next_page_token +"/fusiontables:v1/TaskList/totalItems": total_items +"/fusiontables:v1/Template": template +"/fusiontables:v1/Template/automaticColumnNames": automatic_column_names +"/fusiontables:v1/Template/automaticColumnNames/automatic_column_name": automatic_column_name +"/fusiontables:v1/Template/body": body +"/fusiontables:v1/Template/kind": kind +"/fusiontables:v1/Template/name": name +"/fusiontables:v1/Template/tableId": table_id +"/fusiontables:v1/Template/templateId": template_id +"/fusiontables:v1/TemplateList": template_list +"/fusiontables:v1/TemplateList/items": items +"/fusiontables:v1/TemplateList/items/item": item +"/fusiontables:v1/TemplateList/kind": kind +"/fusiontables:v1/TemplateList/nextPageToken": next_page_token +"/fusiontables:v1/TemplateList/totalItems": total_items +"/fusiontables:v1/fields": fields +"/fusiontables:v1/fusiontables.column.delete": delete_column +"/fusiontables:v1/fusiontables.column.delete/columnId": column_id +"/fusiontables:v1/fusiontables.column.delete/tableId": table_id +"/fusiontables:v1/fusiontables.column.get": get_column +"/fusiontables:v1/fusiontables.column.get/columnId": column_id +"/fusiontables:v1/fusiontables.column.get/tableId": table_id +"/fusiontables:v1/fusiontables.column.insert": insert_column +"/fusiontables:v1/fusiontables.column.insert/tableId": table_id +"/fusiontables:v1/fusiontables.column.list": list_columns +"/fusiontables:v1/fusiontables.column.list/maxResults": max_results +"/fusiontables:v1/fusiontables.column.list/pageToken": page_token +"/fusiontables:v1/fusiontables.column.list/tableId": table_id +"/fusiontables:v1/fusiontables.column.patch": patch_column +"/fusiontables:v1/fusiontables.column.patch/columnId": column_id +"/fusiontables:v1/fusiontables.column.patch/tableId": table_id +"/fusiontables:v1/fusiontables.column.update": update_column +"/fusiontables:v1/fusiontables.column.update/columnId": column_id +"/fusiontables:v1/fusiontables.column.update/tableId": table_id +"/fusiontables:v1/fusiontables.query.sql": sql_query +"/fusiontables:v1/fusiontables.query.sql/hdrs": hdrs +"/fusiontables:v1/fusiontables.query.sql/sql": sql +"/fusiontables:v1/fusiontables.query.sql/typed": typed +"/fusiontables:v1/fusiontables.query.sqlGet": sql_query_get +"/fusiontables:v1/fusiontables.query.sqlGet/hdrs": hdrs +"/fusiontables:v1/fusiontables.query.sqlGet/sql": sql +"/fusiontables:v1/fusiontables.query.sqlGet/typed": typed +"/fusiontables:v1/fusiontables.style.delete": delete_style +"/fusiontables:v1/fusiontables.style.delete/styleId": style_id +"/fusiontables:v1/fusiontables.style.delete/tableId": table_id +"/fusiontables:v1/fusiontables.style.get": get_style +"/fusiontables:v1/fusiontables.style.get/styleId": style_id +"/fusiontables:v1/fusiontables.style.get/tableId": table_id +"/fusiontables:v1/fusiontables.style.insert": insert_style +"/fusiontables:v1/fusiontables.style.insert/tableId": table_id +"/fusiontables:v1/fusiontables.style.list": list_styles +"/fusiontables:v1/fusiontables.style.list/maxResults": max_results +"/fusiontables:v1/fusiontables.style.list/pageToken": page_token +"/fusiontables:v1/fusiontables.style.list/tableId": table_id +"/fusiontables:v1/fusiontables.style.patch": patch_style +"/fusiontables:v1/fusiontables.style.patch/styleId": style_id +"/fusiontables:v1/fusiontables.style.patch/tableId": table_id +"/fusiontables:v1/fusiontables.style.update": update_style +"/fusiontables:v1/fusiontables.style.update/styleId": style_id +"/fusiontables:v1/fusiontables.style.update/tableId": table_id +"/fusiontables:v1/fusiontables.table.copy": copy_table +"/fusiontables:v1/fusiontables.table.copy/copyPresentation": copy_presentation +"/fusiontables:v1/fusiontables.table.copy/tableId": table_id +"/fusiontables:v1/fusiontables.table.delete": delete_table +"/fusiontables:v1/fusiontables.table.delete/tableId": table_id +"/fusiontables:v1/fusiontables.table.get": get_table +"/fusiontables:v1/fusiontables.table.get/tableId": table_id +"/fusiontables:v1/fusiontables.table.importRows": import_table_rows +"/fusiontables:v1/fusiontables.table.importRows/delimiter": delimiter +"/fusiontables:v1/fusiontables.table.importRows/encoding": encoding +"/fusiontables:v1/fusiontables.table.importRows/endLine": end_line +"/fusiontables:v1/fusiontables.table.importRows/isStrict": is_strict +"/fusiontables:v1/fusiontables.table.importRows/startLine": start_line +"/fusiontables:v1/fusiontables.table.importRows/tableId": table_id +"/fusiontables:v1/fusiontables.table.importTable": import_table_table +"/fusiontables:v1/fusiontables.table.importTable/delimiter": delimiter +"/fusiontables:v1/fusiontables.table.importTable/encoding": encoding +"/fusiontables:v1/fusiontables.table.importTable/name": name +"/fusiontables:v1/fusiontables.table.insert": insert_table +"/fusiontables:v1/fusiontables.table.list": list_tables +"/fusiontables:v1/fusiontables.table.list/maxResults": max_results +"/fusiontables:v1/fusiontables.table.list/pageToken": page_token +"/fusiontables:v1/fusiontables.table.patch": patch_table +"/fusiontables:v1/fusiontables.table.patch/replaceViewDefinition": replace_view_definition +"/fusiontables:v1/fusiontables.table.patch/tableId": table_id +"/fusiontables:v1/fusiontables.table.update": update_table +"/fusiontables:v1/fusiontables.table.update/replaceViewDefinition": replace_view_definition +"/fusiontables:v1/fusiontables.table.update/tableId": table_id +"/fusiontables:v1/fusiontables.task.delete": delete_task +"/fusiontables:v1/fusiontables.task.delete/tableId": table_id +"/fusiontables:v1/fusiontables.task.delete/taskId": task_id +"/fusiontables:v1/fusiontables.task.get": get_task +"/fusiontables:v1/fusiontables.task.get/tableId": table_id +"/fusiontables:v1/fusiontables.task.get/taskId": task_id +"/fusiontables:v1/fusiontables.task.list": list_tasks +"/fusiontables:v1/fusiontables.task.list/maxResults": max_results +"/fusiontables:v1/fusiontables.task.list/pageToken": page_token +"/fusiontables:v1/fusiontables.task.list/startIndex": start_index +"/fusiontables:v1/fusiontables.task.list/tableId": table_id +"/fusiontables:v1/fusiontables.template.delete": delete_template +"/fusiontables:v1/fusiontables.template.delete/tableId": table_id +"/fusiontables:v1/fusiontables.template.delete/templateId": template_id +"/fusiontables:v1/fusiontables.template.get": get_template +"/fusiontables:v1/fusiontables.template.get/tableId": table_id +"/fusiontables:v1/fusiontables.template.get/templateId": template_id +"/fusiontables:v1/fusiontables.template.insert": insert_template +"/fusiontables:v1/fusiontables.template.insert/tableId": table_id +"/fusiontables:v1/fusiontables.template.list": list_templates +"/fusiontables:v1/fusiontables.template.list/maxResults": max_results +"/fusiontables:v1/fusiontables.template.list/pageToken": page_token +"/fusiontables:v1/fusiontables.template.list/tableId": table_id +"/fusiontables:v1/fusiontables.template.patch": patch_template +"/fusiontables:v1/fusiontables.template.patch/tableId": table_id +"/fusiontables:v1/fusiontables.template.patch/templateId": template_id +"/fusiontables:v1/fusiontables.template.update": update_template +"/fusiontables:v1/fusiontables.template.update/tableId": table_id +"/fusiontables:v1/fusiontables.template.update/templateId": template_id +"/fusiontables:v1/key": key +"/fusiontables:v1/quotaUser": quota_user +"/fusiontables:v1/userIp": user_ip "/fusiontables:v2/Bucket": bucket "/fusiontables:v2/Bucket/color": color "/fusiontables:v2/Bucket/icon": icon @@ -30750,6 +41166,178 @@ "/genomics:v1/genomics.variantsets.search": search_variant_sets "/genomics:v1/key": key "/genomics:v1/quotaUser": quota_user +"/genomics:v1alpha2/CancelOperationRequest": cancel_operation_request +"/genomics:v1alpha2/ComputeEngine": compute_engine +"/genomics:v1alpha2/ComputeEngine/diskNames": disk_names +"/genomics:v1alpha2/ComputeEngine/diskNames/disk_name": disk_name +"/genomics:v1alpha2/ComputeEngine/instanceName": instance_name +"/genomics:v1alpha2/ComputeEngine/machineType": machine_type +"/genomics:v1alpha2/ComputeEngine/zone": zone +"/genomics:v1alpha2/ControllerConfig": controller_config +"/genomics:v1alpha2/ControllerConfig/cmd": cmd +"/genomics:v1alpha2/ControllerConfig/disks": disks +"/genomics:v1alpha2/ControllerConfig/disks/disk": disk +"/genomics:v1alpha2/ControllerConfig/gcsLogPath": gcs_log_path +"/genomics:v1alpha2/ControllerConfig/gcsSinks": gcs_sinks +"/genomics:v1alpha2/ControllerConfig/gcsSinks/gcs_sink": gcs_sink +"/genomics:v1alpha2/ControllerConfig/gcsSources": gcs_sources +"/genomics:v1alpha2/ControllerConfig/gcsSources/gcs_source": gcs_source +"/genomics:v1alpha2/ControllerConfig/image": image +"/genomics:v1alpha2/ControllerConfig/machineType": machine_type +"/genomics:v1alpha2/ControllerConfig/vars": vars +"/genomics:v1alpha2/ControllerConfig/vars/var": var +"/genomics:v1alpha2/Disk": disk +"/genomics:v1alpha2/Disk/autoDelete": auto_delete +"/genomics:v1alpha2/Disk/mountPoint": mount_point +"/genomics:v1alpha2/Disk/name": name +"/genomics:v1alpha2/Disk/readOnly": read_only +"/genomics:v1alpha2/Disk/sizeGb": size_gb +"/genomics:v1alpha2/Disk/source": source +"/genomics:v1alpha2/Disk/type": type +"/genomics:v1alpha2/DockerExecutor": docker_executor +"/genomics:v1alpha2/DockerExecutor/cmd": cmd +"/genomics:v1alpha2/DockerExecutor/imageName": image_name +"/genomics:v1alpha2/Empty": empty +"/genomics:v1alpha2/ImportReadGroupSetsResponse": import_read_group_sets_response +"/genomics:v1alpha2/ImportReadGroupSetsResponse/readGroupSetIds": read_group_set_ids +"/genomics:v1alpha2/ImportReadGroupSetsResponse/readGroupSetIds/read_group_set_id": read_group_set_id +"/genomics:v1alpha2/ImportVariantsResponse": import_variants_response +"/genomics:v1alpha2/ImportVariantsResponse/callSetIds": call_set_ids +"/genomics:v1alpha2/ImportVariantsResponse/callSetIds/call_set_id": call_set_id +"/genomics:v1alpha2/ListOperationsResponse": list_operations_response +"/genomics:v1alpha2/ListOperationsResponse/nextPageToken": next_page_token +"/genomics:v1alpha2/ListOperationsResponse/operations": operations +"/genomics:v1alpha2/ListOperationsResponse/operations/operation": operation +"/genomics:v1alpha2/ListPipelinesResponse": list_pipelines_response +"/genomics:v1alpha2/ListPipelinesResponse/nextPageToken": next_page_token +"/genomics:v1alpha2/ListPipelinesResponse/pipelines": pipelines +"/genomics:v1alpha2/ListPipelinesResponse/pipelines/pipeline": pipeline +"/genomics:v1alpha2/LocalCopy": local_copy +"/genomics:v1alpha2/LocalCopy/disk": disk +"/genomics:v1alpha2/LocalCopy/path": path +"/genomics:v1alpha2/LoggingOptions": logging_options +"/genomics:v1alpha2/LoggingOptions/gcsPath": gcs_path +"/genomics:v1alpha2/Operation": operation +"/genomics:v1alpha2/Operation/done": done +"/genomics:v1alpha2/Operation/error": error +"/genomics:v1alpha2/Operation/metadata": metadata +"/genomics:v1alpha2/Operation/metadata/metadatum": metadatum +"/genomics:v1alpha2/Operation/name": name +"/genomics:v1alpha2/Operation/response": response +"/genomics:v1alpha2/Operation/response/response": response +"/genomics:v1alpha2/OperationEvent": operation_event +"/genomics:v1alpha2/OperationEvent/description": description +"/genomics:v1alpha2/OperationEvent/endTime": end_time +"/genomics:v1alpha2/OperationEvent/startTime": start_time +"/genomics:v1alpha2/OperationMetadata": operation_metadata +"/genomics:v1alpha2/OperationMetadata/clientId": client_id +"/genomics:v1alpha2/OperationMetadata/createTime": create_time +"/genomics:v1alpha2/OperationMetadata/endTime": end_time +"/genomics:v1alpha2/OperationMetadata/events": events +"/genomics:v1alpha2/OperationMetadata/events/event": event +"/genomics:v1alpha2/OperationMetadata/labels": labels +"/genomics:v1alpha2/OperationMetadata/labels/label": label +"/genomics:v1alpha2/OperationMetadata/projectId": project_id +"/genomics:v1alpha2/OperationMetadata/request": request +"/genomics:v1alpha2/OperationMetadata/request/request": request +"/genomics:v1alpha2/OperationMetadata/runtimeMetadata": runtime_metadata +"/genomics:v1alpha2/OperationMetadata/runtimeMetadata/runtime_metadatum": runtime_metadatum +"/genomics:v1alpha2/OperationMetadata/startTime": start_time +"/genomics:v1alpha2/Pipeline": pipeline +"/genomics:v1alpha2/Pipeline/description": description +"/genomics:v1alpha2/Pipeline/docker": docker +"/genomics:v1alpha2/Pipeline/inputParameters": input_parameters +"/genomics:v1alpha2/Pipeline/inputParameters/input_parameter": input_parameter +"/genomics:v1alpha2/Pipeline/name": name +"/genomics:v1alpha2/Pipeline/outputParameters": output_parameters +"/genomics:v1alpha2/Pipeline/outputParameters/output_parameter": output_parameter +"/genomics:v1alpha2/Pipeline/pipelineId": pipeline_id +"/genomics:v1alpha2/Pipeline/projectId": project_id +"/genomics:v1alpha2/Pipeline/resources": resources +"/genomics:v1alpha2/PipelineParameter": pipeline_parameter +"/genomics:v1alpha2/PipelineParameter/defaultValue": default_value +"/genomics:v1alpha2/PipelineParameter/description": description +"/genomics:v1alpha2/PipelineParameter/localCopy": local_copy +"/genomics:v1alpha2/PipelineParameter/name": name +"/genomics:v1alpha2/PipelineResources": pipeline_resources +"/genomics:v1alpha2/PipelineResources/bootDiskSizeGb": boot_disk_size_gb +"/genomics:v1alpha2/PipelineResources/disks": disks +"/genomics:v1alpha2/PipelineResources/disks/disk": disk +"/genomics:v1alpha2/PipelineResources/minimumCpuCores": minimum_cpu_cores +"/genomics:v1alpha2/PipelineResources/minimumRamGb": minimum_ram_gb +"/genomics:v1alpha2/PipelineResources/noAddress": no_address +"/genomics:v1alpha2/PipelineResources/preemptible": preemptible +"/genomics:v1alpha2/PipelineResources/zones": zones +"/genomics:v1alpha2/PipelineResources/zones/zone": zone +"/genomics:v1alpha2/RepeatedString": repeated_string +"/genomics:v1alpha2/RepeatedString/values": values +"/genomics:v1alpha2/RepeatedString/values/value": value +"/genomics:v1alpha2/RunPipelineArgs": run_pipeline_args +"/genomics:v1alpha2/RunPipelineArgs/clientId": client_id +"/genomics:v1alpha2/RunPipelineArgs/inputs": inputs +"/genomics:v1alpha2/RunPipelineArgs/inputs/input": input +"/genomics:v1alpha2/RunPipelineArgs/keepVmAliveOnFailureDuration": keep_vm_alive_on_failure_duration +"/genomics:v1alpha2/RunPipelineArgs/labels": labels +"/genomics:v1alpha2/RunPipelineArgs/labels/label": label +"/genomics:v1alpha2/RunPipelineArgs/logging": logging +"/genomics:v1alpha2/RunPipelineArgs/outputs": outputs +"/genomics:v1alpha2/RunPipelineArgs/outputs/output": output +"/genomics:v1alpha2/RunPipelineArgs/projectId": project_id +"/genomics:v1alpha2/RunPipelineArgs/resources": resources +"/genomics:v1alpha2/RunPipelineArgs/serviceAccount": service_account +"/genomics:v1alpha2/RunPipelineRequest": run_pipeline_request +"/genomics:v1alpha2/RunPipelineRequest/ephemeralPipeline": ephemeral_pipeline +"/genomics:v1alpha2/RunPipelineRequest/pipelineArgs": pipeline_args +"/genomics:v1alpha2/RunPipelineRequest/pipelineId": pipeline_id +"/genomics:v1alpha2/RuntimeMetadata": runtime_metadata +"/genomics:v1alpha2/RuntimeMetadata/computeEngine": compute_engine +"/genomics:v1alpha2/ServiceAccount": service_account +"/genomics:v1alpha2/ServiceAccount/email": email +"/genomics:v1alpha2/ServiceAccount/scopes": scopes +"/genomics:v1alpha2/ServiceAccount/scopes/scope": scope +"/genomics:v1alpha2/SetOperationStatusRequest": set_operation_status_request +"/genomics:v1alpha2/SetOperationStatusRequest/errorCode": error_code +"/genomics:v1alpha2/SetOperationStatusRequest/errorMessage": error_message +"/genomics:v1alpha2/SetOperationStatusRequest/operationId": operation_id +"/genomics:v1alpha2/SetOperationStatusRequest/timestampEvents": timestamp_events +"/genomics:v1alpha2/SetOperationStatusRequest/timestampEvents/timestamp_event": timestamp_event +"/genomics:v1alpha2/SetOperationStatusRequest/validationToken": validation_token +"/genomics:v1alpha2/Status": status +"/genomics:v1alpha2/Status/code": code +"/genomics:v1alpha2/Status/details": details +"/genomics:v1alpha2/Status/details/detail": detail +"/genomics:v1alpha2/Status/details/detail/detail": detail +"/genomics:v1alpha2/Status/message": message +"/genomics:v1alpha2/TimestampEvent": timestamp_event +"/genomics:v1alpha2/TimestampEvent/description": description +"/genomics:v1alpha2/TimestampEvent/timestamp": timestamp +"/genomics:v1alpha2/fields": fields +"/genomics:v1alpha2/genomics.operations.cancel": cancel_operation +"/genomics:v1alpha2/genomics.operations.cancel/name": name +"/genomics:v1alpha2/genomics.operations.get": get_operation +"/genomics:v1alpha2/genomics.operations.get/name": name +"/genomics:v1alpha2/genomics.operations.list": list_operations +"/genomics:v1alpha2/genomics.operations.list/filter": filter +"/genomics:v1alpha2/genomics.operations.list/name": name +"/genomics:v1alpha2/genomics.operations.list/pageSize": page_size +"/genomics:v1alpha2/genomics.operations.list/pageToken": page_token +"/genomics:v1alpha2/genomics.pipelines.create": create_pipeline +"/genomics:v1alpha2/genomics.pipelines.delete": delete_pipeline +"/genomics:v1alpha2/genomics.pipelines.delete/pipelineId": pipeline_id +"/genomics:v1alpha2/genomics.pipelines.get": get_pipeline +"/genomics:v1alpha2/genomics.pipelines.get/pipelineId": pipeline_id +"/genomics:v1alpha2/genomics.pipelines.getControllerConfig": get_pipeline_controller_config +"/genomics:v1alpha2/genomics.pipelines.getControllerConfig/operationId": operation_id +"/genomics:v1alpha2/genomics.pipelines.getControllerConfig/validationToken": validation_token +"/genomics:v1alpha2/genomics.pipelines.list": list_pipelines +"/genomics:v1alpha2/genomics.pipelines.list/namePrefix": name_prefix +"/genomics:v1alpha2/genomics.pipelines.list/pageSize": page_size +"/genomics:v1alpha2/genomics.pipelines.list/pageToken": page_token +"/genomics:v1alpha2/genomics.pipelines.list/projectId": project_id +"/genomics:v1alpha2/genomics.pipelines.run": run_pipeline +"/genomics:v1alpha2/genomics.pipelines.setOperationStatus": set_pipeline_operation_status +"/genomics:v1alpha2/key": key +"/genomics:v1alpha2/quotaUser": quota_user "/genomics:v1beta2/genomics.callsets.create": create_call_set "/genomics:v1beta2/genomics.callsets.delete": delete_call_set "/genomics:v1beta2/genomics.callsets.get": get_call_set @@ -31997,6 +42585,117 @@ "/language:v1beta1/language.documents.analyzeSyntax": analyze_document_syntax "/language:v1beta1/language.documents.annotateText": annotate_document_text "/language:v1beta1/quotaUser": quota_user +"/language:v1beta2/AnalyzeEntitiesRequest": analyze_entities_request +"/language:v1beta2/AnalyzeEntitiesRequest/document": document +"/language:v1beta2/AnalyzeEntitiesRequest/encodingType": encoding_type +"/language:v1beta2/AnalyzeEntitiesResponse": analyze_entities_response +"/language:v1beta2/AnalyzeEntitiesResponse/entities": entities +"/language:v1beta2/AnalyzeEntitiesResponse/entities/entity": entity +"/language:v1beta2/AnalyzeEntitiesResponse/language": language +"/language:v1beta2/AnalyzeEntitySentimentRequest": analyze_entity_sentiment_request +"/language:v1beta2/AnalyzeEntitySentimentRequest/document": document +"/language:v1beta2/AnalyzeEntitySentimentRequest/encodingType": encoding_type +"/language:v1beta2/AnalyzeEntitySentimentResponse": analyze_entity_sentiment_response +"/language:v1beta2/AnalyzeEntitySentimentResponse/entities": entities +"/language:v1beta2/AnalyzeEntitySentimentResponse/entities/entity": entity +"/language:v1beta2/AnalyzeEntitySentimentResponse/language": language +"/language:v1beta2/AnalyzeSentimentRequest": analyze_sentiment_request +"/language:v1beta2/AnalyzeSentimentRequest/document": document +"/language:v1beta2/AnalyzeSentimentRequest/encodingType": encoding_type +"/language:v1beta2/AnalyzeSentimentResponse": analyze_sentiment_response +"/language:v1beta2/AnalyzeSentimentResponse/documentSentiment": document_sentiment +"/language:v1beta2/AnalyzeSentimentResponse/language": language +"/language:v1beta2/AnalyzeSentimentResponse/sentences": sentences +"/language:v1beta2/AnalyzeSentimentResponse/sentences/sentence": sentence +"/language:v1beta2/AnalyzeSyntaxRequest": analyze_syntax_request +"/language:v1beta2/AnalyzeSyntaxRequest/document": document +"/language:v1beta2/AnalyzeSyntaxRequest/encodingType": encoding_type +"/language:v1beta2/AnalyzeSyntaxResponse": analyze_syntax_response +"/language:v1beta2/AnalyzeSyntaxResponse/language": language +"/language:v1beta2/AnalyzeSyntaxResponse/sentences": sentences +"/language:v1beta2/AnalyzeSyntaxResponse/sentences/sentence": sentence +"/language:v1beta2/AnalyzeSyntaxResponse/tokens": tokens +"/language:v1beta2/AnalyzeSyntaxResponse/tokens/token": token +"/language:v1beta2/AnnotateTextRequest": annotate_text_request +"/language:v1beta2/AnnotateTextRequest/document": document +"/language:v1beta2/AnnotateTextRequest/encodingType": encoding_type +"/language:v1beta2/AnnotateTextRequest/features": features +"/language:v1beta2/AnnotateTextResponse": annotate_text_response +"/language:v1beta2/AnnotateTextResponse/documentSentiment": document_sentiment +"/language:v1beta2/AnnotateTextResponse/entities": entities +"/language:v1beta2/AnnotateTextResponse/entities/entity": entity +"/language:v1beta2/AnnotateTextResponse/language": language +"/language:v1beta2/AnnotateTextResponse/sentences": sentences +"/language:v1beta2/AnnotateTextResponse/sentences/sentence": sentence +"/language:v1beta2/AnnotateTextResponse/tokens": tokens +"/language:v1beta2/AnnotateTextResponse/tokens/token": token +"/language:v1beta2/DependencyEdge": dependency_edge +"/language:v1beta2/DependencyEdge/headTokenIndex": head_token_index +"/language:v1beta2/DependencyEdge/label": label +"/language:v1beta2/Document": document +"/language:v1beta2/Document/content": content +"/language:v1beta2/Document/gcsContentUri": gcs_content_uri +"/language:v1beta2/Document/language": language +"/language:v1beta2/Document/type": type +"/language:v1beta2/Entity": entity +"/language:v1beta2/Entity/mentions": mentions +"/language:v1beta2/Entity/mentions/mention": mention +"/language:v1beta2/Entity/metadata": metadata +"/language:v1beta2/Entity/metadata/metadatum": metadatum +"/language:v1beta2/Entity/name": name +"/language:v1beta2/Entity/salience": salience +"/language:v1beta2/Entity/sentiment": sentiment +"/language:v1beta2/Entity/type": type +"/language:v1beta2/EntityMention": entity_mention +"/language:v1beta2/EntityMention/sentiment": sentiment +"/language:v1beta2/EntityMention/text": text +"/language:v1beta2/EntityMention/type": type +"/language:v1beta2/Features": features +"/language:v1beta2/Features/extractDocumentSentiment": extract_document_sentiment +"/language:v1beta2/Features/extractEntities": extract_entities +"/language:v1beta2/Features/extractEntitySentiment": extract_entity_sentiment +"/language:v1beta2/Features/extractSyntax": extract_syntax +"/language:v1beta2/PartOfSpeech": part_of_speech +"/language:v1beta2/PartOfSpeech/aspect": aspect +"/language:v1beta2/PartOfSpeech/case": case +"/language:v1beta2/PartOfSpeech/form": form +"/language:v1beta2/PartOfSpeech/gender": gender +"/language:v1beta2/PartOfSpeech/mood": mood +"/language:v1beta2/PartOfSpeech/number": number +"/language:v1beta2/PartOfSpeech/person": person +"/language:v1beta2/PartOfSpeech/proper": proper +"/language:v1beta2/PartOfSpeech/reciprocity": reciprocity +"/language:v1beta2/PartOfSpeech/tag": tag +"/language:v1beta2/PartOfSpeech/tense": tense +"/language:v1beta2/PartOfSpeech/voice": voice +"/language:v1beta2/Sentence": sentence +"/language:v1beta2/Sentence/sentiment": sentiment +"/language:v1beta2/Sentence/text": text +"/language:v1beta2/Sentiment": sentiment +"/language:v1beta2/Sentiment/magnitude": magnitude +"/language:v1beta2/Sentiment/score": score +"/language:v1beta2/Status": status +"/language:v1beta2/Status/code": code +"/language:v1beta2/Status/details": details +"/language:v1beta2/Status/details/detail": detail +"/language:v1beta2/Status/details/detail/detail": detail +"/language:v1beta2/Status/message": message +"/language:v1beta2/TextSpan": text_span +"/language:v1beta2/TextSpan/beginOffset": begin_offset +"/language:v1beta2/TextSpan/content": content +"/language:v1beta2/Token": token +"/language:v1beta2/Token/dependencyEdge": dependency_edge +"/language:v1beta2/Token/lemma": lemma +"/language:v1beta2/Token/partOfSpeech": part_of_speech +"/language:v1beta2/Token/text": text +"/language:v1beta2/fields": fields +"/language:v1beta2/key": key +"/language:v1beta2/language.documents.analyzeEntities": analyze_document_entities +"/language:v1beta2/language.documents.analyzeEntitySentiment": analyze_document_entity_sentiment +"/language:v1beta2/language.documents.analyzeSentiment": analyze_document_sentiment +"/language:v1beta2/language.documents.analyzeSyntax": analyze_document_syntax +"/language:v1beta2/language.documents.annotateText": annotate_document_text +"/language:v1beta2/quotaUser": quota_user "/licensing:v1/LicenseAssignment": license_assignment "/licensing:v1/LicenseAssignment/etags": etags "/licensing:v1/LicenseAssignment/kind": kind @@ -32340,6 +43039,7 @@ "/logging:v2beta1/HttpRequest/cacheLookup": cache_lookup "/logging:v2beta1/HttpRequest/cacheValidatedWithOriginServer": cache_validated_with_origin_server "/logging:v2beta1/HttpRequest/latency": latency +"/logging:v2beta1/HttpRequest/protocol": protocol "/logging:v2beta1/HttpRequest/referer": referer "/logging:v2beta1/HttpRequest/remoteIp": remote_ip "/logging:v2beta1/HttpRequest/requestMethod": request_method @@ -33164,6 +43864,316 @@ "/ml:v1/ml.projects.predict": predict_project "/ml:v1/ml.projects.predict/name": name "/ml:v1/quotaUser": quota_user +"/ml:v1beta1/GoogleApi__HttpBody": google_api__http_body +"/ml:v1beta1/GoogleApi__HttpBody/contentType": content_type +"/ml:v1beta1/GoogleApi__HttpBody/data": data +"/ml:v1beta1/GoogleApi__HttpBody/extensions": extensions +"/ml:v1beta1/GoogleApi__HttpBody/extensions/extension": extension +"/ml:v1beta1/GoogleApi__HttpBody/extensions/extension/extension": extension +"/ml:v1beta1/GoogleCloudMlV1__AutoScaling": google_cloud_ml_v1__auto_scaling +"/ml:v1beta1/GoogleCloudMlV1__AutoScaling/minNodes": min_nodes +"/ml:v1beta1/GoogleCloudMlV1__ManualScaling": google_cloud_ml_v1__manual_scaling +"/ml:v1beta1/GoogleCloudMlV1__ManualScaling/nodes": nodes +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata": google_cloud_ml_v1__operation_metadata +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata/createTime": create_time +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata/endTime": end_time +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata/isCancellationRequested": is_cancellation_requested +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata/modelName": model_name +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata/operationType": operation_type +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata/startTime": start_time +"/ml:v1beta1/GoogleCloudMlV1__OperationMetadata/version": version +"/ml:v1beta1/GoogleCloudMlV1__Version": google_cloud_ml_v1__version +"/ml:v1beta1/GoogleCloudMlV1__Version/autoScaling": auto_scaling +"/ml:v1beta1/GoogleCloudMlV1__Version/createTime": create_time +"/ml:v1beta1/GoogleCloudMlV1__Version/deploymentUri": deployment_uri +"/ml:v1beta1/GoogleCloudMlV1__Version/description": description +"/ml:v1beta1/GoogleCloudMlV1__Version/errorMessage": error_message +"/ml:v1beta1/GoogleCloudMlV1__Version/isDefault": is_default +"/ml:v1beta1/GoogleCloudMlV1__Version/lastUseTime": last_use_time +"/ml:v1beta1/GoogleCloudMlV1__Version/manualScaling": manual_scaling +"/ml:v1beta1/GoogleCloudMlV1__Version/name": name +"/ml:v1beta1/GoogleCloudMlV1__Version/runtimeVersion": runtime_version +"/ml:v1beta1/GoogleCloudMlV1__Version/state": state +"/ml:v1beta1/GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric": google_cloud_ml_v1beta1_hyperparameter_output_hyperparameter_metric +"/ml:v1beta1/GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric/objectiveValue": objective_value +"/ml:v1beta1/GoogleCloudMlV1beta1_HyperparameterOutput_HyperparameterMetric/trainingStep": training_step +"/ml:v1beta1/GoogleCloudMlV1beta1__AutoScaling": google_cloud_ml_v1beta1__auto_scaling +"/ml:v1beta1/GoogleCloudMlV1beta1__AutoScaling/minNodes": min_nodes +"/ml:v1beta1/GoogleCloudMlV1beta1__CancelJobRequest": google_cloud_ml_v1beta1__cancel_job_request +"/ml:v1beta1/GoogleCloudMlV1beta1__GetConfigResponse": google_cloud_ml_v1beta1__get_config_response +"/ml:v1beta1/GoogleCloudMlV1beta1__GetConfigResponse/serviceAccount": service_account +"/ml:v1beta1/GoogleCloudMlV1beta1__GetConfigResponse/serviceAccountProject": service_account_project +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterOutput": google_cloud_ml_v1beta1__hyperparameter_output +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterOutput/allMetrics": all_metrics +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterOutput/allMetrics/all_metric": all_metric +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterOutput/finalMetric": final_metric +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterOutput/hyperparameters": hyperparameters +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterOutput/hyperparameters/hyperparameter": hyperparameter +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterOutput/trialId": trial_id +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterSpec": google_cloud_ml_v1beta1__hyperparameter_spec +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterSpec/goal": goal +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterSpec/hyperparameterMetricTag": hyperparameter_metric_tag +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterSpec/maxParallelTrials": max_parallel_trials +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterSpec/maxTrials": max_trials +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterSpec/params": params +"/ml:v1beta1/GoogleCloudMlV1beta1__HyperparameterSpec/params/param": param +"/ml:v1beta1/GoogleCloudMlV1beta1__Job": google_cloud_ml_v1beta1__job +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/createTime": create_time +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/endTime": end_time +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/errorMessage": error_message +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/jobId": job_id +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/predictionInput": prediction_input +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/predictionOutput": prediction_output +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/startTime": start_time +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/state": state +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/trainingInput": training_input +"/ml:v1beta1/GoogleCloudMlV1beta1__Job/trainingOutput": training_output +"/ml:v1beta1/GoogleCloudMlV1beta1__ListJobsResponse": google_cloud_ml_v1beta1__list_jobs_response +"/ml:v1beta1/GoogleCloudMlV1beta1__ListJobsResponse/jobs": jobs +"/ml:v1beta1/GoogleCloudMlV1beta1__ListJobsResponse/jobs/job": job +"/ml:v1beta1/GoogleCloudMlV1beta1__ListJobsResponse/nextPageToken": next_page_token +"/ml:v1beta1/GoogleCloudMlV1beta1__ListModelsResponse": google_cloud_ml_v1beta1__list_models_response +"/ml:v1beta1/GoogleCloudMlV1beta1__ListModelsResponse/models": models +"/ml:v1beta1/GoogleCloudMlV1beta1__ListModelsResponse/models/model": model +"/ml:v1beta1/GoogleCloudMlV1beta1__ListModelsResponse/nextPageToken": next_page_token +"/ml:v1beta1/GoogleCloudMlV1beta1__ListVersionsResponse": google_cloud_ml_v1beta1__list_versions_response +"/ml:v1beta1/GoogleCloudMlV1beta1__ListVersionsResponse/nextPageToken": next_page_token +"/ml:v1beta1/GoogleCloudMlV1beta1__ListVersionsResponse/versions": versions +"/ml:v1beta1/GoogleCloudMlV1beta1__ListVersionsResponse/versions/version": version +"/ml:v1beta1/GoogleCloudMlV1beta1__ManualScaling": google_cloud_ml_v1beta1__manual_scaling +"/ml:v1beta1/GoogleCloudMlV1beta1__ManualScaling/nodes": nodes +"/ml:v1beta1/GoogleCloudMlV1beta1__Model": google_cloud_ml_v1beta1__model +"/ml:v1beta1/GoogleCloudMlV1beta1__Model/defaultVersion": default_version +"/ml:v1beta1/GoogleCloudMlV1beta1__Model/description": description +"/ml:v1beta1/GoogleCloudMlV1beta1__Model/name": name +"/ml:v1beta1/GoogleCloudMlV1beta1__Model/onlinePredictionLogging": online_prediction_logging +"/ml:v1beta1/GoogleCloudMlV1beta1__Model/regions": regions +"/ml:v1beta1/GoogleCloudMlV1beta1__Model/regions/region": region +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata": google_cloud_ml_v1beta1__operation_metadata +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata/createTime": create_time +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata/endTime": end_time +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata/isCancellationRequested": is_cancellation_requested +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata/modelName": model_name +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata/operationType": operation_type +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata/startTime": start_time +"/ml:v1beta1/GoogleCloudMlV1beta1__OperationMetadata/version": version +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec": google_cloud_ml_v1beta1__parameter_spec +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/categoricalValues": categorical_values +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/categoricalValues/categorical_value": categorical_value +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/discreteValues": discrete_values +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/discreteValues/discrete_value": discrete_value +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/maxValue": max_value +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/minValue": min_value +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/parameterName": parameter_name +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/scaleType": scale_type +"/ml:v1beta1/GoogleCloudMlV1beta1__ParameterSpec/type": type +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictRequest": google_cloud_ml_v1beta1__predict_request +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictRequest/httpBody": http_body +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput": google_cloud_ml_v1beta1__prediction_input +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/batchSize": batch_size +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/dataFormat": data_format +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/inputPaths": input_paths +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/inputPaths/input_path": input_path +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/maxWorkerCount": max_worker_count +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/modelName": model_name +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/outputPath": output_path +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/region": region +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/runtimeVersion": runtime_version +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/uri": uri +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionInput/versionName": version_name +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionOutput": google_cloud_ml_v1beta1__prediction_output +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionOutput/errorCount": error_count +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionOutput/nodeHours": node_hours +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionOutput/outputPath": output_path +"/ml:v1beta1/GoogleCloudMlV1beta1__PredictionOutput/predictionCount": prediction_count +"/ml:v1beta1/GoogleCloudMlV1beta1__SetDefaultVersionRequest": google_cloud_ml_v1beta1__set_default_version_request +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput": google_cloud_ml_v1beta1__training_input +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/args": args +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/args/arg": arg +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/hyperparameters": hyperparameters +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/jobDir": job_dir +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/masterType": master_type +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/packageUris": package_uris +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/packageUris/package_uri": package_uri +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/parameterServerCount": parameter_server_count +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/parameterServerType": parameter_server_type +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/pythonModule": python_module +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/region": region +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/runtimeVersion": runtime_version +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/scaleTier": scale_tier +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/workerCount": worker_count +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingInput/workerType": worker_type +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingOutput": google_cloud_ml_v1beta1__training_output +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingOutput/completedTrialCount": completed_trial_count +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingOutput/consumedMLUnits": consumed_ml_units +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingOutput/isHyperparameterTuningJob": is_hyperparameter_tuning_job +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingOutput/trials": trials +"/ml:v1beta1/GoogleCloudMlV1beta1__TrainingOutput/trials/trial": trial +"/ml:v1beta1/GoogleCloudMlV1beta1__Version": google_cloud_ml_v1beta1__version +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/autoScaling": auto_scaling +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/createTime": create_time +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/deploymentUri": deployment_uri +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/description": description +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/errorMessage": error_message +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/isDefault": is_default +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/lastUseTime": last_use_time +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/manualScaling": manual_scaling +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/name": name +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/runtimeVersion": runtime_version +"/ml:v1beta1/GoogleCloudMlV1beta1__Version/state": state +"/ml:v1beta1/GoogleIamV1_LogConfig_CloudAuditOptions": google_iam_v1_log_config_cloud_audit_options +"/ml:v1beta1/GoogleIamV1_LogConfig_CloudAuditOptions/logName": log_name +"/ml:v1beta1/GoogleIamV1_LogConfig_CounterOptions": google_iam_v1_log_config_counter_options +"/ml:v1beta1/GoogleIamV1_LogConfig_CounterOptions/field": field +"/ml:v1beta1/GoogleIamV1_LogConfig_CounterOptions/metric": metric +"/ml:v1beta1/GoogleIamV1_LogConfig_DataAccessOptions": google_iam_v1_log_config_data_access_options +"/ml:v1beta1/GoogleIamV1_LogConfig_DataAccessOptions/logMode": log_mode +"/ml:v1beta1/GoogleIamV1__AuditConfig": google_iam_v1__audit_config +"/ml:v1beta1/GoogleIamV1__AuditConfig/auditLogConfigs": audit_log_configs +"/ml:v1beta1/GoogleIamV1__AuditConfig/auditLogConfigs/audit_log_config": audit_log_config +"/ml:v1beta1/GoogleIamV1__AuditConfig/exemptedMembers": exempted_members +"/ml:v1beta1/GoogleIamV1__AuditConfig/exemptedMembers/exempted_member": exempted_member +"/ml:v1beta1/GoogleIamV1__AuditConfig/service": service +"/ml:v1beta1/GoogleIamV1__AuditLogConfig": google_iam_v1__audit_log_config +"/ml:v1beta1/GoogleIamV1__AuditLogConfig/exemptedMembers": exempted_members +"/ml:v1beta1/GoogleIamV1__AuditLogConfig/exemptedMembers/exempted_member": exempted_member +"/ml:v1beta1/GoogleIamV1__AuditLogConfig/logType": log_type +"/ml:v1beta1/GoogleIamV1__Binding": google_iam_v1__binding +"/ml:v1beta1/GoogleIamV1__Binding/condition": condition +"/ml:v1beta1/GoogleIamV1__Binding/members": members +"/ml:v1beta1/GoogleIamV1__Binding/members/member": member +"/ml:v1beta1/GoogleIamV1__Binding/role": role +"/ml:v1beta1/GoogleIamV1__Condition": google_iam_v1__condition +"/ml:v1beta1/GoogleIamV1__Condition/iam": iam +"/ml:v1beta1/GoogleIamV1__Condition/op": op +"/ml:v1beta1/GoogleIamV1__Condition/svc": svc +"/ml:v1beta1/GoogleIamV1__Condition/sys": sys +"/ml:v1beta1/GoogleIamV1__Condition/value": value +"/ml:v1beta1/GoogleIamV1__Condition/values": values +"/ml:v1beta1/GoogleIamV1__Condition/values/value": value +"/ml:v1beta1/GoogleIamV1__LogConfig": google_iam_v1__log_config +"/ml:v1beta1/GoogleIamV1__LogConfig/cloudAudit": cloud_audit +"/ml:v1beta1/GoogleIamV1__LogConfig/counter": counter +"/ml:v1beta1/GoogleIamV1__LogConfig/dataAccess": data_access +"/ml:v1beta1/GoogleIamV1__Policy": google_iam_v1__policy +"/ml:v1beta1/GoogleIamV1__Policy/auditConfigs": audit_configs +"/ml:v1beta1/GoogleIamV1__Policy/auditConfigs/audit_config": audit_config +"/ml:v1beta1/GoogleIamV1__Policy/bindings": bindings +"/ml:v1beta1/GoogleIamV1__Policy/bindings/binding": binding +"/ml:v1beta1/GoogleIamV1__Policy/etag": etag +"/ml:v1beta1/GoogleIamV1__Policy/iamOwned": iam_owned +"/ml:v1beta1/GoogleIamV1__Policy/rules": rules +"/ml:v1beta1/GoogleIamV1__Policy/rules/rule": rule +"/ml:v1beta1/GoogleIamV1__Policy/version": version +"/ml:v1beta1/GoogleIamV1__Rule": google_iam_v1__rule +"/ml:v1beta1/GoogleIamV1__Rule/action": action +"/ml:v1beta1/GoogleIamV1__Rule/conditions": conditions +"/ml:v1beta1/GoogleIamV1__Rule/conditions/condition": condition +"/ml:v1beta1/GoogleIamV1__Rule/description": description +"/ml:v1beta1/GoogleIamV1__Rule/in": in +"/ml:v1beta1/GoogleIamV1__Rule/in/in": in +"/ml:v1beta1/GoogleIamV1__Rule/logConfig": log_config +"/ml:v1beta1/GoogleIamV1__Rule/logConfig/log_config": log_config +"/ml:v1beta1/GoogleIamV1__Rule/notIn": not_in +"/ml:v1beta1/GoogleIamV1__Rule/notIn/not_in": not_in +"/ml:v1beta1/GoogleIamV1__Rule/permissions": permissions +"/ml:v1beta1/GoogleIamV1__Rule/permissions/permission": permission +"/ml:v1beta1/GoogleIamV1__SetIamPolicyRequest": google_iam_v1__set_iam_policy_request +"/ml:v1beta1/GoogleIamV1__SetIamPolicyRequest/policy": policy +"/ml:v1beta1/GoogleIamV1__SetIamPolicyRequest/updateMask": update_mask +"/ml:v1beta1/GoogleIamV1__TestIamPermissionsRequest": google_iam_v1__test_iam_permissions_request +"/ml:v1beta1/GoogleIamV1__TestIamPermissionsRequest/permissions": permissions +"/ml:v1beta1/GoogleIamV1__TestIamPermissionsRequest/permissions/permission": permission +"/ml:v1beta1/GoogleIamV1__TestIamPermissionsResponse": google_iam_v1__test_iam_permissions_response +"/ml:v1beta1/GoogleIamV1__TestIamPermissionsResponse/permissions": permissions +"/ml:v1beta1/GoogleIamV1__TestIamPermissionsResponse/permissions/permission": permission +"/ml:v1beta1/GoogleLongrunning__ListOperationsResponse": google_longrunning__list_operations_response +"/ml:v1beta1/GoogleLongrunning__ListOperationsResponse/nextPageToken": next_page_token +"/ml:v1beta1/GoogleLongrunning__ListOperationsResponse/operations": operations +"/ml:v1beta1/GoogleLongrunning__ListOperationsResponse/operations/operation": operation +"/ml:v1beta1/GoogleLongrunning__Operation": google_longrunning__operation +"/ml:v1beta1/GoogleLongrunning__Operation/done": done +"/ml:v1beta1/GoogleLongrunning__Operation/error": error +"/ml:v1beta1/GoogleLongrunning__Operation/metadata": metadata +"/ml:v1beta1/GoogleLongrunning__Operation/metadata/metadatum": metadatum +"/ml:v1beta1/GoogleLongrunning__Operation/name": name +"/ml:v1beta1/GoogleLongrunning__Operation/response": response +"/ml:v1beta1/GoogleLongrunning__Operation/response/response": response +"/ml:v1beta1/GoogleProtobuf__Empty": google_protobuf__empty +"/ml:v1beta1/GoogleRpc__Status": google_rpc__status +"/ml:v1beta1/GoogleRpc__Status/code": code +"/ml:v1beta1/GoogleRpc__Status/details": details +"/ml:v1beta1/GoogleRpc__Status/details/detail": detail +"/ml:v1beta1/GoogleRpc__Status/details/detail/detail": detail +"/ml:v1beta1/GoogleRpc__Status/message": message +"/ml:v1beta1/GoogleType__Expr": google_type__expr +"/ml:v1beta1/GoogleType__Expr/description": description +"/ml:v1beta1/GoogleType__Expr/expression": expression +"/ml:v1beta1/GoogleType__Expr/location": location +"/ml:v1beta1/GoogleType__Expr/title": title +"/ml:v1beta1/fields": fields +"/ml:v1beta1/key": key +"/ml:v1beta1/ml.projects.getConfig": get_project_config +"/ml:v1beta1/ml.projects.getConfig/name": name +"/ml:v1beta1/ml.projects.jobs.cancel": cancel_project_job +"/ml:v1beta1/ml.projects.jobs.cancel/name": name +"/ml:v1beta1/ml.projects.jobs.create": create_project_job +"/ml:v1beta1/ml.projects.jobs.create/parent": parent +"/ml:v1beta1/ml.projects.jobs.get": get_project_job +"/ml:v1beta1/ml.projects.jobs.get/name": name +"/ml:v1beta1/ml.projects.jobs.getIamPolicy": get_project_job_iam_policy +"/ml:v1beta1/ml.projects.jobs.getIamPolicy/resource": resource +"/ml:v1beta1/ml.projects.jobs.list": list_project_jobs +"/ml:v1beta1/ml.projects.jobs.list/filter": filter +"/ml:v1beta1/ml.projects.jobs.list/pageSize": page_size +"/ml:v1beta1/ml.projects.jobs.list/pageToken": page_token +"/ml:v1beta1/ml.projects.jobs.list/parent": parent +"/ml:v1beta1/ml.projects.jobs.setIamPolicy": set_project_job_iam_policy +"/ml:v1beta1/ml.projects.jobs.setIamPolicy/resource": resource +"/ml:v1beta1/ml.projects.jobs.testIamPermissions": test_project_job_iam_permissions +"/ml:v1beta1/ml.projects.jobs.testIamPermissions/resource": resource +"/ml:v1beta1/ml.projects.models.create": create_project_model +"/ml:v1beta1/ml.projects.models.create/parent": parent +"/ml:v1beta1/ml.projects.models.delete": delete_project_model +"/ml:v1beta1/ml.projects.models.delete/name": name +"/ml:v1beta1/ml.projects.models.get": get_project_model +"/ml:v1beta1/ml.projects.models.get/name": name +"/ml:v1beta1/ml.projects.models.getIamPolicy": get_project_model_iam_policy +"/ml:v1beta1/ml.projects.models.getIamPolicy/resource": resource +"/ml:v1beta1/ml.projects.models.list": list_project_models +"/ml:v1beta1/ml.projects.models.list/pageSize": page_size +"/ml:v1beta1/ml.projects.models.list/pageToken": page_token +"/ml:v1beta1/ml.projects.models.list/parent": parent +"/ml:v1beta1/ml.projects.models.setIamPolicy": set_project_model_iam_policy +"/ml:v1beta1/ml.projects.models.setIamPolicy/resource": resource +"/ml:v1beta1/ml.projects.models.testIamPermissions": test_project_model_iam_permissions +"/ml:v1beta1/ml.projects.models.testIamPermissions/resource": resource +"/ml:v1beta1/ml.projects.models.versions.create": create_project_model_version +"/ml:v1beta1/ml.projects.models.versions.create/parent": parent +"/ml:v1beta1/ml.projects.models.versions.delete": delete_project_model_version +"/ml:v1beta1/ml.projects.models.versions.delete/name": name +"/ml:v1beta1/ml.projects.models.versions.get": get_project_model_version +"/ml:v1beta1/ml.projects.models.versions.get/name": name +"/ml:v1beta1/ml.projects.models.versions.list": list_project_model_versions +"/ml:v1beta1/ml.projects.models.versions.list/pageSize": page_size +"/ml:v1beta1/ml.projects.models.versions.list/pageToken": page_token +"/ml:v1beta1/ml.projects.models.versions.list/parent": parent +"/ml:v1beta1/ml.projects.models.versions.setDefault": set_project_model_version_default +"/ml:v1beta1/ml.projects.models.versions.setDefault/name": name +"/ml:v1beta1/ml.projects.operations.cancel": cancel_project_operation +"/ml:v1beta1/ml.projects.operations.cancel/name": name +"/ml:v1beta1/ml.projects.operations.delete": delete_project_operation +"/ml:v1beta1/ml.projects.operations.delete/name": name +"/ml:v1beta1/ml.projects.operations.get": get_project_operation +"/ml:v1beta1/ml.projects.operations.get/name": name +"/ml:v1beta1/ml.projects.operations.list": list_project_operations +"/ml:v1beta1/ml.projects.operations.list/filter": filter +"/ml:v1beta1/ml.projects.operations.list/name": name +"/ml:v1beta1/ml.projects.operations.list/pageSize": page_size +"/ml:v1beta1/ml.projects.operations.list/pageToken": page_token +"/ml:v1beta1/ml.projects.predict": predict_project +"/ml:v1beta1/ml.projects.predict/name": name +"/ml:v1beta1/quotaUser": quota_user "/monitoring:v3/BucketOptions": bucket_options "/monitoring:v3/BucketOptions/explicitBuckets": explicit_buckets "/monitoring:v3/BucketOptions/exponentialBuckets": exponential_buckets @@ -33662,6 +44672,60 @@ "/mybusiness:v3/mybusiness.attributes.list/languageCode": language_code "/mybusiness:v3/mybusiness.attributes.list/name": name "/mybusiness:v3/quotaUser": quota_user +"/oauth2:v1/Jwk": jwk +"/oauth2:v1/Jwk/keys": keys +"/oauth2:v1/Jwk/keys/key": key +"/oauth2:v1/Jwk/keys/key/alg": alg +"/oauth2:v1/Jwk/keys/key/e": e +"/oauth2:v1/Jwk/keys/key/kid": kid +"/oauth2:v1/Jwk/keys/key/kty": kty +"/oauth2:v1/Jwk/keys/key/n": n +"/oauth2:v1/Jwk/keys/key/use": use +"/oauth2:v1/Raw": raw +"/oauth2:v1/Raw/keyvalues": keyvalues +"/oauth2:v1/Raw/keyvalues/keyvalue": keyvalue +"/oauth2:v1/Raw/keyvalues/keyvalue/algorithm": algorithm +"/oauth2:v1/Raw/keyvalues/keyvalue/exponent": exponent +"/oauth2:v1/Raw/keyvalues/keyvalue/keyid": keyid +"/oauth2:v1/Raw/keyvalues/keyvalue/modulus": modulus +"/oauth2:v1/Tokeninfo": tokeninfo +"/oauth2:v1/Tokeninfo/access_type": access_type +"/oauth2:v1/Tokeninfo/audience": audience +"/oauth2:v1/Tokeninfo/email": email +"/oauth2:v1/Tokeninfo/email_verified": email_verified +"/oauth2:v1/Tokeninfo/expires_in": expires_in +"/oauth2:v1/Tokeninfo/issued_at": issued_at +"/oauth2:v1/Tokeninfo/issued_to": issued_to +"/oauth2:v1/Tokeninfo/issuer": issuer +"/oauth2:v1/Tokeninfo/nonce": nonce +"/oauth2:v1/Tokeninfo/scope": scope +"/oauth2:v1/Tokeninfo/user_id": user_id +"/oauth2:v1/Tokeninfo/verified_email": verified_email +"/oauth2:v1/Userinfoplus": userinfoplus +"/oauth2:v1/Userinfoplus/email": email +"/oauth2:v1/Userinfoplus/family_name": family_name +"/oauth2:v1/Userinfoplus/gender": gender +"/oauth2:v1/Userinfoplus/given_name": given_name +"/oauth2:v1/Userinfoplus/hd": hd +"/oauth2:v1/Userinfoplus/id": id +"/oauth2:v1/Userinfoplus/link": link +"/oauth2:v1/Userinfoplus/locale": locale +"/oauth2:v1/Userinfoplus/name": name +"/oauth2:v1/Userinfoplus/picture": picture +"/oauth2:v1/Userinfoplus/verified_email": verified_email +"/oauth2:v1/X509": x509 +"/oauth2:v1/X509/x509": x509 +"/oauth2:v1/fields": fields +"/oauth2:v1/key": key +"/oauth2:v1/oauth2.getRobotJwk/robotEmail": robot_email +"/oauth2:v1/oauth2.getRobotMetadataRaw/robotEmail": robot_email +"/oauth2:v1/oauth2.getRobotMetadataX509/robotEmail": robot_email +"/oauth2:v1/oauth2.tokeninfo/access_token": access_token +"/oauth2:v1/oauth2.tokeninfo/id_token": id_token +"/oauth2:v1/oauth2.userinfo.get": get_userinfo +"/oauth2:v1/oauth2.userinfo.v2.me.get": get_userinfo_v2_me +"/oauth2:v1/quotaUser": quota_user +"/oauth2:v1/userIp": user_ip "/oauth2:v2/Jwk": jwk "/oauth2:v2/Jwk/keys": keys "/oauth2:v2/Jwk/keys/key": key @@ -33741,6 +44805,76 @@ "/oslogin:v1alpha/oslogin.users.sshPublicKeys.patch/name": name "/oslogin:v1alpha/oslogin.users.sshPublicKeys.patch/updateMask": update_mask "/oslogin:v1alpha/quotaUser": quota_user +"/pagespeedonline:v1/Result": result +"/pagespeedonline:v1/Result/formattedResults": formatted_results +"/pagespeedonline:v1/Result/formattedResults/locale": locale +"/pagespeedonline:v1/Result/formattedResults/ruleResults": rule_results +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result": rule_result +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/localizedRuleName": localized_rule_name +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/ruleImpact": rule_impact +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks": url_blocks +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block": url_block +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/header": header +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/header/args": args +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/header/args/arg": arg +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/header/args/arg/type": type +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/header/args/arg/value": value +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/header/format": format +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls": urls +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url": url +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/details": details +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/details/detail": detail +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/details/detail/args": args +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/details/detail/args/arg": arg +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/details/detail/args/arg/type": type +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/details/detail/args/arg/value": value +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/details/detail/format": format +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/result": result +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/result/args": args +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/result/args/arg": arg +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/result/args/arg/type": type +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/result/args/arg/value": value +"/pagespeedonline:v1/Result/formattedResults/ruleResults/rule_result/urlBlocks/url_block/urls/url/result/format": format +"/pagespeedonline:v1/Result/id": id +"/pagespeedonline:v1/Result/invalidRules": invalid_rules +"/pagespeedonline:v1/Result/invalidRules/invalid_rule": invalid_rule +"/pagespeedonline:v1/Result/kind": kind +"/pagespeedonline:v1/Result/pageStats": page_stats +"/pagespeedonline:v1/Result/pageStats/cssResponseBytes": css_response_bytes +"/pagespeedonline:v1/Result/pageStats/flashResponseBytes": flash_response_bytes +"/pagespeedonline:v1/Result/pageStats/htmlResponseBytes": html_response_bytes +"/pagespeedonline:v1/Result/pageStats/imageResponseBytes": image_response_bytes +"/pagespeedonline:v1/Result/pageStats/javascriptResponseBytes": javascript_response_bytes +"/pagespeedonline:v1/Result/pageStats/numberCssResources": number_css_resources +"/pagespeedonline:v1/Result/pageStats/numberHosts": number_hosts +"/pagespeedonline:v1/Result/pageStats/numberJsResources": number_js_resources +"/pagespeedonline:v1/Result/pageStats/numberResources": number_resources +"/pagespeedonline:v1/Result/pageStats/numberStaticResources": number_static_resources +"/pagespeedonline:v1/Result/pageStats/otherResponseBytes": other_response_bytes +"/pagespeedonline:v1/Result/pageStats/textResponseBytes": text_response_bytes +"/pagespeedonline:v1/Result/pageStats/totalRequestBytes": total_request_bytes +"/pagespeedonline:v1/Result/responseCode": response_code +"/pagespeedonline:v1/Result/score": score +"/pagespeedonline:v1/Result/screenshot": screenshot +"/pagespeedonline:v1/Result/screenshot/data": data +"/pagespeedonline:v1/Result/screenshot/height": height +"/pagespeedonline:v1/Result/screenshot/mime_type": mime_type +"/pagespeedonline:v1/Result/screenshot/width": width +"/pagespeedonline:v1/Result/title": title +"/pagespeedonline:v1/Result/version": version +"/pagespeedonline:v1/Result/version/major": major +"/pagespeedonline:v1/Result/version/minor": minor +"/pagespeedonline:v1/fields": fields +"/pagespeedonline:v1/key": key +"/pagespeedonline:v1/pagespeedonline.pagespeedapi.runpagespeed": runpagespeed_pagespeedapi +"/pagespeedonline:v1/pagespeedonline.pagespeedapi.runpagespeed/filter_third_party_resources": filter_third_party_resources +"/pagespeedonline:v1/pagespeedonline.pagespeedapi.runpagespeed/locale": locale +"/pagespeedonline:v1/pagespeedonline.pagespeedapi.runpagespeed/rule": rule +"/pagespeedonline:v1/pagespeedonline.pagespeedapi.runpagespeed/screenshot": screenshot +"/pagespeedonline:v1/pagespeedonline.pagespeedapi.runpagespeed/strategy": strategy +"/pagespeedonline:v1/pagespeedonline.pagespeedapi.runpagespeed/url": url +"/pagespeedonline:v1/quotaUser": quota_user +"/pagespeedonline:v1/userIp": user_ip "/pagespeedonline:v2/PagespeedApiFormatStringV2": format_string "/pagespeedonline:v2/PagespeedApiFormatStringV2/args": args "/pagespeedonline:v2/PagespeedApiFormatStringV2/args/arg": arg @@ -35464,6 +46598,271 @@ "/plusDomains:v1/plusDomains.people.listByCircle/pageToken": page_token "/plusDomains:v1/quotaUser": quota_user "/plusDomains:v1/userIp": user_ip +"/prediction:v1.2/Input": input +"/prediction:v1.2/Input/input": input +"/prediction:v1.2/Input/input/csvInstance": csv_instance +"/prediction:v1.2/Input/input/csvInstance/csv_instance": csv_instance +"/prediction:v1.2/Output": output +"/prediction:v1.2/Output/id": id +"/prediction:v1.2/Output/kind": kind +"/prediction:v1.2/Output/outputLabel": output_label +"/prediction:v1.2/Output/outputMulti": output_multi +"/prediction:v1.2/Output/outputMulti/output_multi": output_multi +"/prediction:v1.2/Output/outputMulti/output_multi/label": label +"/prediction:v1.2/Output/outputMulti/output_multi/score": score +"/prediction:v1.2/Output/outputValue": output_value +"/prediction:v1.2/Output/selfLink": self_link +"/prediction:v1.2/Training": training +"/prediction:v1.2/Training/id": id +"/prediction:v1.2/Training/kind": kind +"/prediction:v1.2/Training/modelInfo": model_info +"/prediction:v1.2/Training/modelInfo/classificationAccuracy": classification_accuracy +"/prediction:v1.2/Training/modelInfo/meanSquaredError": mean_squared_error +"/prediction:v1.2/Training/modelInfo/modelType": model_type +"/prediction:v1.2/Training/selfLink": self_link +"/prediction:v1.2/Training/trainingStatus": training_status +"/prediction:v1.2/Update": update +"/prediction:v1.2/Update/classLabel": class_label +"/prediction:v1.2/Update/csvInstance": csv_instance +"/prediction:v1.2/Update/csvInstance/csv_instance": csv_instance +"/prediction:v1.2/fields": fields +"/prediction:v1.2/key": key +"/prediction:v1.2/prediction.hostedmodels.predict": predict_hostedmodel +"/prediction:v1.2/prediction.hostedmodels.predict/hostedModelName": hosted_model_name +"/prediction:v1.2/prediction.predict/data": data +"/prediction:v1.2/prediction.training.delete": delete_training +"/prediction:v1.2/prediction.training.delete/data": data +"/prediction:v1.2/prediction.training.get": get_training +"/prediction:v1.2/prediction.training.get/data": data +"/prediction:v1.2/prediction.training.insert": insert_training +"/prediction:v1.2/prediction.training.insert/data": data +"/prediction:v1.2/prediction.training.update": update_training +"/prediction:v1.2/prediction.training.update/data": data +"/prediction:v1.2/quotaUser": quota_user +"/prediction:v1.2/userIp": user_ip +"/prediction:v1.3/Input": input +"/prediction:v1.3/Input/input": input +"/prediction:v1.3/Input/input/csvInstance": csv_instance +"/prediction:v1.3/Input/input/csvInstance/csv_instance": csv_instance +"/prediction:v1.3/Output": output +"/prediction:v1.3/Output/id": id +"/prediction:v1.3/Output/kind": kind +"/prediction:v1.3/Output/outputLabel": output_label +"/prediction:v1.3/Output/outputMulti": output_multi +"/prediction:v1.3/Output/outputMulti/output_multi": output_multi +"/prediction:v1.3/Output/outputMulti/output_multi/label": label +"/prediction:v1.3/Output/outputMulti/output_multi/score": score +"/prediction:v1.3/Output/outputValue": output_value +"/prediction:v1.3/Output/selfLink": self_link +"/prediction:v1.3/Training": training +"/prediction:v1.3/Training/id": id +"/prediction:v1.3/Training/kind": kind +"/prediction:v1.3/Training/modelInfo": model_info +"/prediction:v1.3/Training/modelInfo/classWeightedAccuracy": class_weighted_accuracy +"/prediction:v1.3/Training/modelInfo/classificationAccuracy": classification_accuracy +"/prediction:v1.3/Training/modelInfo/confusionMatrix": confusion_matrix +"/prediction:v1.3/Training/modelInfo/confusionMatrix/confusion_matrix": confusion_matrix +"/prediction:v1.3/Training/modelInfo/confusionMatrix/confusion_matrix/confusion_matrix": confusion_matrix +"/prediction:v1.3/Training/modelInfo/confusionMatrixRowTotals": confusion_matrix_row_totals +"/prediction:v1.3/Training/modelInfo/confusionMatrixRowTotals/confusion_matrix_row_total": confusion_matrix_row_total +"/prediction:v1.3/Training/modelInfo/meanSquaredError": mean_squared_error +"/prediction:v1.3/Training/modelInfo/modelType": model_type +"/prediction:v1.3/Training/modelInfo/numberClasses": number_classes +"/prediction:v1.3/Training/modelInfo/numberInstances": number_instances +"/prediction:v1.3/Training/selfLink": self_link +"/prediction:v1.3/Training/trainingStatus": training_status +"/prediction:v1.3/Training/utility": utility +"/prediction:v1.3/Training/utility/utility": utility +"/prediction:v1.3/Training/utility/utility/utility": utility +"/prediction:v1.3/Update": update +"/prediction:v1.3/Update/classLabel": class_label +"/prediction:v1.3/Update/csvInstance": csv_instance +"/prediction:v1.3/Update/csvInstance/csv_instance": csv_instance +"/prediction:v1.3/fields": fields +"/prediction:v1.3/key": key +"/prediction:v1.3/prediction.hostedmodels.predict": predict_hostedmodel +"/prediction:v1.3/prediction.hostedmodels.predict/hostedModelName": hosted_model_name +"/prediction:v1.3/prediction.training.delete": delete_training +"/prediction:v1.3/prediction.training.delete/data": data +"/prediction:v1.3/prediction.training.get": get_training +"/prediction:v1.3/prediction.training.get/data": data +"/prediction:v1.3/prediction.training.insert": insert_training +"/prediction:v1.3/prediction.training.predict": predict_training +"/prediction:v1.3/prediction.training.predict/data": data +"/prediction:v1.3/prediction.training.update": update_training +"/prediction:v1.3/prediction.training.update/data": data +"/prediction:v1.3/quotaUser": quota_user +"/prediction:v1.3/userIp": user_ip +"/prediction:v1.4/Input": input +"/prediction:v1.4/Input/input": input +"/prediction:v1.4/Input/input/csvInstance": csv_instance +"/prediction:v1.4/Input/input/csvInstance/csv_instance": csv_instance +"/prediction:v1.4/Output": output +"/prediction:v1.4/Output/id": id +"/prediction:v1.4/Output/kind": kind +"/prediction:v1.4/Output/outputLabel": output_label +"/prediction:v1.4/Output/outputMulti": output_multi +"/prediction:v1.4/Output/outputMulti/output_multi": output_multi +"/prediction:v1.4/Output/outputMulti/output_multi/label": label +"/prediction:v1.4/Output/outputMulti/output_multi/score": score +"/prediction:v1.4/Output/outputValue": output_value +"/prediction:v1.4/Output/selfLink": self_link +"/prediction:v1.4/Training": training +"/prediction:v1.4/Training/dataAnalysis": data_analysis +"/prediction:v1.4/Training/dataAnalysis/warnings": warnings +"/prediction:v1.4/Training/dataAnalysis/warnings/warning": warning +"/prediction:v1.4/Training/id": id +"/prediction:v1.4/Training/kind": kind +"/prediction:v1.4/Training/modelInfo": model_info +"/prediction:v1.4/Training/modelInfo/classWeightedAccuracy": class_weighted_accuracy +"/prediction:v1.4/Training/modelInfo/classificationAccuracy": classification_accuracy +"/prediction:v1.4/Training/modelInfo/confusionMatrix": confusion_matrix +"/prediction:v1.4/Training/modelInfo/confusionMatrix/confusion_matrix": confusion_matrix +"/prediction:v1.4/Training/modelInfo/confusionMatrix/confusion_matrix/confusion_matrix": confusion_matrix +"/prediction:v1.4/Training/modelInfo/confusionMatrixRowTotals": confusion_matrix_row_totals +"/prediction:v1.4/Training/modelInfo/confusionMatrixRowTotals/confusion_matrix_row_total": confusion_matrix_row_total +"/prediction:v1.4/Training/modelInfo/meanSquaredError": mean_squared_error +"/prediction:v1.4/Training/modelInfo/modelType": model_type +"/prediction:v1.4/Training/modelInfo/numberInstances": number_instances +"/prediction:v1.4/Training/modelInfo/numberLabels": number_labels +"/prediction:v1.4/Training/selfLink": self_link +"/prediction:v1.4/Training/storageDataLocation": storage_data_location +"/prediction:v1.4/Training/storagePMMLLocation": storage_pmml_location +"/prediction:v1.4/Training/storagePMMLModelLocation": storage_pmml_model_location +"/prediction:v1.4/Training/trainingStatus": training_status +"/prediction:v1.4/Training/utility": utility +"/prediction:v1.4/Training/utility/utility": utility +"/prediction:v1.4/Training/utility/utility/utility": utility +"/prediction:v1.4/Update": update +"/prediction:v1.4/Update/csvInstance": csv_instance +"/prediction:v1.4/Update/csvInstance/csv_instance": csv_instance +"/prediction:v1.4/Update/label": label +"/prediction:v1.4/Update/output": output +"/prediction:v1.4/fields": fields +"/prediction:v1.4/key": key +"/prediction:v1.4/prediction.hostedmodels.predict": predict_hostedmodel +"/prediction:v1.4/prediction.hostedmodels.predict/hostedModelName": hosted_model_name +"/prediction:v1.4/prediction.trainedmodels.delete": delete_trainedmodel +"/prediction:v1.4/prediction.trainedmodels.delete/id": id +"/prediction:v1.4/prediction.trainedmodels.get": get_trainedmodel +"/prediction:v1.4/prediction.trainedmodels.get/id": id +"/prediction:v1.4/prediction.trainedmodels.insert": insert_trainedmodel +"/prediction:v1.4/prediction.trainedmodels.predict": predict_trainedmodel +"/prediction:v1.4/prediction.trainedmodels.predict/id": id +"/prediction:v1.4/prediction.trainedmodels.update": update_trainedmodel +"/prediction:v1.4/prediction.trainedmodels.update/id": id +"/prediction:v1.4/quotaUser": quota_user +"/prediction:v1.4/userIp": user_ip +"/prediction:v1.5/Analyze": analyze +"/prediction:v1.5/Analyze/dataDescription": data_description +"/prediction:v1.5/Analyze/dataDescription/features": features +"/prediction:v1.5/Analyze/dataDescription/features/feature": feature +"/prediction:v1.5/Analyze/dataDescription/features/feature/categorical": categorical +"/prediction:v1.5/Analyze/dataDescription/features/feature/categorical/count": count +"/prediction:v1.5/Analyze/dataDescription/features/feature/categorical/values": values +"/prediction:v1.5/Analyze/dataDescription/features/feature/categorical/values/value": value +"/prediction:v1.5/Analyze/dataDescription/features/feature/categorical/values/value/count": count +"/prediction:v1.5/Analyze/dataDescription/features/feature/categorical/values/value/value": value +"/prediction:v1.5/Analyze/dataDescription/features/feature/index": index +"/prediction:v1.5/Analyze/dataDescription/features/feature/numeric": numeric +"/prediction:v1.5/Analyze/dataDescription/features/feature/numeric/count": count +"/prediction:v1.5/Analyze/dataDescription/features/feature/numeric/mean": mean +"/prediction:v1.5/Analyze/dataDescription/features/feature/numeric/variance": variance +"/prediction:v1.5/Analyze/dataDescription/features/feature/text": text +"/prediction:v1.5/Analyze/dataDescription/features/feature/text/count": count +"/prediction:v1.5/Analyze/dataDescription/outputFeature": output_feature +"/prediction:v1.5/Analyze/dataDescription/outputFeature/numeric": numeric +"/prediction:v1.5/Analyze/dataDescription/outputFeature/numeric/count": count +"/prediction:v1.5/Analyze/dataDescription/outputFeature/numeric/mean": mean +"/prediction:v1.5/Analyze/dataDescription/outputFeature/numeric/variance": variance +"/prediction:v1.5/Analyze/dataDescription/outputFeature/text": text +"/prediction:v1.5/Analyze/dataDescription/outputFeature/text/text": text +"/prediction:v1.5/Analyze/dataDescription/outputFeature/text/text/count": count +"/prediction:v1.5/Analyze/dataDescription/outputFeature/text/text/value": value +"/prediction:v1.5/Analyze/errors": errors +"/prediction:v1.5/Analyze/errors/error": error +"/prediction:v1.5/Analyze/errors/error/error": error +"/prediction:v1.5/Analyze/id": id +"/prediction:v1.5/Analyze/kind": kind +"/prediction:v1.5/Analyze/modelDescription": model_description +"/prediction:v1.5/Analyze/modelDescription/confusionMatrix": confusion_matrix +"/prediction:v1.5/Analyze/modelDescription/confusionMatrix/confusion_matrix": confusion_matrix +"/prediction:v1.5/Analyze/modelDescription/confusionMatrix/confusion_matrix/confusion_matrix": confusion_matrix +"/prediction:v1.5/Analyze/modelDescription/confusionMatrixRowTotals": confusion_matrix_row_totals +"/prediction:v1.5/Analyze/modelDescription/confusionMatrixRowTotals/confusion_matrix_row_total": confusion_matrix_row_total +"/prediction:v1.5/Analyze/modelDescription/modelinfo": modelinfo +"/prediction:v1.5/Analyze/selfLink": self_link +"/prediction:v1.5/Input": input +"/prediction:v1.5/Input/input": input +"/prediction:v1.5/Input/input/csvInstance": csv_instance +"/prediction:v1.5/Input/input/csvInstance/csv_instance": csv_instance +"/prediction:v1.5/List": list +"/prediction:v1.5/List/items": items +"/prediction:v1.5/List/items/item": item +"/prediction:v1.5/List/kind": kind +"/prediction:v1.5/List/nextPageToken": next_page_token +"/prediction:v1.5/List/selfLink": self_link +"/prediction:v1.5/Output": output +"/prediction:v1.5/Output/id": id +"/prediction:v1.5/Output/kind": kind +"/prediction:v1.5/Output/outputLabel": output_label +"/prediction:v1.5/Output/outputMulti": output_multi +"/prediction:v1.5/Output/outputMulti/output_multi": output_multi +"/prediction:v1.5/Output/outputMulti/output_multi/label": label +"/prediction:v1.5/Output/outputMulti/output_multi/score": score +"/prediction:v1.5/Output/outputValue": output_value +"/prediction:v1.5/Output/selfLink": self_link +"/prediction:v1.5/Training": training +"/prediction:v1.5/Training/created": created +"/prediction:v1.5/Training/id": id +"/prediction:v1.5/Training/kind": kind +"/prediction:v1.5/Training/modelInfo": model_info +"/prediction:v1.5/Training/modelInfo/classWeightedAccuracy": class_weighted_accuracy +"/prediction:v1.5/Training/modelInfo/classificationAccuracy": classification_accuracy +"/prediction:v1.5/Training/modelInfo/meanSquaredError": mean_squared_error +"/prediction:v1.5/Training/modelInfo/modelType": model_type +"/prediction:v1.5/Training/modelInfo/numberInstances": number_instances +"/prediction:v1.5/Training/modelInfo/numberLabels": number_labels +"/prediction:v1.5/Training/modelType": model_type +"/prediction:v1.5/Training/selfLink": self_link +"/prediction:v1.5/Training/storageDataLocation": storage_data_location +"/prediction:v1.5/Training/storagePMMLLocation": storage_pmml_location +"/prediction:v1.5/Training/storagePMMLModelLocation": storage_pmml_model_location +"/prediction:v1.5/Training/trainingComplete": training_complete +"/prediction:v1.5/Training/trainingInstances": training_instances +"/prediction:v1.5/Training/trainingInstances/training_instance": training_instance +"/prediction:v1.5/Training/trainingInstances/training_instance/csvInstance": csv_instance +"/prediction:v1.5/Training/trainingInstances/training_instance/csvInstance/csv_instance": csv_instance +"/prediction:v1.5/Training/trainingInstances/training_instance/output": output +"/prediction:v1.5/Training/trainingStatus": training_status +"/prediction:v1.5/Training/utility": utility +"/prediction:v1.5/Training/utility/utility": utility +"/prediction:v1.5/Training/utility/utility/utility": utility +"/prediction:v1.5/Update": update +"/prediction:v1.5/Update/csvInstance": csv_instance +"/prediction:v1.5/Update/csvInstance/csv_instance": csv_instance +"/prediction:v1.5/Update/label": label +"/prediction:v1.5/Update/output": output +"/prediction:v1.5/fields": fields +"/prediction:v1.5/key": key +"/prediction:v1.5/prediction.hostedmodels.predict": predict_hostedmodel +"/prediction:v1.5/prediction.hostedmodels.predict/hostedModelName": hosted_model_name +"/prediction:v1.5/prediction.trainedmodels.analyze": analyze_trainedmodel +"/prediction:v1.5/prediction.trainedmodels.analyze/id": id +"/prediction:v1.5/prediction.trainedmodels.delete": delete_trainedmodel +"/prediction:v1.5/prediction.trainedmodels.delete/id": id +"/prediction:v1.5/prediction.trainedmodels.get": get_trainedmodel +"/prediction:v1.5/prediction.trainedmodels.get/id": id +"/prediction:v1.5/prediction.trainedmodels.insert": insert_trainedmodel +"/prediction:v1.5/prediction.trainedmodels.list": list_trainedmodels +"/prediction:v1.5/prediction.trainedmodels.list/maxResults": max_results +"/prediction:v1.5/prediction.trainedmodels.list/pageToken": page_token +"/prediction:v1.5/prediction.trainedmodels.predict": predict_trainedmodel +"/prediction:v1.5/prediction.trainedmodels.predict/id": id +"/prediction:v1.5/prediction.trainedmodels.update": update_trainedmodel +"/prediction:v1.5/prediction.trainedmodels.update/id": id +"/prediction:v1.5/quotaUser": quota_user +"/prediction:v1.5/userIp": user_ip "/prediction:v1.6/Analyze": analyze "/prediction:v1.6/Analyze/dataDescription": data_description "/prediction:v1.6/Analyze/dataDescription/features": features @@ -35856,6 +47255,224 @@ "/pubsub:v1/pubsub.projects.topics.testIamPermissions": test_topic_iam_permissions "/pubsub:v1/pubsub.projects.topics.testIamPermissions/resource": resource "/pubsub:v1/quotaUser": quota_user +"/pubsub:v1beta1a/AcknowledgeRequest": acknowledge_request +"/pubsub:v1beta1a/AcknowledgeRequest/ackId": ack_id +"/pubsub:v1beta1a/AcknowledgeRequest/ackId/ack_id": ack_id +"/pubsub:v1beta1a/AcknowledgeRequest/subscription": subscription +"/pubsub:v1beta1a/Empty": empty +"/pubsub:v1beta1a/Label": label +"/pubsub:v1beta1a/Label/key": key +"/pubsub:v1beta1a/Label/numValue": num_value +"/pubsub:v1beta1a/Label/strValue": str_value +"/pubsub:v1beta1a/ListSubscriptionsResponse": list_subscriptions_response +"/pubsub:v1beta1a/ListSubscriptionsResponse/nextPageToken": next_page_token +"/pubsub:v1beta1a/ListSubscriptionsResponse/subscription": subscription +"/pubsub:v1beta1a/ListSubscriptionsResponse/subscription/subscription": subscription +"/pubsub:v1beta1a/ListTopicsResponse": list_topics_response +"/pubsub:v1beta1a/ListTopicsResponse/nextPageToken": next_page_token +"/pubsub:v1beta1a/ListTopicsResponse/topic": topic +"/pubsub:v1beta1a/ListTopicsResponse/topic/topic": topic +"/pubsub:v1beta1a/ModifyAckDeadlineRequest": modify_ack_deadline_request +"/pubsub:v1beta1a/ModifyAckDeadlineRequest/ackDeadlineSeconds": ack_deadline_seconds +"/pubsub:v1beta1a/ModifyAckDeadlineRequest/ackId": ack_id +"/pubsub:v1beta1a/ModifyAckDeadlineRequest/ackIds": ack_ids +"/pubsub:v1beta1a/ModifyAckDeadlineRequest/ackIds/ack_id": ack_id +"/pubsub:v1beta1a/ModifyAckDeadlineRequest/subscription": subscription +"/pubsub:v1beta1a/ModifyPushConfigRequest": modify_push_config_request +"/pubsub:v1beta1a/ModifyPushConfigRequest/pushConfig": push_config +"/pubsub:v1beta1a/ModifyPushConfigRequest/subscription": subscription +"/pubsub:v1beta1a/PublishBatchRequest": publish_batch_request +"/pubsub:v1beta1a/PublishBatchRequest/messages": messages +"/pubsub:v1beta1a/PublishBatchRequest/messages/message": message +"/pubsub:v1beta1a/PublishBatchRequest/topic": topic +"/pubsub:v1beta1a/PublishBatchResponse": publish_batch_response +"/pubsub:v1beta1a/PublishBatchResponse/messageIds": message_ids +"/pubsub:v1beta1a/PublishBatchResponse/messageIds/message_id": message_id +"/pubsub:v1beta1a/PublishRequest": publish_request +"/pubsub:v1beta1a/PublishRequest/message": message +"/pubsub:v1beta1a/PublishRequest/topic": topic +"/pubsub:v1beta1a/PubsubEvent": pubsub_event +"/pubsub:v1beta1a/PubsubEvent/deleted": deleted +"/pubsub:v1beta1a/PubsubEvent/message": message +"/pubsub:v1beta1a/PubsubEvent/subscription": subscription +"/pubsub:v1beta1a/PubsubEvent/truncated": truncated +"/pubsub:v1beta1a/PubsubMessage": pubsub_message +"/pubsub:v1beta1a/PubsubMessage/data": data +"/pubsub:v1beta1a/PubsubMessage/label": label +"/pubsub:v1beta1a/PubsubMessage/label/label": label +"/pubsub:v1beta1a/PubsubMessage/messageId": message_id +"/pubsub:v1beta1a/PubsubMessage/publishTime": publish_time +"/pubsub:v1beta1a/PullBatchRequest": pull_batch_request +"/pubsub:v1beta1a/PullBatchRequest/maxEvents": max_events +"/pubsub:v1beta1a/PullBatchRequest/returnImmediately": return_immediately +"/pubsub:v1beta1a/PullBatchRequest/subscription": subscription +"/pubsub:v1beta1a/PullBatchResponse": pull_batch_response +"/pubsub:v1beta1a/PullBatchResponse/pullResponses": pull_responses +"/pubsub:v1beta1a/PullBatchResponse/pullResponses/pull_response": pull_response +"/pubsub:v1beta1a/PullRequest": pull_request +"/pubsub:v1beta1a/PullRequest/returnImmediately": return_immediately +"/pubsub:v1beta1a/PullRequest/subscription": subscription +"/pubsub:v1beta1a/PullResponse": pull_response +"/pubsub:v1beta1a/PullResponse/ackId": ack_id +"/pubsub:v1beta1a/PullResponse/pubsubEvent": pubsub_event +"/pubsub:v1beta1a/PushConfig": push_config +"/pubsub:v1beta1a/PushConfig/pushEndpoint": push_endpoint +"/pubsub:v1beta1a/Subscription": subscription +"/pubsub:v1beta1a/Subscription/ackDeadlineSeconds": ack_deadline_seconds +"/pubsub:v1beta1a/Subscription/name": name +"/pubsub:v1beta1a/Subscription/pushConfig": push_config +"/pubsub:v1beta1a/Subscription/topic": topic +"/pubsub:v1beta1a/Topic": topic +"/pubsub:v1beta1a/Topic/name": name +"/pubsub:v1beta1a/fields": fields +"/pubsub:v1beta1a/key": key +"/pubsub:v1beta1a/pubsub.subscriptions.acknowledge": acknowledge_subscription +"/pubsub:v1beta1a/pubsub.subscriptions.create": create_subscription +"/pubsub:v1beta1a/pubsub.subscriptions.delete": delete_subscription +"/pubsub:v1beta1a/pubsub.subscriptions.delete/subscription": subscription +"/pubsub:v1beta1a/pubsub.subscriptions.get": get_subscription +"/pubsub:v1beta1a/pubsub.subscriptions.get/subscription": subscription +"/pubsub:v1beta1a/pubsub.subscriptions.list": list_subscriptions +"/pubsub:v1beta1a/pubsub.subscriptions.list/maxResults": max_results +"/pubsub:v1beta1a/pubsub.subscriptions.list/pageToken": page_token +"/pubsub:v1beta1a/pubsub.subscriptions.list/query": query +"/pubsub:v1beta1a/pubsub.subscriptions.modifyAckDeadline": modify_subscription_ack_deadline +"/pubsub:v1beta1a/pubsub.subscriptions.modifyPushConfig": modify_subscription_push_config +"/pubsub:v1beta1a/pubsub.subscriptions.pull": pull_subscription +"/pubsub:v1beta1a/pubsub.subscriptions.pullBatch": pull_subscription_batch +"/pubsub:v1beta1a/pubsub.topics.create": create_topic +"/pubsub:v1beta1a/pubsub.topics.delete": delete_topic +"/pubsub:v1beta1a/pubsub.topics.delete/topic": topic +"/pubsub:v1beta1a/pubsub.topics.get": get_topic +"/pubsub:v1beta1a/pubsub.topics.get/topic": topic +"/pubsub:v1beta1a/pubsub.topics.list": list_topics +"/pubsub:v1beta1a/pubsub.topics.list/maxResults": max_results +"/pubsub:v1beta1a/pubsub.topics.list/pageToken": page_token +"/pubsub:v1beta1a/pubsub.topics.list/query": query +"/pubsub:v1beta1a/pubsub.topics.publish": publish_topic +"/pubsub:v1beta1a/pubsub.topics.publishBatch": publish_topic_batch +"/pubsub:v1beta1a/quotaUser": quota_user +"/pubsub:v1beta2/AcknowledgeRequest": acknowledge_request +"/pubsub:v1beta2/AcknowledgeRequest/ackIds": ack_ids +"/pubsub:v1beta2/AcknowledgeRequest/ackIds/ack_id": ack_id +"/pubsub:v1beta2/Binding": binding +"/pubsub:v1beta2/Binding/members": members +"/pubsub:v1beta2/Binding/members/member": member +"/pubsub:v1beta2/Binding/role": role +"/pubsub:v1beta2/Empty": empty +"/pubsub:v1beta2/ListSubscriptionsResponse": list_subscriptions_response +"/pubsub:v1beta2/ListSubscriptionsResponse/nextPageToken": next_page_token +"/pubsub:v1beta2/ListSubscriptionsResponse/subscriptions": subscriptions +"/pubsub:v1beta2/ListSubscriptionsResponse/subscriptions/subscription": subscription +"/pubsub:v1beta2/ListTopicSubscriptionsResponse": list_topic_subscriptions_response +"/pubsub:v1beta2/ListTopicSubscriptionsResponse/nextPageToken": next_page_token +"/pubsub:v1beta2/ListTopicSubscriptionsResponse/subscriptions": subscriptions +"/pubsub:v1beta2/ListTopicSubscriptionsResponse/subscriptions/subscription": subscription +"/pubsub:v1beta2/ListTopicsResponse": list_topics_response +"/pubsub:v1beta2/ListTopicsResponse/nextPageToken": next_page_token +"/pubsub:v1beta2/ListTopicsResponse/topics": topics +"/pubsub:v1beta2/ListTopicsResponse/topics/topic": topic +"/pubsub:v1beta2/ModifyAckDeadlineRequest": modify_ack_deadline_request +"/pubsub:v1beta2/ModifyAckDeadlineRequest/ackDeadlineSeconds": ack_deadline_seconds +"/pubsub:v1beta2/ModifyAckDeadlineRequest/ackId": ack_id +"/pubsub:v1beta2/ModifyAckDeadlineRequest/ackIds": ack_ids +"/pubsub:v1beta2/ModifyAckDeadlineRequest/ackIds/ack_id": ack_id +"/pubsub:v1beta2/ModifyPushConfigRequest": modify_push_config_request +"/pubsub:v1beta2/ModifyPushConfigRequest/pushConfig": push_config +"/pubsub:v1beta2/Policy": policy +"/pubsub:v1beta2/Policy/bindings": bindings +"/pubsub:v1beta2/Policy/bindings/binding": binding +"/pubsub:v1beta2/Policy/etag": etag +"/pubsub:v1beta2/Policy/version": version +"/pubsub:v1beta2/PublishRequest": publish_request +"/pubsub:v1beta2/PublishRequest/messages": messages +"/pubsub:v1beta2/PublishRequest/messages/message": message +"/pubsub:v1beta2/PublishResponse": publish_response +"/pubsub:v1beta2/PublishResponse/messageIds": message_ids +"/pubsub:v1beta2/PublishResponse/messageIds/message_id": message_id +"/pubsub:v1beta2/PubsubMessage": pubsub_message +"/pubsub:v1beta2/PubsubMessage/attributes": attributes +"/pubsub:v1beta2/PubsubMessage/attributes/attribute": attribute +"/pubsub:v1beta2/PubsubMessage/data": data +"/pubsub:v1beta2/PubsubMessage/messageId": message_id +"/pubsub:v1beta2/PubsubMessage/publishTime": publish_time +"/pubsub:v1beta2/PullRequest": pull_request +"/pubsub:v1beta2/PullRequest/maxMessages": max_messages +"/pubsub:v1beta2/PullRequest/returnImmediately": return_immediately +"/pubsub:v1beta2/PullResponse": pull_response +"/pubsub:v1beta2/PullResponse/receivedMessages": received_messages +"/pubsub:v1beta2/PullResponse/receivedMessages/received_message": received_message +"/pubsub:v1beta2/PushConfig": push_config +"/pubsub:v1beta2/PushConfig/attributes": attributes +"/pubsub:v1beta2/PushConfig/attributes/attribute": attribute +"/pubsub:v1beta2/PushConfig/pushEndpoint": push_endpoint +"/pubsub:v1beta2/ReceivedMessage": received_message +"/pubsub:v1beta2/ReceivedMessage/ackId": ack_id +"/pubsub:v1beta2/ReceivedMessage/message": message +"/pubsub:v1beta2/SetIamPolicyRequest": set_iam_policy_request +"/pubsub:v1beta2/SetIamPolicyRequest/policy": policy +"/pubsub:v1beta2/Subscription": subscription +"/pubsub:v1beta2/Subscription/ackDeadlineSeconds": ack_deadline_seconds +"/pubsub:v1beta2/Subscription/name": name +"/pubsub:v1beta2/Subscription/pushConfig": push_config +"/pubsub:v1beta2/Subscription/topic": topic +"/pubsub:v1beta2/TestIamPermissionsRequest": test_iam_permissions_request +"/pubsub:v1beta2/TestIamPermissionsRequest/permissions": permissions +"/pubsub:v1beta2/TestIamPermissionsRequest/permissions/permission": permission +"/pubsub:v1beta2/TestIamPermissionsResponse": test_iam_permissions_response +"/pubsub:v1beta2/TestIamPermissionsResponse/permissions": permissions +"/pubsub:v1beta2/TestIamPermissionsResponse/permissions/permission": permission +"/pubsub:v1beta2/Topic": topic +"/pubsub:v1beta2/Topic/name": name +"/pubsub:v1beta2/fields": fields +"/pubsub:v1beta2/key": key +"/pubsub:v1beta2/pubsub.projects.subscriptions.acknowledge": acknowledge_subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.acknowledge/subscription": subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.create": create_project_subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.create/name": name +"/pubsub:v1beta2/pubsub.projects.subscriptions.delete": delete_project_subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.delete/subscription": subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.get": get_project_subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.get/subscription": subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.getIamPolicy": get_project_subscription_iam_policy +"/pubsub:v1beta2/pubsub.projects.subscriptions.getIamPolicy/resource": resource +"/pubsub:v1beta2/pubsub.projects.subscriptions.list": list_project_subscriptions +"/pubsub:v1beta2/pubsub.projects.subscriptions.list/pageSize": page_size +"/pubsub:v1beta2/pubsub.projects.subscriptions.list/pageToken": page_token +"/pubsub:v1beta2/pubsub.projects.subscriptions.list/project": project +"/pubsub:v1beta2/pubsub.projects.subscriptions.modifyAckDeadline": modify_subscription_ack_deadline +"/pubsub:v1beta2/pubsub.projects.subscriptions.modifyAckDeadline/subscription": subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.modifyPushConfig": modify_subscription_push_config +"/pubsub:v1beta2/pubsub.projects.subscriptions.modifyPushConfig/subscription": subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.pull": pull_subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.pull/subscription": subscription +"/pubsub:v1beta2/pubsub.projects.subscriptions.setIamPolicy": set_subscription_iam_policy +"/pubsub:v1beta2/pubsub.projects.subscriptions.setIamPolicy/resource": resource +"/pubsub:v1beta2/pubsub.projects.subscriptions.testIamPermissions": test_subscription_iam_permissions +"/pubsub:v1beta2/pubsub.projects.subscriptions.testIamPermissions/resource": resource +"/pubsub:v1beta2/pubsub.projects.topics.create": create_project_topic +"/pubsub:v1beta2/pubsub.projects.topics.create/name": name +"/pubsub:v1beta2/pubsub.projects.topics.delete": delete_project_topic +"/pubsub:v1beta2/pubsub.projects.topics.delete/topic": topic +"/pubsub:v1beta2/pubsub.projects.topics.get": get_project_topic +"/pubsub:v1beta2/pubsub.projects.topics.get/topic": topic +"/pubsub:v1beta2/pubsub.projects.topics.getIamPolicy": get_project_topic_iam_policy +"/pubsub:v1beta2/pubsub.projects.topics.getIamPolicy/resource": resource +"/pubsub:v1beta2/pubsub.projects.topics.list": list_project_topics +"/pubsub:v1beta2/pubsub.projects.topics.list/pageSize": page_size +"/pubsub:v1beta2/pubsub.projects.topics.list/pageToken": page_token +"/pubsub:v1beta2/pubsub.projects.topics.list/project": project +"/pubsub:v1beta2/pubsub.projects.topics.publish": publish_topic +"/pubsub:v1beta2/pubsub.projects.topics.publish/topic": topic +"/pubsub:v1beta2/pubsub.projects.topics.setIamPolicy": set_topic_iam_policy +"/pubsub:v1beta2/pubsub.projects.topics.setIamPolicy/resource": resource +"/pubsub:v1beta2/pubsub.projects.topics.subscriptions.list": list_project_topic_subscriptions +"/pubsub:v1beta2/pubsub.projects.topics.subscriptions.list/pageSize": page_size +"/pubsub:v1beta2/pubsub.projects.topics.subscriptions.list/pageToken": page_token +"/pubsub:v1beta2/pubsub.projects.topics.subscriptions.list/topic": topic +"/pubsub:v1beta2/pubsub.projects.topics.testIamPermissions": test_topic_iam_permissions +"/pubsub:v1beta2/pubsub.projects.topics.testIamPermissions/resource": resource +"/pubsub:v1beta2/quotaUser": quota_user "/qpxExpress:v1/AircraftData": aircraft_data "/qpxExpress:v1/AircraftData/code": code "/qpxExpress:v1/AircraftData/kind": kind @@ -36040,6 +47657,183 @@ "/qpxExpress:v1/qpxExpress.trips.search": search_trips "/qpxExpress:v1/quotaUser": quota_user "/qpxExpress:v1/userIp": user_ip +"/replicapool:v1beta1/AccessConfig": access_config +"/replicapool:v1beta1/AccessConfig/name": name +"/replicapool:v1beta1/AccessConfig/natIp": nat_ip +"/replicapool:v1beta1/AccessConfig/type": type +"/replicapool:v1beta1/Action": action +"/replicapool:v1beta1/Action/commands": commands +"/replicapool:v1beta1/Action/commands/command": command +"/replicapool:v1beta1/Action/envVariables": env_variables +"/replicapool:v1beta1/Action/envVariables/env_variable": env_variable +"/replicapool:v1beta1/Action/timeoutMilliSeconds": timeout_milli_seconds +"/replicapool:v1beta1/DiskAttachment": disk_attachment +"/replicapool:v1beta1/DiskAttachment/deviceName": device_name +"/replicapool:v1beta1/DiskAttachment/index": index +"/replicapool:v1beta1/EnvVariable": env_variable +"/replicapool:v1beta1/EnvVariable/hidden": hidden +"/replicapool:v1beta1/EnvVariable/name": name +"/replicapool:v1beta1/EnvVariable/value": value +"/replicapool:v1beta1/ExistingDisk": existing_disk +"/replicapool:v1beta1/ExistingDisk/attachment": attachment +"/replicapool:v1beta1/ExistingDisk/source": source +"/replicapool:v1beta1/HealthCheck": health_check +"/replicapool:v1beta1/HealthCheck/checkIntervalSec": check_interval_sec +"/replicapool:v1beta1/HealthCheck/description": description +"/replicapool:v1beta1/HealthCheck/healthyThreshold": healthy_threshold +"/replicapool:v1beta1/HealthCheck/host": host +"/replicapool:v1beta1/HealthCheck/name": name +"/replicapool:v1beta1/HealthCheck/path": path +"/replicapool:v1beta1/HealthCheck/port": port +"/replicapool:v1beta1/HealthCheck/timeoutSec": timeout_sec +"/replicapool:v1beta1/HealthCheck/unhealthyThreshold": unhealthy_threshold +"/replicapool:v1beta1/Label": label +"/replicapool:v1beta1/Label/key": key +"/replicapool:v1beta1/Label/value": value +"/replicapool:v1beta1/Metadata": metadata +"/replicapool:v1beta1/Metadata/fingerPrint": finger_print +"/replicapool:v1beta1/Metadata/items": items +"/replicapool:v1beta1/Metadata/items/item": item +"/replicapool:v1beta1/MetadataItem": metadata_item +"/replicapool:v1beta1/MetadataItem/key": key +"/replicapool:v1beta1/MetadataItem/value": value +"/replicapool:v1beta1/NetworkInterface": network_interface +"/replicapool:v1beta1/NetworkInterface/accessConfigs": access_configs +"/replicapool:v1beta1/NetworkInterface/accessConfigs/access_config": access_config +"/replicapool:v1beta1/NetworkInterface/network": network +"/replicapool:v1beta1/NetworkInterface/networkIp": network_ip +"/replicapool:v1beta1/NewDisk": new_disk +"/replicapool:v1beta1/NewDisk/attachment": attachment +"/replicapool:v1beta1/NewDisk/autoDelete": auto_delete +"/replicapool:v1beta1/NewDisk/boot": boot +"/replicapool:v1beta1/NewDisk/initializeParams": initialize_params +"/replicapool:v1beta1/NewDiskInitializeParams": new_disk_initialize_params +"/replicapool:v1beta1/NewDiskInitializeParams/diskSizeGb": disk_size_gb +"/replicapool:v1beta1/NewDiskInitializeParams/diskType": disk_type +"/replicapool:v1beta1/NewDiskInitializeParams/sourceImage": source_image +"/replicapool:v1beta1/Pool": pool +"/replicapool:v1beta1/Pool/autoRestart": auto_restart +"/replicapool:v1beta1/Pool/baseInstanceName": base_instance_name +"/replicapool:v1beta1/Pool/currentNumReplicas": current_num_replicas +"/replicapool:v1beta1/Pool/description": description +"/replicapool:v1beta1/Pool/healthChecks": health_checks +"/replicapool:v1beta1/Pool/healthChecks/health_check": health_check +"/replicapool:v1beta1/Pool/initialNumReplicas": initial_num_replicas +"/replicapool:v1beta1/Pool/labels": labels +"/replicapool:v1beta1/Pool/labels/label": label +"/replicapool:v1beta1/Pool/name": name +"/replicapool:v1beta1/Pool/numReplicas": num_replicas +"/replicapool:v1beta1/Pool/resourceViews": resource_views +"/replicapool:v1beta1/Pool/resourceViews/resource_view": resource_view +"/replicapool:v1beta1/Pool/selfLink": self_link +"/replicapool:v1beta1/Pool/targetPool": target_pool +"/replicapool:v1beta1/Pool/targetPools": target_pools +"/replicapool:v1beta1/Pool/targetPools/target_pool": target_pool +"/replicapool:v1beta1/Pool/template": template +"/replicapool:v1beta1/Pool/type": type +"/replicapool:v1beta1/PoolsDeleteRequest": pools_delete_request +"/replicapool:v1beta1/PoolsDeleteRequest/abandonInstances": abandon_instances +"/replicapool:v1beta1/PoolsDeleteRequest/abandonInstances/abandon_instance": abandon_instance +"/replicapool:v1beta1/PoolsListResponse": pools_list_response +"/replicapool:v1beta1/PoolsListResponse/nextPageToken": next_page_token +"/replicapool:v1beta1/PoolsListResponse/resources": resources +"/replicapool:v1beta1/PoolsListResponse/resources/resource": resource +"/replicapool:v1beta1/Replica": replica +"/replicapool:v1beta1/Replica/name": name +"/replicapool:v1beta1/Replica/selfLink": self_link +"/replicapool:v1beta1/Replica/status": status +"/replicapool:v1beta1/ReplicaStatus": replica_status +"/replicapool:v1beta1/ReplicaStatus/details": details +"/replicapool:v1beta1/ReplicaStatus/state": state +"/replicapool:v1beta1/ReplicaStatus/templateVersion": template_version +"/replicapool:v1beta1/ReplicaStatus/vmLink": vm_link +"/replicapool:v1beta1/ReplicaStatus/vmStartTime": vm_start_time +"/replicapool:v1beta1/ReplicasDeleteRequest": replicas_delete_request +"/replicapool:v1beta1/ReplicasDeleteRequest/abandonInstance": abandon_instance +"/replicapool:v1beta1/ReplicasListResponse": replicas_list_response +"/replicapool:v1beta1/ReplicasListResponse/nextPageToken": next_page_token +"/replicapool:v1beta1/ReplicasListResponse/resources": resources +"/replicapool:v1beta1/ReplicasListResponse/resources/resource": resource +"/replicapool:v1beta1/ServiceAccount": service_account +"/replicapool:v1beta1/ServiceAccount/email": email +"/replicapool:v1beta1/ServiceAccount/scopes": scopes +"/replicapool:v1beta1/ServiceAccount/scopes/scope": scope +"/replicapool:v1beta1/Tag": tag +"/replicapool:v1beta1/Tag/fingerPrint": finger_print +"/replicapool:v1beta1/Tag/items": items +"/replicapool:v1beta1/Tag/items/item": item +"/replicapool:v1beta1/Template": template +"/replicapool:v1beta1/Template/action": action +"/replicapool:v1beta1/Template/healthChecks": health_checks +"/replicapool:v1beta1/Template/healthChecks/health_check": health_check +"/replicapool:v1beta1/Template/version": version +"/replicapool:v1beta1/Template/vmParams": vm_params +"/replicapool:v1beta1/VmParams": vm_params +"/replicapool:v1beta1/VmParams/baseInstanceName": base_instance_name +"/replicapool:v1beta1/VmParams/canIpForward": can_ip_forward +"/replicapool:v1beta1/VmParams/description": description +"/replicapool:v1beta1/VmParams/disksToAttach": disks_to_attach +"/replicapool:v1beta1/VmParams/disksToAttach/disks_to_attach": disks_to_attach +"/replicapool:v1beta1/VmParams/disksToCreate": disks_to_create +"/replicapool:v1beta1/VmParams/disksToCreate/disks_to_create": disks_to_create +"/replicapool:v1beta1/VmParams/machineType": machine_type +"/replicapool:v1beta1/VmParams/metadata": metadata +"/replicapool:v1beta1/VmParams/networkInterfaces": network_interfaces +"/replicapool:v1beta1/VmParams/networkInterfaces/network_interface": network_interface +"/replicapool:v1beta1/VmParams/onHostMaintenance": on_host_maintenance +"/replicapool:v1beta1/VmParams/serviceAccounts": service_accounts +"/replicapool:v1beta1/VmParams/serviceAccounts/service_account": service_account +"/replicapool:v1beta1/VmParams/tags": tags +"/replicapool:v1beta1/fields": fields +"/replicapool:v1beta1/key": key +"/replicapool:v1beta1/quotaUser": quota_user +"/replicapool:v1beta1/replicapool.pools.delete": delete_pool +"/replicapool:v1beta1/replicapool.pools.delete/poolName": pool_name +"/replicapool:v1beta1/replicapool.pools.delete/projectName": project_name +"/replicapool:v1beta1/replicapool.pools.delete/zone": zone +"/replicapool:v1beta1/replicapool.pools.get": get_pool +"/replicapool:v1beta1/replicapool.pools.get/poolName": pool_name +"/replicapool:v1beta1/replicapool.pools.get/projectName": project_name +"/replicapool:v1beta1/replicapool.pools.get/zone": zone +"/replicapool:v1beta1/replicapool.pools.insert": insert_pool +"/replicapool:v1beta1/replicapool.pools.insert/projectName": project_name +"/replicapool:v1beta1/replicapool.pools.insert/zone": zone +"/replicapool:v1beta1/replicapool.pools.list": list_pools +"/replicapool:v1beta1/replicapool.pools.list/maxResults": max_results +"/replicapool:v1beta1/replicapool.pools.list/pageToken": page_token +"/replicapool:v1beta1/replicapool.pools.list/projectName": project_name +"/replicapool:v1beta1/replicapool.pools.list/zone": zone +"/replicapool:v1beta1/replicapool.pools.resize": resize_pool +"/replicapool:v1beta1/replicapool.pools.resize/numReplicas": num_replicas +"/replicapool:v1beta1/replicapool.pools.resize/poolName": pool_name +"/replicapool:v1beta1/replicapool.pools.resize/projectName": project_name +"/replicapool:v1beta1/replicapool.pools.resize/zone": zone +"/replicapool:v1beta1/replicapool.pools.updatetemplate": updatetemplate_pool +"/replicapool:v1beta1/replicapool.pools.updatetemplate/poolName": pool_name +"/replicapool:v1beta1/replicapool.pools.updatetemplate/projectName": project_name +"/replicapool:v1beta1/replicapool.pools.updatetemplate/zone": zone +"/replicapool:v1beta1/replicapool.replicas.delete": delete_replica +"/replicapool:v1beta1/replicapool.replicas.delete/poolName": pool_name +"/replicapool:v1beta1/replicapool.replicas.delete/projectName": project_name +"/replicapool:v1beta1/replicapool.replicas.delete/replicaName": replica_name +"/replicapool:v1beta1/replicapool.replicas.delete/zone": zone +"/replicapool:v1beta1/replicapool.replicas.get": get_replica +"/replicapool:v1beta1/replicapool.replicas.get/poolName": pool_name +"/replicapool:v1beta1/replicapool.replicas.get/projectName": project_name +"/replicapool:v1beta1/replicapool.replicas.get/replicaName": replica_name +"/replicapool:v1beta1/replicapool.replicas.get/zone": zone +"/replicapool:v1beta1/replicapool.replicas.list": list_replicas +"/replicapool:v1beta1/replicapool.replicas.list/maxResults": max_results +"/replicapool:v1beta1/replicapool.replicas.list/pageToken": page_token +"/replicapool:v1beta1/replicapool.replicas.list/poolName": pool_name +"/replicapool:v1beta1/replicapool.replicas.list/projectName": project_name +"/replicapool:v1beta1/replicapool.replicas.list/zone": zone +"/replicapool:v1beta1/replicapool.replicas.restart": restart_replica +"/replicapool:v1beta1/replicapool.replicas.restart/poolName": pool_name +"/replicapool:v1beta1/replicapool.replicas.restart/projectName": project_name +"/replicapool:v1beta1/replicapool.replicas.restart/replicaName": replica_name +"/replicapool:v1beta1/replicapool.replicas.restart/zone": zone +"/replicapool:v1beta1/userIp": user_ip "/replicapool:v1beta2/InstanceGroupManager": instance_group_manager "/replicapool:v1beta2/InstanceGroupManager/autoHealingPolicies": auto_healing_policies "/replicapool:v1beta2/InstanceGroupManager/autoHealingPolicies/auto_healing_policy": auto_healing_policy @@ -36446,6 +48240,118 @@ "/reseller:v1/reseller.subscriptions.suspend/customerId": customer_id "/reseller:v1/reseller.subscriptions.suspend/subscriptionId": subscription_id "/reseller:v1/userIp": user_ip +"/resourceviews:v1beta1/Label": label +"/resourceviews:v1beta1/Label/key": key +"/resourceviews:v1beta1/Label/value": value +"/resourceviews:v1beta1/RegionViewsAddResourcesRequest": region_views_add_resources_request +"/resourceviews:v1beta1/RegionViewsAddResourcesRequest/resources": resources +"/resourceviews:v1beta1/RegionViewsAddResourcesRequest/resources/resource": resource +"/resourceviews:v1beta1/RegionViewsInsertResponse": region_views_insert_response +"/resourceviews:v1beta1/RegionViewsInsertResponse/resource": resource +"/resourceviews:v1beta1/RegionViewsListResourcesResponse": region_views_list_resources_response +"/resourceviews:v1beta1/RegionViewsListResourcesResponse/members": members +"/resourceviews:v1beta1/RegionViewsListResourcesResponse/members/member": member +"/resourceviews:v1beta1/RegionViewsListResourcesResponse/nextPageToken": next_page_token +"/resourceviews:v1beta1/RegionViewsListResponse": region_views_list_response +"/resourceviews:v1beta1/RegionViewsListResponse/nextPageToken": next_page_token +"/resourceviews:v1beta1/RegionViewsListResponse/resourceViews": resource_views +"/resourceviews:v1beta1/RegionViewsListResponse/resourceViews/resource_view": resource_view +"/resourceviews:v1beta1/RegionViewsRemoveResourcesRequest": region_views_remove_resources_request +"/resourceviews:v1beta1/RegionViewsRemoveResourcesRequest/resources": resources +"/resourceviews:v1beta1/RegionViewsRemoveResourcesRequest/resources/resource": resource +"/resourceviews:v1beta1/ResourceView": resource_view +"/resourceviews:v1beta1/ResourceView/creationTime": creation_time +"/resourceviews:v1beta1/ResourceView/description": description +"/resourceviews:v1beta1/ResourceView/id": id +"/resourceviews:v1beta1/ResourceView/kind": kind +"/resourceviews:v1beta1/ResourceView/labels": labels +"/resourceviews:v1beta1/ResourceView/labels/label": label +"/resourceviews:v1beta1/ResourceView/lastModified": last_modified +"/resourceviews:v1beta1/ResourceView/members": members +"/resourceviews:v1beta1/ResourceView/members/member": member +"/resourceviews:v1beta1/ResourceView/name": name +"/resourceviews:v1beta1/ResourceView/numMembers": num_members +"/resourceviews:v1beta1/ResourceView/selfLink": self_link +"/resourceviews:v1beta1/ZoneViewsAddResourcesRequest": zone_views_add_resources_request +"/resourceviews:v1beta1/ZoneViewsAddResourcesRequest/resources": resources +"/resourceviews:v1beta1/ZoneViewsAddResourcesRequest/resources/resource": resource +"/resourceviews:v1beta1/ZoneViewsInsertResponse": zone_views_insert_response +"/resourceviews:v1beta1/ZoneViewsInsertResponse/resource": resource +"/resourceviews:v1beta1/ZoneViewsListResourcesResponse": zone_views_list_resources_response +"/resourceviews:v1beta1/ZoneViewsListResourcesResponse/members": members +"/resourceviews:v1beta1/ZoneViewsListResourcesResponse/members/member": member +"/resourceviews:v1beta1/ZoneViewsListResourcesResponse/nextPageToken": next_page_token +"/resourceviews:v1beta1/ZoneViewsListResponse": zone_views_list_response +"/resourceviews:v1beta1/ZoneViewsListResponse/nextPageToken": next_page_token +"/resourceviews:v1beta1/ZoneViewsListResponse/resourceViews": resource_views +"/resourceviews:v1beta1/ZoneViewsListResponse/resourceViews/resource_view": resource_view +"/resourceviews:v1beta1/ZoneViewsRemoveResourcesRequest": zone_views_remove_resources_request +"/resourceviews:v1beta1/ZoneViewsRemoveResourcesRequest/resources": resources +"/resourceviews:v1beta1/ZoneViewsRemoveResourcesRequest/resources/resource": resource +"/resourceviews:v1beta1/fields": fields +"/resourceviews:v1beta1/key": key +"/resourceviews:v1beta1/quotaUser": quota_user +"/resourceviews:v1beta1/resourceviews.regionViews.addresources": addresources_region_view +"/resourceviews:v1beta1/resourceviews.regionViews.addresources/projectName": project_name +"/resourceviews:v1beta1/resourceviews.regionViews.addresources/region": region +"/resourceviews:v1beta1/resourceviews.regionViews.addresources/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.regionViews.delete": delete_region_view +"/resourceviews:v1beta1/resourceviews.regionViews.delete/projectName": project_name +"/resourceviews:v1beta1/resourceviews.regionViews.delete/region": region +"/resourceviews:v1beta1/resourceviews.regionViews.delete/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.regionViews.get": get_region_view +"/resourceviews:v1beta1/resourceviews.regionViews.get/projectName": project_name +"/resourceviews:v1beta1/resourceviews.regionViews.get/region": region +"/resourceviews:v1beta1/resourceviews.regionViews.get/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.regionViews.insert": insert_region_view +"/resourceviews:v1beta1/resourceviews.regionViews.insert/projectName": project_name +"/resourceviews:v1beta1/resourceviews.regionViews.insert/region": region +"/resourceviews:v1beta1/resourceviews.regionViews.list": list_region_views +"/resourceviews:v1beta1/resourceviews.regionViews.list/maxResults": max_results +"/resourceviews:v1beta1/resourceviews.regionViews.list/pageToken": page_token +"/resourceviews:v1beta1/resourceviews.regionViews.list/projectName": project_name +"/resourceviews:v1beta1/resourceviews.regionViews.list/region": region +"/resourceviews:v1beta1/resourceviews.regionViews.listresources": listresources_region_view +"/resourceviews:v1beta1/resourceviews.regionViews.listresources/maxResults": max_results +"/resourceviews:v1beta1/resourceviews.regionViews.listresources/pageToken": page_token +"/resourceviews:v1beta1/resourceviews.regionViews.listresources/projectName": project_name +"/resourceviews:v1beta1/resourceviews.regionViews.listresources/region": region +"/resourceviews:v1beta1/resourceviews.regionViews.listresources/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.regionViews.removeresources": removeresources_region_view +"/resourceviews:v1beta1/resourceviews.regionViews.removeresources/projectName": project_name +"/resourceviews:v1beta1/resourceviews.regionViews.removeresources/region": region +"/resourceviews:v1beta1/resourceviews.regionViews.removeresources/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.zoneViews.addresources": addresources_zone_view +"/resourceviews:v1beta1/resourceviews.zoneViews.addresources/projectName": project_name +"/resourceviews:v1beta1/resourceviews.zoneViews.addresources/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.zoneViews.addresources/zone": zone +"/resourceviews:v1beta1/resourceviews.zoneViews.delete": delete_zone_view +"/resourceviews:v1beta1/resourceviews.zoneViews.delete/projectName": project_name +"/resourceviews:v1beta1/resourceviews.zoneViews.delete/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.zoneViews.delete/zone": zone +"/resourceviews:v1beta1/resourceviews.zoneViews.get": get_zone_view +"/resourceviews:v1beta1/resourceviews.zoneViews.get/projectName": project_name +"/resourceviews:v1beta1/resourceviews.zoneViews.get/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.zoneViews.get/zone": zone +"/resourceviews:v1beta1/resourceviews.zoneViews.insert": insert_zone_view +"/resourceviews:v1beta1/resourceviews.zoneViews.insert/projectName": project_name +"/resourceviews:v1beta1/resourceviews.zoneViews.insert/zone": zone +"/resourceviews:v1beta1/resourceviews.zoneViews.list": list_zone_views +"/resourceviews:v1beta1/resourceviews.zoneViews.list/maxResults": max_results +"/resourceviews:v1beta1/resourceviews.zoneViews.list/pageToken": page_token +"/resourceviews:v1beta1/resourceviews.zoneViews.list/projectName": project_name +"/resourceviews:v1beta1/resourceviews.zoneViews.list/zone": zone +"/resourceviews:v1beta1/resourceviews.zoneViews.listresources": listresources_zone_view +"/resourceviews:v1beta1/resourceviews.zoneViews.listresources/maxResults": max_results +"/resourceviews:v1beta1/resourceviews.zoneViews.listresources/pageToken": page_token +"/resourceviews:v1beta1/resourceviews.zoneViews.listresources/projectName": project_name +"/resourceviews:v1beta1/resourceviews.zoneViews.listresources/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.zoneViews.listresources/zone": zone +"/resourceviews:v1beta1/resourceviews.zoneViews.removeresources": removeresources_zone_view +"/resourceviews:v1beta1/resourceviews.zoneViews.removeresources/projectName": project_name +"/resourceviews:v1beta1/resourceviews.zoneViews.removeresources/resourceViewName": resource_view_name +"/resourceviews:v1beta1/resourceviews.zoneViews.removeresources/zone": zone +"/resourceviews:v1beta1/userIp": user_ip "/resourceviews:v1beta2/Label": label "/resourceviews:v1beta2/Label/key": key "/resourceviews:v1beta2/Label/value": value @@ -36629,6 +48535,133 @@ "/runtimeconfig:v1/runtimeconfig.operations.list/name": name "/runtimeconfig:v1/runtimeconfig.operations.list/pageSize": page_size "/runtimeconfig:v1/runtimeconfig.operations.list/pageToken": page_token +"/runtimeconfig:v1beta1/Binding": binding +"/runtimeconfig:v1beta1/Binding/members": members +"/runtimeconfig:v1beta1/Binding/members/member": member +"/runtimeconfig:v1beta1/Binding/role": role +"/runtimeconfig:v1beta1/Cardinality": cardinality +"/runtimeconfig:v1beta1/Cardinality/number": number +"/runtimeconfig:v1beta1/Cardinality/path": path +"/runtimeconfig:v1beta1/Empty": empty +"/runtimeconfig:v1beta1/EndCondition": end_condition +"/runtimeconfig:v1beta1/EndCondition/cardinality": cardinality +"/runtimeconfig:v1beta1/ListConfigsResponse": list_configs_response +"/runtimeconfig:v1beta1/ListConfigsResponse/configs": configs +"/runtimeconfig:v1beta1/ListConfigsResponse/configs/config": config +"/runtimeconfig:v1beta1/ListConfigsResponse/nextPageToken": next_page_token +"/runtimeconfig:v1beta1/ListVariablesResponse": list_variables_response +"/runtimeconfig:v1beta1/ListVariablesResponse/nextPageToken": next_page_token +"/runtimeconfig:v1beta1/ListVariablesResponse/variables": variables +"/runtimeconfig:v1beta1/ListVariablesResponse/variables/variable": variable +"/runtimeconfig:v1beta1/ListWaitersResponse": list_waiters_response +"/runtimeconfig:v1beta1/ListWaitersResponse/nextPageToken": next_page_token +"/runtimeconfig:v1beta1/ListWaitersResponse/waiters": waiters +"/runtimeconfig:v1beta1/ListWaitersResponse/waiters/waiter": waiter +"/runtimeconfig:v1beta1/Operation": operation +"/runtimeconfig:v1beta1/Operation/done": done +"/runtimeconfig:v1beta1/Operation/error": error +"/runtimeconfig:v1beta1/Operation/metadata": metadata +"/runtimeconfig:v1beta1/Operation/metadata/metadatum": metadatum +"/runtimeconfig:v1beta1/Operation/name": name +"/runtimeconfig:v1beta1/Operation/response": response +"/runtimeconfig:v1beta1/Operation/response/response": response +"/runtimeconfig:v1beta1/Policy": policy +"/runtimeconfig:v1beta1/Policy/bindings": bindings +"/runtimeconfig:v1beta1/Policy/bindings/binding": binding +"/runtimeconfig:v1beta1/Policy/etag": etag +"/runtimeconfig:v1beta1/Policy/version": version +"/runtimeconfig:v1beta1/RuntimeConfig": runtime_config +"/runtimeconfig:v1beta1/RuntimeConfig/description": description +"/runtimeconfig:v1beta1/RuntimeConfig/name": name +"/runtimeconfig:v1beta1/SetIamPolicyRequest": set_iam_policy_request +"/runtimeconfig:v1beta1/SetIamPolicyRequest/policy": policy +"/runtimeconfig:v1beta1/Status": status +"/runtimeconfig:v1beta1/Status/code": code +"/runtimeconfig:v1beta1/Status/details": details +"/runtimeconfig:v1beta1/Status/details/detail": detail +"/runtimeconfig:v1beta1/Status/details/detail/detail": detail +"/runtimeconfig:v1beta1/Status/message": message +"/runtimeconfig:v1beta1/TestIamPermissionsRequest": test_iam_permissions_request +"/runtimeconfig:v1beta1/TestIamPermissionsRequest/permissions": permissions +"/runtimeconfig:v1beta1/TestIamPermissionsRequest/permissions/permission": permission +"/runtimeconfig:v1beta1/TestIamPermissionsResponse": test_iam_permissions_response +"/runtimeconfig:v1beta1/TestIamPermissionsResponse/permissions": permissions +"/runtimeconfig:v1beta1/TestIamPermissionsResponse/permissions/permission": permission +"/runtimeconfig:v1beta1/Variable": variable +"/runtimeconfig:v1beta1/Variable/name": name +"/runtimeconfig:v1beta1/Variable/state": state +"/runtimeconfig:v1beta1/Variable/text": text +"/runtimeconfig:v1beta1/Variable/updateTime": update_time +"/runtimeconfig:v1beta1/Variable/value": value +"/runtimeconfig:v1beta1/Waiter": waiter +"/runtimeconfig:v1beta1/Waiter/createTime": create_time +"/runtimeconfig:v1beta1/Waiter/done": done +"/runtimeconfig:v1beta1/Waiter/error": error +"/runtimeconfig:v1beta1/Waiter/failure": failure +"/runtimeconfig:v1beta1/Waiter/name": name +"/runtimeconfig:v1beta1/Waiter/success": success +"/runtimeconfig:v1beta1/Waiter/timeout": timeout +"/runtimeconfig:v1beta1/WatchVariableRequest": watch_variable_request +"/runtimeconfig:v1beta1/WatchVariableRequest/newerThan": newer_than +"/runtimeconfig:v1beta1/fields": fields +"/runtimeconfig:v1beta1/key": key +"/runtimeconfig:v1beta1/quotaUser": quota_user +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.create": create_project_config +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.create/parent": parent +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.create/requestId": request_id +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.delete": delete_project_config +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.delete/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.get": get_project_config +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.get/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.getIamPolicy": get_project_config_iam_policy +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.getIamPolicy/resource": resource +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.list": list_project_configs +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.list/pageSize": page_size +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.list/pageToken": page_token +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.list/parent": parent +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.operations.get": get_project_config_operation +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.operations.get/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.operations.testIamPermissions": test_operation_iam_permissions +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.operations.testIamPermissions/resource": resource +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.setIamPolicy": set_config_iam_policy +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.setIamPolicy/resource": resource +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.testIamPermissions": test_config_iam_permissions +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.testIamPermissions/resource": resource +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.update": update_project_config +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.update/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.create": create_project_config_variable +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.create/parent": parent +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.create/requestId": request_id +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.delete": delete_project_config_variable +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.delete/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.delete/recursive": recursive +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.get": get_project_config_variable +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.get/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.list": list_project_config_variables +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.list/filter": filter +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.list/pageSize": page_size +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.list/pageToken": page_token +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.list/parent": parent +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.list/returnValues": return_values +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.testIamPermissions": test_variable_iam_permissions +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.testIamPermissions/resource": resource +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.update": update_project_config_variable +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.update/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.watch": watch_variable +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.variables.watch/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.create": create_project_config_waiter +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.create/parent": parent +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.create/requestId": request_id +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.delete": delete_project_config_waiter +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.delete/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.get": get_project_config_waiter +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.get/name": name +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.list": list_project_config_waiters +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.list/pageSize": page_size +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.list/pageToken": page_token +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.list/parent": parent +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.testIamPermissions": test_waiter_iam_permissions +"/runtimeconfig:v1beta1/runtimeconfig.projects.configs.waiters.testIamPermissions/resource": resource "/safebrowsing:v4/Checksum": checksum "/safebrowsing:v4/Checksum/sha256": sha256 "/safebrowsing:v4/ClientInfo": client_info @@ -40092,6 +52125,306 @@ "/speech:v1beta1/speech.operations.list/pageToken": page_token "/speech:v1beta1/speech.speech.asyncrecognize": async_recognize_speech "/speech:v1beta1/speech.speech.syncrecognize": sync_recognize_speech +"/sqladmin:v1beta3/BackupConfiguration": backup_configuration +"/sqladmin:v1beta3/BackupConfiguration/binaryLogEnabled": binary_log_enabled +"/sqladmin:v1beta3/BackupConfiguration/enabled": enabled +"/sqladmin:v1beta3/BackupConfiguration/id": id +"/sqladmin:v1beta3/BackupConfiguration/kind": kind +"/sqladmin:v1beta3/BackupConfiguration/startTime": start_time +"/sqladmin:v1beta3/BackupRun": backup_run +"/sqladmin:v1beta3/BackupRun/backupConfiguration": backup_configuration +"/sqladmin:v1beta3/BackupRun/dueTime": due_time +"/sqladmin:v1beta3/BackupRun/endTime": end_time +"/sqladmin:v1beta3/BackupRun/enqueuedTime": enqueued_time +"/sqladmin:v1beta3/BackupRun/error": error +"/sqladmin:v1beta3/BackupRun/instance": instance +"/sqladmin:v1beta3/BackupRun/kind": kind +"/sqladmin:v1beta3/BackupRun/startTime": start_time +"/sqladmin:v1beta3/BackupRun/status": status +"/sqladmin:v1beta3/BackupRunsListResponse": backup_runs_list_response +"/sqladmin:v1beta3/BackupRunsListResponse/items": items +"/sqladmin:v1beta3/BackupRunsListResponse/items/item": item +"/sqladmin:v1beta3/BackupRunsListResponse/kind": kind +"/sqladmin:v1beta3/BackupRunsListResponse/nextPageToken": next_page_token +"/sqladmin:v1beta3/BinLogCoordinates": bin_log_coordinates +"/sqladmin:v1beta3/BinLogCoordinates/binLogFileName": bin_log_file_name +"/sqladmin:v1beta3/BinLogCoordinates/binLogPosition": bin_log_position +"/sqladmin:v1beta3/BinLogCoordinates/kind": kind +"/sqladmin:v1beta3/CloneContext": clone_context +"/sqladmin:v1beta3/CloneContext/binLogCoordinates": bin_log_coordinates +"/sqladmin:v1beta3/CloneContext/destinationInstanceName": destination_instance_name +"/sqladmin:v1beta3/CloneContext/kind": kind +"/sqladmin:v1beta3/CloneContext/sourceInstanceName": source_instance_name +"/sqladmin:v1beta3/DatabaseFlags": database_flags +"/sqladmin:v1beta3/DatabaseFlags/name": name +"/sqladmin:v1beta3/DatabaseFlags/value": value +"/sqladmin:v1beta3/DatabaseInstance": database_instance +"/sqladmin:v1beta3/DatabaseInstance/connectionName": connection_name +"/sqladmin:v1beta3/DatabaseInstance/currentDiskSize": current_disk_size +"/sqladmin:v1beta3/DatabaseInstance/databaseVersion": database_version +"/sqladmin:v1beta3/DatabaseInstance/etag": etag +"/sqladmin:v1beta3/DatabaseInstance/instance": instance +"/sqladmin:v1beta3/DatabaseInstance/instanceType": instance_type +"/sqladmin:v1beta3/DatabaseInstance/ipAddresses": ip_addresses +"/sqladmin:v1beta3/DatabaseInstance/ipAddresses/ip_address": ip_address +"/sqladmin:v1beta3/DatabaseInstance/ipv6Address": ipv6_address +"/sqladmin:v1beta3/DatabaseInstance/kind": kind +"/sqladmin:v1beta3/DatabaseInstance/masterInstanceName": master_instance_name +"/sqladmin:v1beta3/DatabaseInstance/maxDiskSize": max_disk_size +"/sqladmin:v1beta3/DatabaseInstance/project": project +"/sqladmin:v1beta3/DatabaseInstance/region": region +"/sqladmin:v1beta3/DatabaseInstance/replicaNames": replica_names +"/sqladmin:v1beta3/DatabaseInstance/replicaNames/replica_name": replica_name +"/sqladmin:v1beta3/DatabaseInstance/serverCaCert": server_ca_cert +"/sqladmin:v1beta3/DatabaseInstance/serviceAccountEmailAddress": service_account_email_address +"/sqladmin:v1beta3/DatabaseInstance/settings": settings +"/sqladmin:v1beta3/DatabaseInstance/state": state +"/sqladmin:v1beta3/ExportContext": export_context +"/sqladmin:v1beta3/ExportContext/database": database +"/sqladmin:v1beta3/ExportContext/database/database": database +"/sqladmin:v1beta3/ExportContext/kind": kind +"/sqladmin:v1beta3/ExportContext/table": table +"/sqladmin:v1beta3/ExportContext/table/table": table +"/sqladmin:v1beta3/ExportContext/uri": uri +"/sqladmin:v1beta3/Flag": flag +"/sqladmin:v1beta3/Flag/allowedStringValues": allowed_string_values +"/sqladmin:v1beta3/Flag/allowedStringValues/allowed_string_value": allowed_string_value +"/sqladmin:v1beta3/Flag/appliesTo": applies_to +"/sqladmin:v1beta3/Flag/appliesTo/applies_to": applies_to +"/sqladmin:v1beta3/Flag/kind": kind +"/sqladmin:v1beta3/Flag/maxValue": max_value +"/sqladmin:v1beta3/Flag/minValue": min_value +"/sqladmin:v1beta3/Flag/name": name +"/sqladmin:v1beta3/Flag/type": type +"/sqladmin:v1beta3/FlagsListResponse": flags_list_response +"/sqladmin:v1beta3/FlagsListResponse/items": items +"/sqladmin:v1beta3/FlagsListResponse/items/item": item +"/sqladmin:v1beta3/FlagsListResponse/kind": kind +"/sqladmin:v1beta3/ImportContext": import_context +"/sqladmin:v1beta3/ImportContext/database": database +"/sqladmin:v1beta3/ImportContext/kind": kind +"/sqladmin:v1beta3/ImportContext/uri": uri +"/sqladmin:v1beta3/ImportContext/uri/uri": uri +"/sqladmin:v1beta3/InstanceOperation": instance_operation +"/sqladmin:v1beta3/InstanceOperation/endTime": end_time +"/sqladmin:v1beta3/InstanceOperation/enqueuedTime": enqueued_time +"/sqladmin:v1beta3/InstanceOperation/error": error +"/sqladmin:v1beta3/InstanceOperation/error/error": error +"/sqladmin:v1beta3/InstanceOperation/exportContext": export_context +"/sqladmin:v1beta3/InstanceOperation/importContext": import_context +"/sqladmin:v1beta3/InstanceOperation/instance": instance +"/sqladmin:v1beta3/InstanceOperation/kind": kind +"/sqladmin:v1beta3/InstanceOperation/operation": operation +"/sqladmin:v1beta3/InstanceOperation/operationType": operation_type +"/sqladmin:v1beta3/InstanceOperation/startTime": start_time +"/sqladmin:v1beta3/InstanceOperation/state": state +"/sqladmin:v1beta3/InstanceOperation/userEmailAddress": user_email_address +"/sqladmin:v1beta3/InstanceSetRootPasswordRequest": instance_set_root_password_request +"/sqladmin:v1beta3/InstanceSetRootPasswordRequest/setRootPasswordContext": set_root_password_context +"/sqladmin:v1beta3/InstancesCloneRequest": instances_clone_request +"/sqladmin:v1beta3/InstancesCloneRequest/cloneContext": clone_context +"/sqladmin:v1beta3/InstancesCloneResponse": instances_clone_response +"/sqladmin:v1beta3/InstancesCloneResponse/kind": kind +"/sqladmin:v1beta3/InstancesCloneResponse/operation": operation +"/sqladmin:v1beta3/InstancesDeleteResponse": instances_delete_response +"/sqladmin:v1beta3/InstancesDeleteResponse/kind": kind +"/sqladmin:v1beta3/InstancesDeleteResponse/operation": operation +"/sqladmin:v1beta3/InstancesExportRequest": instances_export_request +"/sqladmin:v1beta3/InstancesExportRequest/exportContext": export_context +"/sqladmin:v1beta3/InstancesExportResponse": instances_export_response +"/sqladmin:v1beta3/InstancesExportResponse/kind": kind +"/sqladmin:v1beta3/InstancesExportResponse/operation": operation +"/sqladmin:v1beta3/InstancesImportRequest": instances_import_request +"/sqladmin:v1beta3/InstancesImportRequest/importContext": import_context +"/sqladmin:v1beta3/InstancesImportResponse": instances_import_response +"/sqladmin:v1beta3/InstancesImportResponse/kind": kind +"/sqladmin:v1beta3/InstancesImportResponse/operation": operation +"/sqladmin:v1beta3/InstancesInsertResponse": instances_insert_response +"/sqladmin:v1beta3/InstancesInsertResponse/kind": kind +"/sqladmin:v1beta3/InstancesInsertResponse/operation": operation +"/sqladmin:v1beta3/InstancesListResponse": instances_list_response +"/sqladmin:v1beta3/InstancesListResponse/items": items +"/sqladmin:v1beta3/InstancesListResponse/items/item": item +"/sqladmin:v1beta3/InstancesListResponse/kind": kind +"/sqladmin:v1beta3/InstancesListResponse/nextPageToken": next_page_token +"/sqladmin:v1beta3/InstancesPromoteReplicaResponse": instances_promote_replica_response +"/sqladmin:v1beta3/InstancesPromoteReplicaResponse/kind": kind +"/sqladmin:v1beta3/InstancesPromoteReplicaResponse/operation": operation +"/sqladmin:v1beta3/InstancesResetSslConfigResponse": instances_reset_ssl_config_response +"/sqladmin:v1beta3/InstancesResetSslConfigResponse/kind": kind +"/sqladmin:v1beta3/InstancesResetSslConfigResponse/operation": operation +"/sqladmin:v1beta3/InstancesRestartResponse": instances_restart_response +"/sqladmin:v1beta3/InstancesRestartResponse/kind": kind +"/sqladmin:v1beta3/InstancesRestartResponse/operation": operation +"/sqladmin:v1beta3/InstancesRestoreBackupResponse": instances_restore_backup_response +"/sqladmin:v1beta3/InstancesRestoreBackupResponse/kind": kind +"/sqladmin:v1beta3/InstancesRestoreBackupResponse/operation": operation +"/sqladmin:v1beta3/InstancesSetRootPasswordResponse": instances_set_root_password_response +"/sqladmin:v1beta3/InstancesSetRootPasswordResponse/kind": kind +"/sqladmin:v1beta3/InstancesSetRootPasswordResponse/operation": operation +"/sqladmin:v1beta3/InstancesUpdateResponse": instances_update_response +"/sqladmin:v1beta3/InstancesUpdateResponse/kind": kind +"/sqladmin:v1beta3/InstancesUpdateResponse/operation": operation +"/sqladmin:v1beta3/IpConfiguration": ip_configuration +"/sqladmin:v1beta3/IpConfiguration/authorizedNetworks": authorized_networks +"/sqladmin:v1beta3/IpConfiguration/authorizedNetworks/authorized_network": authorized_network +"/sqladmin:v1beta3/IpConfiguration/enabled": enabled +"/sqladmin:v1beta3/IpConfiguration/kind": kind +"/sqladmin:v1beta3/IpConfiguration/requireSsl": require_ssl +"/sqladmin:v1beta3/IpMapping": ip_mapping +"/sqladmin:v1beta3/IpMapping/ipAddress": ip_address +"/sqladmin:v1beta3/IpMapping/timeToRetire": time_to_retire +"/sqladmin:v1beta3/LocationPreference": location_preference +"/sqladmin:v1beta3/LocationPreference/followGaeApplication": follow_gae_application +"/sqladmin:v1beta3/LocationPreference/kind": kind +"/sqladmin:v1beta3/LocationPreference/zone": zone +"/sqladmin:v1beta3/OperationError": operation_error +"/sqladmin:v1beta3/OperationError/code": code +"/sqladmin:v1beta3/OperationError/kind": kind +"/sqladmin:v1beta3/OperationsListResponse": operations_list_response +"/sqladmin:v1beta3/OperationsListResponse/items": items +"/sqladmin:v1beta3/OperationsListResponse/items/item": item +"/sqladmin:v1beta3/OperationsListResponse/kind": kind +"/sqladmin:v1beta3/OperationsListResponse/nextPageToken": next_page_token +"/sqladmin:v1beta3/SetRootPasswordContext": set_root_password_context +"/sqladmin:v1beta3/SetRootPasswordContext/kind": kind +"/sqladmin:v1beta3/SetRootPasswordContext/password": password +"/sqladmin:v1beta3/Settings": settings +"/sqladmin:v1beta3/Settings/activationPolicy": activation_policy +"/sqladmin:v1beta3/Settings/authorizedGaeApplications": authorized_gae_applications +"/sqladmin:v1beta3/Settings/authorizedGaeApplications/authorized_gae_application": authorized_gae_application +"/sqladmin:v1beta3/Settings/backupConfiguration": backup_configuration +"/sqladmin:v1beta3/Settings/backupConfiguration/backup_configuration": backup_configuration +"/sqladmin:v1beta3/Settings/databaseFlags": database_flags +"/sqladmin:v1beta3/Settings/databaseFlags/database_flag": database_flag +"/sqladmin:v1beta3/Settings/databaseReplicationEnabled": database_replication_enabled +"/sqladmin:v1beta3/Settings/ipConfiguration": ip_configuration +"/sqladmin:v1beta3/Settings/kind": kind +"/sqladmin:v1beta3/Settings/locationPreference": location_preference +"/sqladmin:v1beta3/Settings/pricingPlan": pricing_plan +"/sqladmin:v1beta3/Settings/replicationType": replication_type +"/sqladmin:v1beta3/Settings/settingsVersion": settings_version +"/sqladmin:v1beta3/Settings/tier": tier +"/sqladmin:v1beta3/SslCert": ssl_cert +"/sqladmin:v1beta3/SslCert/cert": cert +"/sqladmin:v1beta3/SslCert/certSerialNumber": cert_serial_number +"/sqladmin:v1beta3/SslCert/commonName": common_name +"/sqladmin:v1beta3/SslCert/createTime": create_time +"/sqladmin:v1beta3/SslCert/expirationTime": expiration_time +"/sqladmin:v1beta3/SslCert/instance": instance +"/sqladmin:v1beta3/SslCert/kind": kind +"/sqladmin:v1beta3/SslCert/sha1Fingerprint": sha1_fingerprint +"/sqladmin:v1beta3/SslCertDetail": ssl_cert_detail +"/sqladmin:v1beta3/SslCertDetail/certInfo": cert_info +"/sqladmin:v1beta3/SslCertDetail/certPrivateKey": cert_private_key +"/sqladmin:v1beta3/SslCertsDeleteResponse": ssl_certs_delete_response +"/sqladmin:v1beta3/SslCertsDeleteResponse/kind": kind +"/sqladmin:v1beta3/SslCertsDeleteResponse/operation": operation +"/sqladmin:v1beta3/SslCertsInsertRequest": ssl_certs_insert_request +"/sqladmin:v1beta3/SslCertsInsertRequest/commonName": common_name +"/sqladmin:v1beta3/SslCertsInsertResponse": ssl_certs_insert_response +"/sqladmin:v1beta3/SslCertsInsertResponse/clientCert": client_cert +"/sqladmin:v1beta3/SslCertsInsertResponse/kind": kind +"/sqladmin:v1beta3/SslCertsInsertResponse/serverCaCert": server_ca_cert +"/sqladmin:v1beta3/SslCertsListResponse": ssl_certs_list_response +"/sqladmin:v1beta3/SslCertsListResponse/items": items +"/sqladmin:v1beta3/SslCertsListResponse/items/item": item +"/sqladmin:v1beta3/SslCertsListResponse/kind": kind +"/sqladmin:v1beta3/Tier": tier +"/sqladmin:v1beta3/Tier/DiskQuota": disk_quota +"/sqladmin:v1beta3/Tier/RAM": ram +"/sqladmin:v1beta3/Tier/kind": kind +"/sqladmin:v1beta3/Tier/region": region +"/sqladmin:v1beta3/Tier/region/region": region +"/sqladmin:v1beta3/Tier/tier": tier +"/sqladmin:v1beta3/TiersListResponse": tiers_list_response +"/sqladmin:v1beta3/TiersListResponse/items": items +"/sqladmin:v1beta3/TiersListResponse/items/item": item +"/sqladmin:v1beta3/TiersListResponse/kind": kind +"/sqladmin:v1beta3/fields": fields +"/sqladmin:v1beta3/key": key +"/sqladmin:v1beta3/quotaUser": quota_user +"/sqladmin:v1beta3/sql.backupRuns.get": get_backup_run +"/sqladmin:v1beta3/sql.backupRuns.get/backupConfiguration": backup_configuration +"/sqladmin:v1beta3/sql.backupRuns.get/dueTime": due_time +"/sqladmin:v1beta3/sql.backupRuns.get/instance": instance +"/sqladmin:v1beta3/sql.backupRuns.get/project": project +"/sqladmin:v1beta3/sql.backupRuns.list": list_backup_runs +"/sqladmin:v1beta3/sql.backupRuns.list/backupConfiguration": backup_configuration +"/sqladmin:v1beta3/sql.backupRuns.list/instance": instance +"/sqladmin:v1beta3/sql.backupRuns.list/maxResults": max_results +"/sqladmin:v1beta3/sql.backupRuns.list/pageToken": page_token +"/sqladmin:v1beta3/sql.backupRuns.list/project": project +"/sqladmin:v1beta3/sql.flags.list": list_flags +"/sqladmin:v1beta3/sql.instances.clone": clone_instance +"/sqladmin:v1beta3/sql.instances.clone/project": project +"/sqladmin:v1beta3/sql.instances.delete": delete_instance +"/sqladmin:v1beta3/sql.instances.delete/instance": instance +"/sqladmin:v1beta3/sql.instances.delete/project": project +"/sqladmin:v1beta3/sql.instances.export": export_instance +"/sqladmin:v1beta3/sql.instances.export/instance": instance +"/sqladmin:v1beta3/sql.instances.export/project": project +"/sqladmin:v1beta3/sql.instances.get": get_instance +"/sqladmin:v1beta3/sql.instances.get/instance": instance +"/sqladmin:v1beta3/sql.instances.get/project": project +"/sqladmin:v1beta3/sql.instances.import": import_instance +"/sqladmin:v1beta3/sql.instances.import/instance": instance +"/sqladmin:v1beta3/sql.instances.import/project": project +"/sqladmin:v1beta3/sql.instances.insert": insert_instance +"/sqladmin:v1beta3/sql.instances.insert/project": project +"/sqladmin:v1beta3/sql.instances.list": list_instances +"/sqladmin:v1beta3/sql.instances.list/maxResults": max_results +"/sqladmin:v1beta3/sql.instances.list/pageToken": page_token +"/sqladmin:v1beta3/sql.instances.list/project": project +"/sqladmin:v1beta3/sql.instances.patch": patch_instance +"/sqladmin:v1beta3/sql.instances.patch/instance": instance +"/sqladmin:v1beta3/sql.instances.patch/project": project +"/sqladmin:v1beta3/sql.instances.promoteReplica": promote_instance_replica +"/sqladmin:v1beta3/sql.instances.promoteReplica/instance": instance +"/sqladmin:v1beta3/sql.instances.promoteReplica/project": project +"/sqladmin:v1beta3/sql.instances.resetSslConfig": reset_instance_ssl_config +"/sqladmin:v1beta3/sql.instances.resetSslConfig/instance": instance +"/sqladmin:v1beta3/sql.instances.resetSslConfig/project": project +"/sqladmin:v1beta3/sql.instances.restart": restart_instance +"/sqladmin:v1beta3/sql.instances.restart/instance": instance +"/sqladmin:v1beta3/sql.instances.restart/project": project +"/sqladmin:v1beta3/sql.instances.restoreBackup": restore_instance_backup +"/sqladmin:v1beta3/sql.instances.restoreBackup/backupConfiguration": backup_configuration +"/sqladmin:v1beta3/sql.instances.restoreBackup/dueTime": due_time +"/sqladmin:v1beta3/sql.instances.restoreBackup/instance": instance +"/sqladmin:v1beta3/sql.instances.restoreBackup/project": project +"/sqladmin:v1beta3/sql.instances.setRootPassword": set_instance_root_password +"/sqladmin:v1beta3/sql.instances.setRootPassword/instance": instance +"/sqladmin:v1beta3/sql.instances.setRootPassword/project": project +"/sqladmin:v1beta3/sql.instances.update": update_instance +"/sqladmin:v1beta3/sql.instances.update/instance": instance +"/sqladmin:v1beta3/sql.instances.update/project": project +"/sqladmin:v1beta3/sql.operations.get": get_operation +"/sqladmin:v1beta3/sql.operations.get/instance": instance +"/sqladmin:v1beta3/sql.operations.get/operation": operation +"/sqladmin:v1beta3/sql.operations.get/project": project +"/sqladmin:v1beta3/sql.operations.list": list_operations +"/sqladmin:v1beta3/sql.operations.list/instance": instance +"/sqladmin:v1beta3/sql.operations.list/maxResults": max_results +"/sqladmin:v1beta3/sql.operations.list/pageToken": page_token +"/sqladmin:v1beta3/sql.operations.list/project": project +"/sqladmin:v1beta3/sql.sslCerts.delete": delete_ssl_cert +"/sqladmin:v1beta3/sql.sslCerts.delete/instance": instance +"/sqladmin:v1beta3/sql.sslCerts.delete/project": project +"/sqladmin:v1beta3/sql.sslCerts.delete/sha1Fingerprint": sha1_fingerprint +"/sqladmin:v1beta3/sql.sslCerts.get": get_ssl_cert +"/sqladmin:v1beta3/sql.sslCerts.get/instance": instance +"/sqladmin:v1beta3/sql.sslCerts.get/project": project +"/sqladmin:v1beta3/sql.sslCerts.get/sha1Fingerprint": sha1_fingerprint +"/sqladmin:v1beta3/sql.sslCerts.insert": insert_ssl_cert +"/sqladmin:v1beta3/sql.sslCerts.insert/instance": instance +"/sqladmin:v1beta3/sql.sslCerts.insert/project": project +"/sqladmin:v1beta3/sql.sslCerts.list": list_ssl_certs +"/sqladmin:v1beta3/sql.sslCerts.list/instance": instance +"/sqladmin:v1beta3/sql.sslCerts.list/project": project +"/sqladmin:v1beta3/sql.tiers.list": list_tiers +"/sqladmin:v1beta3/sql.tiers.list/project": project +"/sqladmin:v1beta3/userIp": user_ip "/sqladmin:v1beta4/AclEntry": acl_entry "/sqladmin:v1beta4/AclEntry/expirationTime": expiration_time "/sqladmin:v1beta4/AclEntry/kind": kind @@ -40999,6 +53332,486 @@ "/storage:v1/storage.projects.serviceAccount.get": get_project_service_account "/storage:v1/storage.projects.serviceAccount.get/projectId": project_id "/storage:v1/userIp": user_ip +"/storage:v1beta1/Bucket": bucket +"/storage:v1beta1/Bucket/acl": acl +"/storage:v1beta1/Bucket/acl/acl": acl +"/storage:v1beta1/Bucket/defaultObjectAcl": default_object_acl +"/storage:v1beta1/Bucket/defaultObjectAcl/default_object_acl": default_object_acl +"/storage:v1beta1/Bucket/id": id +"/storage:v1beta1/Bucket/kind": kind +"/storage:v1beta1/Bucket/location": location +"/storage:v1beta1/Bucket/owner": owner +"/storage:v1beta1/Bucket/owner/entity": entity +"/storage:v1beta1/Bucket/owner/entityId": entity_id +"/storage:v1beta1/Bucket/projectId": project_id +"/storage:v1beta1/Bucket/selfLink": self_link +"/storage:v1beta1/Bucket/timeCreated": time_created +"/storage:v1beta1/Bucket/website": website +"/storage:v1beta1/Bucket/website/mainPageSuffix": main_page_suffix +"/storage:v1beta1/Bucket/website/notFoundPage": not_found_page +"/storage:v1beta1/BucketAccessControl": bucket_access_control +"/storage:v1beta1/BucketAccessControl/bucket": bucket +"/storage:v1beta1/BucketAccessControl/domain": domain +"/storage:v1beta1/BucketAccessControl/email": email +"/storage:v1beta1/BucketAccessControl/entity": entity +"/storage:v1beta1/BucketAccessControl/entityId": entity_id +"/storage:v1beta1/BucketAccessControl/id": id +"/storage:v1beta1/BucketAccessControl/kind": kind +"/storage:v1beta1/BucketAccessControl/role": role +"/storage:v1beta1/BucketAccessControl/selfLink": self_link +"/storage:v1beta1/BucketAccessControls": bucket_access_controls +"/storage:v1beta1/BucketAccessControls/items": items +"/storage:v1beta1/BucketAccessControls/items/item": item +"/storage:v1beta1/BucketAccessControls/kind": kind +"/storage:v1beta1/Buckets": buckets +"/storage:v1beta1/Buckets/items": items +"/storage:v1beta1/Buckets/items/item": item +"/storage:v1beta1/Buckets/kind": kind +"/storage:v1beta1/Buckets/nextPageToken": next_page_token +"/storage:v1beta1/Object": object +"/storage:v1beta1/Object/acl": acl +"/storage:v1beta1/Object/acl/acl": acl +"/storage:v1beta1/Object/bucket": bucket +"/storage:v1beta1/Object/cacheControl": cache_control +"/storage:v1beta1/Object/contentDisposition": content_disposition +"/storage:v1beta1/Object/contentEncoding": content_encoding +"/storage:v1beta1/Object/contentLanguage": content_language +"/storage:v1beta1/Object/id": id +"/storage:v1beta1/Object/kind": kind +"/storage:v1beta1/Object/media": media +"/storage:v1beta1/Object/media/algorithm": algorithm +"/storage:v1beta1/Object/media/contentType": content_type +"/storage:v1beta1/Object/media/data": data +"/storage:v1beta1/Object/media/hash": hash_prop +"/storage:v1beta1/Object/media/length": length +"/storage:v1beta1/Object/media/link": link +"/storage:v1beta1/Object/media/timeCreated": time_created +"/storage:v1beta1/Object/metadata": metadata +"/storage:v1beta1/Object/metadata/metadatum": metadatum +"/storage:v1beta1/Object/name": name +"/storage:v1beta1/Object/owner": owner +"/storage:v1beta1/Object/owner/entity": entity +"/storage:v1beta1/Object/owner/entityId": entity_id +"/storage:v1beta1/Object/selfLink": self_link +"/storage:v1beta1/ObjectAccessControl": object_access_control +"/storage:v1beta1/ObjectAccessControl/bucket": bucket +"/storage:v1beta1/ObjectAccessControl/domain": domain +"/storage:v1beta1/ObjectAccessControl/email": email +"/storage:v1beta1/ObjectAccessControl/entity": entity +"/storage:v1beta1/ObjectAccessControl/entityId": entity_id +"/storage:v1beta1/ObjectAccessControl/id": id +"/storage:v1beta1/ObjectAccessControl/kind": kind +"/storage:v1beta1/ObjectAccessControl/object": object +"/storage:v1beta1/ObjectAccessControl/role": role +"/storage:v1beta1/ObjectAccessControl/selfLink": self_link +"/storage:v1beta1/ObjectAccessControls": object_access_controls +"/storage:v1beta1/ObjectAccessControls/items": items +"/storage:v1beta1/ObjectAccessControls/items/item": item +"/storage:v1beta1/ObjectAccessControls/kind": kind +"/storage:v1beta1/Objects": objects +"/storage:v1beta1/Objects/items": items +"/storage:v1beta1/Objects/items/item": item +"/storage:v1beta1/Objects/kind": kind +"/storage:v1beta1/Objects/nextPageToken": next_page_token +"/storage:v1beta1/Objects/prefixes": prefixes +"/storage:v1beta1/Objects/prefixes/prefix": prefix +"/storage:v1beta1/fields": fields +"/storage:v1beta1/key": key +"/storage:v1beta1/quotaUser": quota_user +"/storage:v1beta1/storage.bucketAccessControls.delete": delete_bucket_access_control +"/storage:v1beta1/storage.bucketAccessControls.delete/bucket": bucket +"/storage:v1beta1/storage.bucketAccessControls.delete/entity": entity +"/storage:v1beta1/storage.bucketAccessControls.get": get_bucket_access_control +"/storage:v1beta1/storage.bucketAccessControls.get/bucket": bucket +"/storage:v1beta1/storage.bucketAccessControls.get/entity": entity +"/storage:v1beta1/storage.bucketAccessControls.insert": insert_bucket_access_control +"/storage:v1beta1/storage.bucketAccessControls.insert/bucket": bucket +"/storage:v1beta1/storage.bucketAccessControls.list": list_bucket_access_controls +"/storage:v1beta1/storage.bucketAccessControls.list/bucket": bucket +"/storage:v1beta1/storage.bucketAccessControls.patch": patch_bucket_access_control +"/storage:v1beta1/storage.bucketAccessControls.patch/bucket": bucket +"/storage:v1beta1/storage.bucketAccessControls.patch/entity": entity +"/storage:v1beta1/storage.bucketAccessControls.update": update_bucket_access_control +"/storage:v1beta1/storage.bucketAccessControls.update/bucket": bucket +"/storage:v1beta1/storage.bucketAccessControls.update/entity": entity +"/storage:v1beta1/storage.buckets.delete": delete_bucket +"/storage:v1beta1/storage.buckets.delete/bucket": bucket +"/storage:v1beta1/storage.buckets.get": get_bucket +"/storage:v1beta1/storage.buckets.get/bucket": bucket +"/storage:v1beta1/storage.buckets.get/projection": projection +"/storage:v1beta1/storage.buckets.insert": insert_bucket +"/storage:v1beta1/storage.buckets.insert/projection": projection +"/storage:v1beta1/storage.buckets.list": list_buckets +"/storage:v1beta1/storage.buckets.list/max-results": max_results +"/storage:v1beta1/storage.buckets.list/pageToken": page_token +"/storage:v1beta1/storage.buckets.list/projectId": project_id +"/storage:v1beta1/storage.buckets.list/projection": projection +"/storage:v1beta1/storage.buckets.patch": patch_bucket +"/storage:v1beta1/storage.buckets.patch/bucket": bucket +"/storage:v1beta1/storage.buckets.patch/projection": projection +"/storage:v1beta1/storage.buckets.update": update_bucket +"/storage:v1beta1/storage.buckets.update/bucket": bucket +"/storage:v1beta1/storage.buckets.update/projection": projection +"/storage:v1beta1/storage.objectAccessControls.delete": delete_object_access_control +"/storage:v1beta1/storage.objectAccessControls.delete/bucket": bucket +"/storage:v1beta1/storage.objectAccessControls.delete/entity": entity +"/storage:v1beta1/storage.objectAccessControls.delete/object": object +"/storage:v1beta1/storage.objectAccessControls.get": get_object_access_control +"/storage:v1beta1/storage.objectAccessControls.get/bucket": bucket +"/storage:v1beta1/storage.objectAccessControls.get/entity": entity +"/storage:v1beta1/storage.objectAccessControls.get/object": object +"/storage:v1beta1/storage.objectAccessControls.insert": insert_object_access_control +"/storage:v1beta1/storage.objectAccessControls.insert/bucket": bucket +"/storage:v1beta1/storage.objectAccessControls.insert/object": object +"/storage:v1beta1/storage.objectAccessControls.list": list_object_access_controls +"/storage:v1beta1/storage.objectAccessControls.list/bucket": bucket +"/storage:v1beta1/storage.objectAccessControls.list/object": object +"/storage:v1beta1/storage.objectAccessControls.patch": patch_object_access_control +"/storage:v1beta1/storage.objectAccessControls.patch/bucket": bucket +"/storage:v1beta1/storage.objectAccessControls.patch/entity": entity +"/storage:v1beta1/storage.objectAccessControls.patch/object": object +"/storage:v1beta1/storage.objectAccessControls.update": update_object_access_control +"/storage:v1beta1/storage.objectAccessControls.update/bucket": bucket +"/storage:v1beta1/storage.objectAccessControls.update/entity": entity +"/storage:v1beta1/storage.objectAccessControls.update/object": object +"/storage:v1beta1/storage.objects.delete": delete_object +"/storage:v1beta1/storage.objects.delete/bucket": bucket +"/storage:v1beta1/storage.objects.delete/object": object +"/storage:v1beta1/storage.objects.get": get_object +"/storage:v1beta1/storage.objects.get/bucket": bucket +"/storage:v1beta1/storage.objects.get/object": object +"/storage:v1beta1/storage.objects.get/projection": projection +"/storage:v1beta1/storage.objects.insert": insert_object +"/storage:v1beta1/storage.objects.insert/bucket": bucket +"/storage:v1beta1/storage.objects.insert/name": name +"/storage:v1beta1/storage.objects.insert/projection": projection +"/storage:v1beta1/storage.objects.list": list_objects +"/storage:v1beta1/storage.objects.list/bucket": bucket +"/storage:v1beta1/storage.objects.list/delimiter": delimiter +"/storage:v1beta1/storage.objects.list/max-results": max_results +"/storage:v1beta1/storage.objects.list/pageToken": page_token +"/storage:v1beta1/storage.objects.list/prefix": prefix +"/storage:v1beta1/storage.objects.list/projection": projection +"/storage:v1beta1/storage.objects.patch": patch_object +"/storage:v1beta1/storage.objects.patch/bucket": bucket +"/storage:v1beta1/storage.objects.patch/object": object +"/storage:v1beta1/storage.objects.patch/projection": projection +"/storage:v1beta1/storage.objects.update": update_object +"/storage:v1beta1/storage.objects.update/bucket": bucket +"/storage:v1beta1/storage.objects.update/object": object +"/storage:v1beta1/storage.objects.update/projection": projection +"/storage:v1beta1/userIp": user_ip +"/storage:v1beta2/Bucket": bucket +"/storage:v1beta2/Bucket/acl": acl +"/storage:v1beta2/Bucket/acl/acl": acl +"/storage:v1beta2/Bucket/cors": cors +"/storage:v1beta2/Bucket/cors/cor": cor +"/storage:v1beta2/Bucket/cors/cor/maxAgeSeconds": max_age_seconds +"/storage:v1beta2/Bucket/cors/cor/method": method_prop +"/storage:v1beta2/Bucket/cors/cor/method/method_prop": method_prop +"/storage:v1beta2/Bucket/cors/cor/origin": origin +"/storage:v1beta2/Bucket/cors/cor/origin/origin": origin +"/storage:v1beta2/Bucket/cors/cor/responseHeader": response_header +"/storage:v1beta2/Bucket/cors/cor/responseHeader/response_header": response_header +"/storage:v1beta2/Bucket/defaultObjectAcl": default_object_acl +"/storage:v1beta2/Bucket/defaultObjectAcl/default_object_acl": default_object_acl +"/storage:v1beta2/Bucket/etag": etag +"/storage:v1beta2/Bucket/id": id +"/storage:v1beta2/Bucket/kind": kind +"/storage:v1beta2/Bucket/lifecycle": lifecycle +"/storage:v1beta2/Bucket/lifecycle/rule": rule +"/storage:v1beta2/Bucket/lifecycle/rule/rule": rule +"/storage:v1beta2/Bucket/lifecycle/rule/rule/action": action +"/storage:v1beta2/Bucket/lifecycle/rule/rule/action/type": type +"/storage:v1beta2/Bucket/lifecycle/rule/rule/condition": condition +"/storage:v1beta2/Bucket/lifecycle/rule/rule/condition/age": age +"/storage:v1beta2/Bucket/lifecycle/rule/rule/condition/createdBefore": created_before +"/storage:v1beta2/Bucket/lifecycle/rule/rule/condition/isLive": is_live +"/storage:v1beta2/Bucket/lifecycle/rule/rule/condition/numNewerVersions": num_newer_versions +"/storage:v1beta2/Bucket/location": location +"/storage:v1beta2/Bucket/logging": logging +"/storage:v1beta2/Bucket/logging/logBucket": log_bucket +"/storage:v1beta2/Bucket/logging/logObjectPrefix": log_object_prefix +"/storage:v1beta2/Bucket/metageneration": metageneration +"/storage:v1beta2/Bucket/name": name +"/storage:v1beta2/Bucket/owner": owner +"/storage:v1beta2/Bucket/owner/entity": entity +"/storage:v1beta2/Bucket/owner/entityId": entity_id +"/storage:v1beta2/Bucket/selfLink": self_link +"/storage:v1beta2/Bucket/storageClass": storage_class +"/storage:v1beta2/Bucket/timeCreated": time_created +"/storage:v1beta2/Bucket/versioning": versioning +"/storage:v1beta2/Bucket/versioning/enabled": enabled +"/storage:v1beta2/Bucket/website": website +"/storage:v1beta2/Bucket/website/mainPageSuffix": main_page_suffix +"/storage:v1beta2/Bucket/website/notFoundPage": not_found_page +"/storage:v1beta2/BucketAccessControl": bucket_access_control +"/storage:v1beta2/BucketAccessControl/bucket": bucket +"/storage:v1beta2/BucketAccessControl/domain": domain +"/storage:v1beta2/BucketAccessControl/email": email +"/storage:v1beta2/BucketAccessControl/entity": entity +"/storage:v1beta2/BucketAccessControl/entityId": entity_id +"/storage:v1beta2/BucketAccessControl/etag": etag +"/storage:v1beta2/BucketAccessControl/id": id +"/storage:v1beta2/BucketAccessControl/kind": kind +"/storage:v1beta2/BucketAccessControl/role": role +"/storage:v1beta2/BucketAccessControl/selfLink": self_link +"/storage:v1beta2/BucketAccessControls": bucket_access_controls +"/storage:v1beta2/BucketAccessControls/items": items +"/storage:v1beta2/BucketAccessControls/items/item": item +"/storage:v1beta2/BucketAccessControls/kind": kind +"/storage:v1beta2/Buckets": buckets +"/storage:v1beta2/Buckets/items": items +"/storage:v1beta2/Buckets/items/item": item +"/storage:v1beta2/Buckets/kind": kind +"/storage:v1beta2/Buckets/nextPageToken": next_page_token +"/storage:v1beta2/Channel": channel +"/storage:v1beta2/Channel/address": address +"/storage:v1beta2/Channel/expiration": expiration +"/storage:v1beta2/Channel/id": id +"/storage:v1beta2/Channel/kind": kind +"/storage:v1beta2/Channel/params": params +"/storage:v1beta2/Channel/params/param": param +"/storage:v1beta2/Channel/payload": payload +"/storage:v1beta2/Channel/resourceId": resource_id +"/storage:v1beta2/Channel/resourceUri": resource_uri +"/storage:v1beta2/Channel/token": token +"/storage:v1beta2/Channel/type": type +"/storage:v1beta2/ComposeRequest": compose_request +"/storage:v1beta2/ComposeRequest/destination": destination +"/storage:v1beta2/ComposeRequest/kind": kind +"/storage:v1beta2/ComposeRequest/sourceObjects": source_objects +"/storage:v1beta2/ComposeRequest/sourceObjects/source_object": source_object +"/storage:v1beta2/ComposeRequest/sourceObjects/source_object/generation": generation +"/storage:v1beta2/ComposeRequest/sourceObjects/source_object/name": name +"/storage:v1beta2/ComposeRequest/sourceObjects/source_object/objectPreconditions": object_preconditions +"/storage:v1beta2/ComposeRequest/sourceObjects/source_object/objectPreconditions/ifGenerationMatch": if_generation_match +"/storage:v1beta2/Object": object +"/storage:v1beta2/Object/acl": acl +"/storage:v1beta2/Object/acl/acl": acl +"/storage:v1beta2/Object/bucket": bucket +"/storage:v1beta2/Object/cacheControl": cache_control +"/storage:v1beta2/Object/componentCount": component_count +"/storage:v1beta2/Object/contentDisposition": content_disposition +"/storage:v1beta2/Object/contentEncoding": content_encoding +"/storage:v1beta2/Object/contentLanguage": content_language +"/storage:v1beta2/Object/contentType": content_type +"/storage:v1beta2/Object/crc32c": crc32c +"/storage:v1beta2/Object/etag": etag +"/storage:v1beta2/Object/generation": generation +"/storage:v1beta2/Object/id": id +"/storage:v1beta2/Object/kind": kind +"/storage:v1beta2/Object/md5Hash": md5_hash +"/storage:v1beta2/Object/mediaLink": media_link +"/storage:v1beta2/Object/metadata": metadata +"/storage:v1beta2/Object/metadata/metadatum": metadatum +"/storage:v1beta2/Object/metageneration": metageneration +"/storage:v1beta2/Object/name": name +"/storage:v1beta2/Object/owner": owner +"/storage:v1beta2/Object/owner/entity": entity +"/storage:v1beta2/Object/owner/entityId": entity_id +"/storage:v1beta2/Object/selfLink": self_link +"/storage:v1beta2/Object/size": size +"/storage:v1beta2/Object/storageClass": storage_class +"/storage:v1beta2/Object/timeDeleted": time_deleted +"/storage:v1beta2/Object/updated": updated +"/storage:v1beta2/ObjectAccessControl": object_access_control +"/storage:v1beta2/ObjectAccessControl/bucket": bucket +"/storage:v1beta2/ObjectAccessControl/domain": domain +"/storage:v1beta2/ObjectAccessControl/email": email +"/storage:v1beta2/ObjectAccessControl/entity": entity +"/storage:v1beta2/ObjectAccessControl/entityId": entity_id +"/storage:v1beta2/ObjectAccessControl/etag": etag +"/storage:v1beta2/ObjectAccessControl/generation": generation +"/storage:v1beta2/ObjectAccessControl/id": id +"/storage:v1beta2/ObjectAccessControl/kind": kind +"/storage:v1beta2/ObjectAccessControl/object": object +"/storage:v1beta2/ObjectAccessControl/role": role +"/storage:v1beta2/ObjectAccessControl/selfLink": self_link +"/storage:v1beta2/ObjectAccessControls": object_access_controls +"/storage:v1beta2/ObjectAccessControls/items": items +"/storage:v1beta2/ObjectAccessControls/items/item": item +"/storage:v1beta2/ObjectAccessControls/kind": kind +"/storage:v1beta2/Objects": objects +"/storage:v1beta2/Objects/items": items +"/storage:v1beta2/Objects/items/item": item +"/storage:v1beta2/Objects/kind": kind +"/storage:v1beta2/Objects/nextPageToken": next_page_token +"/storage:v1beta2/Objects/prefixes": prefixes +"/storage:v1beta2/Objects/prefixes/prefix": prefix +"/storage:v1beta2/fields": fields +"/storage:v1beta2/key": key +"/storage:v1beta2/quotaUser": quota_user +"/storage:v1beta2/storage.bucketAccessControls.delete": delete_bucket_access_control +"/storage:v1beta2/storage.bucketAccessControls.delete/bucket": bucket +"/storage:v1beta2/storage.bucketAccessControls.delete/entity": entity +"/storage:v1beta2/storage.bucketAccessControls.get": get_bucket_access_control +"/storage:v1beta2/storage.bucketAccessControls.get/bucket": bucket +"/storage:v1beta2/storage.bucketAccessControls.get/entity": entity +"/storage:v1beta2/storage.bucketAccessControls.insert": insert_bucket_access_control +"/storage:v1beta2/storage.bucketAccessControls.insert/bucket": bucket +"/storage:v1beta2/storage.bucketAccessControls.list": list_bucket_access_controls +"/storage:v1beta2/storage.bucketAccessControls.list/bucket": bucket +"/storage:v1beta2/storage.bucketAccessControls.patch": patch_bucket_access_control +"/storage:v1beta2/storage.bucketAccessControls.patch/bucket": bucket +"/storage:v1beta2/storage.bucketAccessControls.patch/entity": entity +"/storage:v1beta2/storage.bucketAccessControls.update": update_bucket_access_control +"/storage:v1beta2/storage.bucketAccessControls.update/bucket": bucket +"/storage:v1beta2/storage.bucketAccessControls.update/entity": entity +"/storage:v1beta2/storage.buckets.delete": delete_bucket +"/storage:v1beta2/storage.buckets.delete/bucket": bucket +"/storage:v1beta2/storage.buckets.delete/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.buckets.delete/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.buckets.get": get_bucket +"/storage:v1beta2/storage.buckets.get/bucket": bucket +"/storage:v1beta2/storage.buckets.get/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.buckets.get/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.buckets.get/projection": projection +"/storage:v1beta2/storage.buckets.insert": insert_bucket +"/storage:v1beta2/storage.buckets.insert/project": project +"/storage:v1beta2/storage.buckets.insert/projection": projection +"/storage:v1beta2/storage.buckets.list": list_buckets +"/storage:v1beta2/storage.buckets.list/maxResults": max_results +"/storage:v1beta2/storage.buckets.list/pageToken": page_token +"/storage:v1beta2/storage.buckets.list/project": project +"/storage:v1beta2/storage.buckets.list/projection": projection +"/storage:v1beta2/storage.buckets.patch": patch_bucket +"/storage:v1beta2/storage.buckets.patch/bucket": bucket +"/storage:v1beta2/storage.buckets.patch/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.buckets.patch/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.buckets.patch/projection": projection +"/storage:v1beta2/storage.buckets.update": update_bucket +"/storage:v1beta2/storage.buckets.update/bucket": bucket +"/storage:v1beta2/storage.buckets.update/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.buckets.update/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.buckets.update/projection": projection +"/storage:v1beta2/storage.channels.stop": stop_channel +"/storage:v1beta2/storage.defaultObjectAccessControls.delete": delete_default_object_access_control +"/storage:v1beta2/storage.defaultObjectAccessControls.delete/bucket": bucket +"/storage:v1beta2/storage.defaultObjectAccessControls.delete/entity": entity +"/storage:v1beta2/storage.defaultObjectAccessControls.get": get_default_object_access_control +"/storage:v1beta2/storage.defaultObjectAccessControls.get/bucket": bucket +"/storage:v1beta2/storage.defaultObjectAccessControls.get/entity": entity +"/storage:v1beta2/storage.defaultObjectAccessControls.insert": insert_default_object_access_control +"/storage:v1beta2/storage.defaultObjectAccessControls.insert/bucket": bucket +"/storage:v1beta2/storage.defaultObjectAccessControls.list": list_default_object_access_controls +"/storage:v1beta2/storage.defaultObjectAccessControls.list/bucket": bucket +"/storage:v1beta2/storage.defaultObjectAccessControls.list/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.defaultObjectAccessControls.list/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.defaultObjectAccessControls.patch": patch_default_object_access_control +"/storage:v1beta2/storage.defaultObjectAccessControls.patch/bucket": bucket +"/storage:v1beta2/storage.defaultObjectAccessControls.patch/entity": entity +"/storage:v1beta2/storage.defaultObjectAccessControls.update": update_default_object_access_control +"/storage:v1beta2/storage.defaultObjectAccessControls.update/bucket": bucket +"/storage:v1beta2/storage.defaultObjectAccessControls.update/entity": entity +"/storage:v1beta2/storage.objectAccessControls.delete": delete_object_access_control +"/storage:v1beta2/storage.objectAccessControls.delete/bucket": bucket +"/storage:v1beta2/storage.objectAccessControls.delete/entity": entity +"/storage:v1beta2/storage.objectAccessControls.delete/generation": generation +"/storage:v1beta2/storage.objectAccessControls.delete/object": object +"/storage:v1beta2/storage.objectAccessControls.get": get_object_access_control +"/storage:v1beta2/storage.objectAccessControls.get/bucket": bucket +"/storage:v1beta2/storage.objectAccessControls.get/entity": entity +"/storage:v1beta2/storage.objectAccessControls.get/generation": generation +"/storage:v1beta2/storage.objectAccessControls.get/object": object +"/storage:v1beta2/storage.objectAccessControls.insert": insert_object_access_control +"/storage:v1beta2/storage.objectAccessControls.insert/bucket": bucket +"/storage:v1beta2/storage.objectAccessControls.insert/generation": generation +"/storage:v1beta2/storage.objectAccessControls.insert/object": object +"/storage:v1beta2/storage.objectAccessControls.list": list_object_access_controls +"/storage:v1beta2/storage.objectAccessControls.list/bucket": bucket +"/storage:v1beta2/storage.objectAccessControls.list/generation": generation +"/storage:v1beta2/storage.objectAccessControls.list/object": object +"/storage:v1beta2/storage.objectAccessControls.patch": patch_object_access_control +"/storage:v1beta2/storage.objectAccessControls.patch/bucket": bucket +"/storage:v1beta2/storage.objectAccessControls.patch/entity": entity +"/storage:v1beta2/storage.objectAccessControls.patch/generation": generation +"/storage:v1beta2/storage.objectAccessControls.patch/object": object +"/storage:v1beta2/storage.objectAccessControls.update": update_object_access_control +"/storage:v1beta2/storage.objectAccessControls.update/bucket": bucket +"/storage:v1beta2/storage.objectAccessControls.update/entity": entity +"/storage:v1beta2/storage.objectAccessControls.update/generation": generation +"/storage:v1beta2/storage.objectAccessControls.update/object": object +"/storage:v1beta2/storage.objects.compose": compose_object +"/storage:v1beta2/storage.objects.compose/destinationBucket": destination_bucket +"/storage:v1beta2/storage.objects.compose/destinationObject": destination_object +"/storage:v1beta2/storage.objects.compose/ifGenerationMatch": if_generation_match +"/storage:v1beta2/storage.objects.compose/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.objects.copy": copy_object +"/storage:v1beta2/storage.objects.copy/destinationBucket": destination_bucket +"/storage:v1beta2/storage.objects.copy/destinationObject": destination_object +"/storage:v1beta2/storage.objects.copy/ifGenerationMatch": if_generation_match +"/storage:v1beta2/storage.objects.copy/ifGenerationNotMatch": if_generation_not_match +"/storage:v1beta2/storage.objects.copy/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.objects.copy/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.objects.copy/ifSourceGenerationMatch": if_source_generation_match +"/storage:v1beta2/storage.objects.copy/ifSourceGenerationNotMatch": if_source_generation_not_match +"/storage:v1beta2/storage.objects.copy/ifSourceMetagenerationMatch": if_source_metageneration_match +"/storage:v1beta2/storage.objects.copy/ifSourceMetagenerationNotMatch": if_source_metageneration_not_match +"/storage:v1beta2/storage.objects.copy/projection": projection +"/storage:v1beta2/storage.objects.copy/sourceBucket": source_bucket +"/storage:v1beta2/storage.objects.copy/sourceGeneration": source_generation +"/storage:v1beta2/storage.objects.copy/sourceObject": source_object +"/storage:v1beta2/storage.objects.delete": delete_object +"/storage:v1beta2/storage.objects.delete/bucket": bucket +"/storage:v1beta2/storage.objects.delete/generation": generation +"/storage:v1beta2/storage.objects.delete/ifGenerationMatch": if_generation_match +"/storage:v1beta2/storage.objects.delete/ifGenerationNotMatch": if_generation_not_match +"/storage:v1beta2/storage.objects.delete/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.objects.delete/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.objects.delete/object": object +"/storage:v1beta2/storage.objects.get": get_object +"/storage:v1beta2/storage.objects.get/bucket": bucket +"/storage:v1beta2/storage.objects.get/generation": generation +"/storage:v1beta2/storage.objects.get/ifGenerationMatch": if_generation_match +"/storage:v1beta2/storage.objects.get/ifGenerationNotMatch": if_generation_not_match +"/storage:v1beta2/storage.objects.get/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.objects.get/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.objects.get/object": object +"/storage:v1beta2/storage.objects.get/projection": projection +"/storage:v1beta2/storage.objects.insert": insert_object +"/storage:v1beta2/storage.objects.insert/bucket": bucket +"/storage:v1beta2/storage.objects.insert/ifGenerationMatch": if_generation_match +"/storage:v1beta2/storage.objects.insert/ifGenerationNotMatch": if_generation_not_match +"/storage:v1beta2/storage.objects.insert/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.objects.insert/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.objects.insert/name": name +"/storage:v1beta2/storage.objects.insert/projection": projection +"/storage:v1beta2/storage.objects.list": list_objects +"/storage:v1beta2/storage.objects.list/bucket": bucket +"/storage:v1beta2/storage.objects.list/delimiter": delimiter +"/storage:v1beta2/storage.objects.list/maxResults": max_results +"/storage:v1beta2/storage.objects.list/pageToken": page_token +"/storage:v1beta2/storage.objects.list/prefix": prefix +"/storage:v1beta2/storage.objects.list/projection": projection +"/storage:v1beta2/storage.objects.list/versions": versions +"/storage:v1beta2/storage.objects.patch": patch_object +"/storage:v1beta2/storage.objects.patch/bucket": bucket +"/storage:v1beta2/storage.objects.patch/generation": generation +"/storage:v1beta2/storage.objects.patch/ifGenerationMatch": if_generation_match +"/storage:v1beta2/storage.objects.patch/ifGenerationNotMatch": if_generation_not_match +"/storage:v1beta2/storage.objects.patch/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.objects.patch/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.objects.patch/object": object +"/storage:v1beta2/storage.objects.patch/projection": projection +"/storage:v1beta2/storage.objects.update": update_object +"/storage:v1beta2/storage.objects.update/bucket": bucket +"/storage:v1beta2/storage.objects.update/generation": generation +"/storage:v1beta2/storage.objects.update/ifGenerationMatch": if_generation_match +"/storage:v1beta2/storage.objects.update/ifGenerationNotMatch": if_generation_not_match +"/storage:v1beta2/storage.objects.update/ifMetagenerationMatch": if_metageneration_match +"/storage:v1beta2/storage.objects.update/ifMetagenerationNotMatch": if_metageneration_not_match +"/storage:v1beta2/storage.objects.update/object": object +"/storage:v1beta2/storage.objects.update/projection": projection +"/storage:v1beta2/storage.objects.watchAll": watch_object_all +"/storage:v1beta2/storage.objects.watchAll/bucket": bucket +"/storage:v1beta2/storage.objects.watchAll/delimiter": delimiter +"/storage:v1beta2/storage.objects.watchAll/maxResults": max_results +"/storage:v1beta2/storage.objects.watchAll/pageToken": page_token +"/storage:v1beta2/storage.objects.watchAll/prefix": prefix +"/storage:v1beta2/storage.objects.watchAll/projection": projection +"/storage:v1beta2/storage.objects.watchAll/versions": versions +"/storage:v1beta2/userIp": user_ip "/storagetransfer:v1/AwsAccessKey": aws_access_key "/storagetransfer:v1/AwsAccessKey/accessKeyId": access_key_id "/storagetransfer:v1/AwsAccessKey/secretAccessKey": secret_access_key @@ -42347,6 +55160,61 @@ "/tagmanager:v2/tagmanager.accounts.user_permissions.update": update_account_user_permission "/tagmanager:v2/tagmanager.accounts.user_permissions.update/path": path "/tagmanager:v2/userIp": user_ip +"/taskqueue:v1beta1/Task": task +"/taskqueue:v1beta1/Task/enqueueTimestamp": enqueue_timestamp +"/taskqueue:v1beta1/Task/id": id +"/taskqueue:v1beta1/Task/kind": kind +"/taskqueue:v1beta1/Task/leaseTimestamp": lease_timestamp +"/taskqueue:v1beta1/Task/payloadBase64": payload_base64 +"/taskqueue:v1beta1/Task/queueName": queue_name +"/taskqueue:v1beta1/TaskQueue": task_queue +"/taskqueue:v1beta1/TaskQueue/acl": acl +"/taskqueue:v1beta1/TaskQueue/acl/adminEmails": admin_emails +"/taskqueue:v1beta1/TaskQueue/acl/adminEmails/admin_email": admin_email +"/taskqueue:v1beta1/TaskQueue/acl/consumerEmails": consumer_emails +"/taskqueue:v1beta1/TaskQueue/acl/consumerEmails/consumer_email": consumer_email +"/taskqueue:v1beta1/TaskQueue/acl/producerEmails": producer_emails +"/taskqueue:v1beta1/TaskQueue/acl/producerEmails/producer_email": producer_email +"/taskqueue:v1beta1/TaskQueue/id": id +"/taskqueue:v1beta1/TaskQueue/kind": kind +"/taskqueue:v1beta1/TaskQueue/maxLeases": max_leases +"/taskqueue:v1beta1/TaskQueue/stats": stats +"/taskqueue:v1beta1/TaskQueue/stats/leasedLastHour": leased_last_hour +"/taskqueue:v1beta1/TaskQueue/stats/leasedLastMinute": leased_last_minute +"/taskqueue:v1beta1/TaskQueue/stats/oldestTask": oldest_task +"/taskqueue:v1beta1/TaskQueue/stats/totalTasks": total_tasks +"/taskqueue:v1beta1/Tasks": tasks +"/taskqueue:v1beta1/Tasks/items": items +"/taskqueue:v1beta1/Tasks/items/item": item +"/taskqueue:v1beta1/Tasks/kind": kind +"/taskqueue:v1beta1/Tasks2": tasks2 +"/taskqueue:v1beta1/Tasks2/items": items +"/taskqueue:v1beta1/Tasks2/items/item": item +"/taskqueue:v1beta1/Tasks2/kind": kind +"/taskqueue:v1beta1/fields": fields +"/taskqueue:v1beta1/key": key +"/taskqueue:v1beta1/quotaUser": quota_user +"/taskqueue:v1beta1/taskqueue.taskqueues.get": get_taskqueue +"/taskqueue:v1beta1/taskqueue.taskqueues.get/getStats": get_stats +"/taskqueue:v1beta1/taskqueue.taskqueues.get/project": project +"/taskqueue:v1beta1/taskqueue.taskqueues.get/taskqueue": taskqueue +"/taskqueue:v1beta1/taskqueue.tasks.delete": delete_task +"/taskqueue:v1beta1/taskqueue.tasks.delete/project": project +"/taskqueue:v1beta1/taskqueue.tasks.delete/task": task +"/taskqueue:v1beta1/taskqueue.tasks.delete/taskqueue": taskqueue +"/taskqueue:v1beta1/taskqueue.tasks.get": get_task +"/taskqueue:v1beta1/taskqueue.tasks.get/project": project +"/taskqueue:v1beta1/taskqueue.tasks.get/task": task +"/taskqueue:v1beta1/taskqueue.tasks.get/taskqueue": taskqueue +"/taskqueue:v1beta1/taskqueue.tasks.lease": lease_task +"/taskqueue:v1beta1/taskqueue.tasks.lease/leaseSecs": lease_secs +"/taskqueue:v1beta1/taskqueue.tasks.lease/numTasks": num_tasks +"/taskqueue:v1beta1/taskqueue.tasks.lease/project": project +"/taskqueue:v1beta1/taskqueue.tasks.lease/taskqueue": taskqueue +"/taskqueue:v1beta1/taskqueue.tasks.list": list_tasks +"/taskqueue:v1beta1/taskqueue.tasks.list/project": project +"/taskqueue:v1beta1/taskqueue.tasks.list/taskqueue": taskqueue +"/taskqueue:v1beta1/userIp": user_ip "/taskqueue:v1beta2/Task": task "/taskqueue:v1beta2/Task/enqueueTimestamp": enqueue_timestamp "/taskqueue:v1beta2/Task/id": id @@ -42862,6 +55730,360 @@ "/toolresults:v1beta3/toolresults.projects.initializeSettings": initialize_project_settings "/toolresults:v1beta3/toolresults.projects.initializeSettings/projectId": project_id "/toolresults:v1beta3/userIp": user_ip +"/toolresults:v1beta3firstparty/AndroidAppInfo": android_app_info +"/toolresults:v1beta3firstparty/AndroidAppInfo/name": name +"/toolresults:v1beta3firstparty/AndroidAppInfo/packageName": package_name +"/toolresults:v1beta3firstparty/AndroidAppInfo/versionCode": version_code +"/toolresults:v1beta3firstparty/AndroidAppInfo/versionName": version_name +"/toolresults:v1beta3firstparty/AndroidInstrumentationTest": android_instrumentation_test +"/toolresults:v1beta3firstparty/AndroidInstrumentationTest/testPackageId": test_package_id +"/toolresults:v1beta3firstparty/AndroidInstrumentationTest/testRunnerClass": test_runner_class +"/toolresults:v1beta3firstparty/AndroidInstrumentationTest/testTargets": test_targets +"/toolresults:v1beta3firstparty/AndroidInstrumentationTest/testTargets/test_target": test_target +"/toolresults:v1beta3firstparty/AndroidInstrumentationTest/useOrchestrator": use_orchestrator +"/toolresults:v1beta3firstparty/AndroidRoboTest": android_robo_test +"/toolresults:v1beta3firstparty/AndroidRoboTest/appInitialActivity": app_initial_activity +"/toolresults:v1beta3firstparty/AndroidRoboTest/bootstrapPackageId": bootstrap_package_id +"/toolresults:v1beta3firstparty/AndroidRoboTest/bootstrapRunnerClass": bootstrap_runner_class +"/toolresults:v1beta3firstparty/AndroidRoboTest/maxDepth": max_depth +"/toolresults:v1beta3firstparty/AndroidRoboTest/maxSteps": max_steps +"/toolresults:v1beta3firstparty/AndroidTest": android_test +"/toolresults:v1beta3firstparty/AndroidTest/androidAppInfo": android_app_info +"/toolresults:v1beta3firstparty/AndroidTest/androidInstrumentationTest": android_instrumentation_test +"/toolresults:v1beta3firstparty/AndroidTest/androidRoboTest": android_robo_test +"/toolresults:v1beta3firstparty/AndroidTest/testTimeout": test_timeout +"/toolresults:v1beta3firstparty/Any": any +"/toolresults:v1beta3firstparty/Any/typeUrl": type_url +"/toolresults:v1beta3firstparty/Any/value": value +"/toolresults:v1beta3firstparty/AppStartTime": app_start_time +"/toolresults:v1beta3firstparty/AppStartTime/fullyDrawnTime": fully_drawn_time +"/toolresults:v1beta3firstparty/AppStartTime/initialDisplayTime": initial_display_time +"/toolresults:v1beta3firstparty/BasicPerfSampleSeries": basic_perf_sample_series +"/toolresults:v1beta3firstparty/BasicPerfSampleSeries/perfMetricType": perf_metric_type +"/toolresults:v1beta3firstparty/BasicPerfSampleSeries/perfUnit": perf_unit +"/toolresults:v1beta3firstparty/BasicPerfSampleSeries/sampleSeriesLabel": sample_series_label +"/toolresults:v1beta3firstparty/BatchCreatePerfSamplesRequest": batch_create_perf_samples_request +"/toolresults:v1beta3firstparty/BatchCreatePerfSamplesRequest/perfSamples": perf_samples +"/toolresults:v1beta3firstparty/BatchCreatePerfSamplesRequest/perfSamples/perf_sample": perf_sample +"/toolresults:v1beta3firstparty/BatchCreatePerfSamplesResponse": batch_create_perf_samples_response +"/toolresults:v1beta3firstparty/BatchCreatePerfSamplesResponse/perfSamples": perf_samples +"/toolresults:v1beta3firstparty/BatchCreatePerfSamplesResponse/perfSamples/perf_sample": perf_sample +"/toolresults:v1beta3firstparty/CPUInfo": cpu_info +"/toolresults:v1beta3firstparty/CPUInfo/cpuProcessor": cpu_processor +"/toolresults:v1beta3firstparty/CPUInfo/cpuSpeedInGhz": cpu_speed_in_ghz +"/toolresults:v1beta3firstparty/CPUInfo/numberOfCores": number_of_cores +"/toolresults:v1beta3firstparty/Duration": duration +"/toolresults:v1beta3firstparty/Duration/nanos": nanos +"/toolresults:v1beta3firstparty/Duration/seconds": seconds +"/toolresults:v1beta3firstparty/Execution": execution +"/toolresults:v1beta3firstparty/Execution/completionTime": completion_time +"/toolresults:v1beta3firstparty/Execution/creationTime": creation_time +"/toolresults:v1beta3firstparty/Execution/executionId": execution_id +"/toolresults:v1beta3firstparty/Execution/outcome": outcome +"/toolresults:v1beta3firstparty/Execution/specification": specification +"/toolresults:v1beta3firstparty/Execution/state": state +"/toolresults:v1beta3firstparty/Execution/testExecutionMatrixId": test_execution_matrix_id +"/toolresults:v1beta3firstparty/FailureDetail": failure_detail +"/toolresults:v1beta3firstparty/FailureDetail/crashed": crashed +"/toolresults:v1beta3firstparty/FailureDetail/notInstalled": not_installed +"/toolresults:v1beta3firstparty/FailureDetail/otherNativeCrash": other_native_crash +"/toolresults:v1beta3firstparty/FailureDetail/timedOut": timed_out +"/toolresults:v1beta3firstparty/FailureDetail/unableToCrawl": unable_to_crawl +"/toolresults:v1beta3firstparty/FileReference": file_reference +"/toolresults:v1beta3firstparty/FileReference/fileUri": file_uri +"/toolresults:v1beta3firstparty/History": history +"/toolresults:v1beta3firstparty/History/displayName": display_name +"/toolresults:v1beta3firstparty/History/historyId": history_id +"/toolresults:v1beta3firstparty/History/name": name +"/toolresults:v1beta3firstparty/Image": image +"/toolresults:v1beta3firstparty/Image/error": error +"/toolresults:v1beta3firstparty/Image/sourceImage": source_image +"/toolresults:v1beta3firstparty/Image/stepId": step_id +"/toolresults:v1beta3firstparty/Image/thumbnail": thumbnail +"/toolresults:v1beta3firstparty/InconclusiveDetail": inconclusive_detail +"/toolresults:v1beta3firstparty/InconclusiveDetail/abortedByUser": aborted_by_user +"/toolresults:v1beta3firstparty/InconclusiveDetail/infrastructureFailure": infrastructure_failure +"/toolresults:v1beta3firstparty/ListExecutionsResponse": list_executions_response +"/toolresults:v1beta3firstparty/ListExecutionsResponse/executions": executions +"/toolresults:v1beta3firstparty/ListExecutionsResponse/executions/execution": execution +"/toolresults:v1beta3firstparty/ListExecutionsResponse/nextPageToken": next_page_token +"/toolresults:v1beta3firstparty/ListHistoriesResponse": list_histories_response +"/toolresults:v1beta3firstparty/ListHistoriesResponse/histories": histories +"/toolresults:v1beta3firstparty/ListHistoriesResponse/histories/history": history +"/toolresults:v1beta3firstparty/ListHistoriesResponse/nextPageToken": next_page_token +"/toolresults:v1beta3firstparty/ListPerfSampleSeriesResponse": list_perf_sample_series_response +"/toolresults:v1beta3firstparty/ListPerfSampleSeriesResponse/perfSampleSeries": perf_sample_series +"/toolresults:v1beta3firstparty/ListPerfSampleSeriesResponse/perfSampleSeries/perf_sample_series": perf_sample_series +"/toolresults:v1beta3firstparty/ListPerfSamplesResponse": list_perf_samples_response +"/toolresults:v1beta3firstparty/ListPerfSamplesResponse/nextPageToken": next_page_token +"/toolresults:v1beta3firstparty/ListPerfSamplesResponse/perfSamples": perf_samples +"/toolresults:v1beta3firstparty/ListPerfSamplesResponse/perfSamples/perf_sample": perf_sample +"/toolresults:v1beta3firstparty/ListScreenshotClustersResponse": list_screenshot_clusters_response +"/toolresults:v1beta3firstparty/ListScreenshotClustersResponse/clusters": clusters +"/toolresults:v1beta3firstparty/ListScreenshotClustersResponse/clusters/cluster": cluster +"/toolresults:v1beta3firstparty/ListStepThumbnailsResponse": list_step_thumbnails_response +"/toolresults:v1beta3firstparty/ListStepThumbnailsResponse/nextPageToken": next_page_token +"/toolresults:v1beta3firstparty/ListStepThumbnailsResponse/thumbnails": thumbnails +"/toolresults:v1beta3firstparty/ListStepThumbnailsResponse/thumbnails/thumbnail": thumbnail +"/toolresults:v1beta3firstparty/ListStepsResponse": list_steps_response +"/toolresults:v1beta3firstparty/ListStepsResponse/nextPageToken": next_page_token +"/toolresults:v1beta3firstparty/ListStepsResponse/steps": steps +"/toolresults:v1beta3firstparty/ListStepsResponse/steps/step": step +"/toolresults:v1beta3firstparty/MemoryInfo": memory_info +"/toolresults:v1beta3firstparty/MemoryInfo/memoryCapInKibibyte": memory_cap_in_kibibyte +"/toolresults:v1beta3firstparty/MemoryInfo/memoryTotalInKibibyte": memory_total_in_kibibyte +"/toolresults:v1beta3firstparty/Outcome": outcome +"/toolresults:v1beta3firstparty/Outcome/failureDetail": failure_detail +"/toolresults:v1beta3firstparty/Outcome/inconclusiveDetail": inconclusive_detail +"/toolresults:v1beta3firstparty/Outcome/skippedDetail": skipped_detail +"/toolresults:v1beta3firstparty/Outcome/successDetail": success_detail +"/toolresults:v1beta3firstparty/Outcome/summary": summary +"/toolresults:v1beta3firstparty/PerfEnvironment": perf_environment +"/toolresults:v1beta3firstparty/PerfEnvironment/cpuInfo": cpu_info +"/toolresults:v1beta3firstparty/PerfEnvironment/memoryInfo": memory_info +"/toolresults:v1beta3firstparty/PerfMetricsSummary": perf_metrics_summary +"/toolresults:v1beta3firstparty/PerfMetricsSummary/appStartTime": app_start_time +"/toolresults:v1beta3firstparty/PerfMetricsSummary/executionId": execution_id +"/toolresults:v1beta3firstparty/PerfMetricsSummary/historyId": history_id +"/toolresults:v1beta3firstparty/PerfMetricsSummary/perfEnvironment": perf_environment +"/toolresults:v1beta3firstparty/PerfMetricsSummary/perfMetrics": perf_metrics +"/toolresults:v1beta3firstparty/PerfMetricsSummary/perfMetrics/perf_metric": perf_metric +"/toolresults:v1beta3firstparty/PerfMetricsSummary/projectId": project_id +"/toolresults:v1beta3firstparty/PerfMetricsSummary/stepId": step_id +"/toolresults:v1beta3firstparty/PerfSample": perf_sample +"/toolresults:v1beta3firstparty/PerfSample/sampleTime": sample_time +"/toolresults:v1beta3firstparty/PerfSample/value": value +"/toolresults:v1beta3firstparty/PerfSampleSeries": perf_sample_series +"/toolresults:v1beta3firstparty/PerfSampleSeries/basicPerfSampleSeries": basic_perf_sample_series +"/toolresults:v1beta3firstparty/PerfSampleSeries/executionId": execution_id +"/toolresults:v1beta3firstparty/PerfSampleSeries/historyId": history_id +"/toolresults:v1beta3firstparty/PerfSampleSeries/projectId": project_id +"/toolresults:v1beta3firstparty/PerfSampleSeries/sampleSeriesId": sample_series_id +"/toolresults:v1beta3firstparty/PerfSampleSeries/stepId": step_id +"/toolresults:v1beta3firstparty/ProjectSettings": project_settings +"/toolresults:v1beta3firstparty/ProjectSettings/defaultBucket": default_bucket +"/toolresults:v1beta3firstparty/ProjectSettings/name": name +"/toolresults:v1beta3firstparty/PublishXunitXmlFilesRequest": publish_xunit_xml_files_request +"/toolresults:v1beta3firstparty/PublishXunitXmlFilesRequest/xunitXmlFiles": xunit_xml_files +"/toolresults:v1beta3firstparty/PublishXunitXmlFilesRequest/xunitXmlFiles/xunit_xml_file": xunit_xml_file +"/toolresults:v1beta3firstparty/Screen": screen +"/toolresults:v1beta3firstparty/Screen/fileReference": file_reference +"/toolresults:v1beta3firstparty/Screen/locale": locale +"/toolresults:v1beta3firstparty/Screen/model": model +"/toolresults:v1beta3firstparty/Screen/version": version +"/toolresults:v1beta3firstparty/ScreenshotCluster": screenshot_cluster +"/toolresults:v1beta3firstparty/ScreenshotCluster/activity": activity +"/toolresults:v1beta3firstparty/ScreenshotCluster/clusterId": cluster_id +"/toolresults:v1beta3firstparty/ScreenshotCluster/keyScreen": key_screen +"/toolresults:v1beta3firstparty/ScreenshotCluster/screens": screens +"/toolresults:v1beta3firstparty/ScreenshotCluster/screens/screen": screen +"/toolresults:v1beta3firstparty/SkippedDetail": skipped_detail +"/toolresults:v1beta3firstparty/SkippedDetail/incompatibleAppVersion": incompatible_app_version +"/toolresults:v1beta3firstparty/SkippedDetail/incompatibleArchitecture": incompatible_architecture +"/toolresults:v1beta3firstparty/SkippedDetail/incompatibleDevice": incompatible_device +"/toolresults:v1beta3firstparty/Specification": specification +"/toolresults:v1beta3firstparty/Specification/androidTest": android_test +"/toolresults:v1beta3firstparty/StackTrace": stack_trace +"/toolresults:v1beta3firstparty/StackTrace/clusterId": cluster_id +"/toolresults:v1beta3firstparty/StackTrace/exception": exception +"/toolresults:v1beta3firstparty/StackTrace/reportId": report_id +"/toolresults:v1beta3firstparty/Status": status +"/toolresults:v1beta3firstparty/Status/code": code +"/toolresults:v1beta3firstparty/Status/details": details +"/toolresults:v1beta3firstparty/Status/details/detail": detail +"/toolresults:v1beta3firstparty/Status/message": message +"/toolresults:v1beta3firstparty/Step": step +"/toolresults:v1beta3firstparty/Step/completionTime": completion_time +"/toolresults:v1beta3firstparty/Step/creationTime": creation_time +"/toolresults:v1beta3firstparty/Step/description": description +"/toolresults:v1beta3firstparty/Step/deviceUsageDuration": device_usage_duration +"/toolresults:v1beta3firstparty/Step/dimensionValue": dimension_value +"/toolresults:v1beta3firstparty/Step/dimensionValue/dimension_value": dimension_value +"/toolresults:v1beta3firstparty/Step/hasImages": has_images +"/toolresults:v1beta3firstparty/Step/labels": labels +"/toolresults:v1beta3firstparty/Step/labels/label": label +"/toolresults:v1beta3firstparty/Step/name": name +"/toolresults:v1beta3firstparty/Step/outcome": outcome +"/toolresults:v1beta3firstparty/Step/runDuration": run_duration +"/toolresults:v1beta3firstparty/Step/state": state +"/toolresults:v1beta3firstparty/Step/stepId": step_id +"/toolresults:v1beta3firstparty/Step/testExecutionStep": test_execution_step +"/toolresults:v1beta3firstparty/Step/toolExecutionStep": tool_execution_step +"/toolresults:v1beta3firstparty/StepDimensionValueEntry": step_dimension_value_entry +"/toolresults:v1beta3firstparty/StepDimensionValueEntry/key": key +"/toolresults:v1beta3firstparty/StepDimensionValueEntry/value": value +"/toolresults:v1beta3firstparty/StepLabelsEntry": step_labels_entry +"/toolresults:v1beta3firstparty/StepLabelsEntry/key": key +"/toolresults:v1beta3firstparty/StepLabelsEntry/value": value +"/toolresults:v1beta3firstparty/SuccessDetail": success_detail +"/toolresults:v1beta3firstparty/SuccessDetail/otherNativeCrash": other_native_crash +"/toolresults:v1beta3firstparty/TestCaseReference": test_case_reference +"/toolresults:v1beta3firstparty/TestCaseReference/className": class_name +"/toolresults:v1beta3firstparty/TestCaseReference/name": name +"/toolresults:v1beta3firstparty/TestCaseReference/testSuiteName": test_suite_name +"/toolresults:v1beta3firstparty/TestExecutionStep": test_execution_step +"/toolresults:v1beta3firstparty/TestExecutionStep/testIssues": test_issues +"/toolresults:v1beta3firstparty/TestExecutionStep/testIssues/test_issue": test_issue +"/toolresults:v1beta3firstparty/TestExecutionStep/testSuiteOverviews": test_suite_overviews +"/toolresults:v1beta3firstparty/TestExecutionStep/testSuiteOverviews/test_suite_overview": test_suite_overview +"/toolresults:v1beta3firstparty/TestExecutionStep/testTiming": test_timing +"/toolresults:v1beta3firstparty/TestExecutionStep/toolExecution": tool_execution +"/toolresults:v1beta3firstparty/TestIssue": test_issue +"/toolresults:v1beta3firstparty/TestIssue/errorMessage": error_message +"/toolresults:v1beta3firstparty/TestIssue/severity": severity +"/toolresults:v1beta3firstparty/TestIssue/stackTrace": stack_trace +"/toolresults:v1beta3firstparty/TestIssue/type": type +"/toolresults:v1beta3firstparty/TestIssue/warning": warning +"/toolresults:v1beta3firstparty/TestSuiteOverview": test_suite_overview +"/toolresults:v1beta3firstparty/TestSuiteOverview/errorCount": error_count +"/toolresults:v1beta3firstparty/TestSuiteOverview/failureCount": failure_count +"/toolresults:v1beta3firstparty/TestSuiteOverview/name": name +"/toolresults:v1beta3firstparty/TestSuiteOverview/skippedCount": skipped_count +"/toolresults:v1beta3firstparty/TestSuiteOverview/totalCount": total_count +"/toolresults:v1beta3firstparty/TestSuiteOverview/xmlSource": xml_source +"/toolresults:v1beta3firstparty/TestTiming": test_timing +"/toolresults:v1beta3firstparty/TestTiming/testProcessDuration": test_process_duration +"/toolresults:v1beta3firstparty/Thumbnail": thumbnail +"/toolresults:v1beta3firstparty/Thumbnail/contentType": content_type +"/toolresults:v1beta3firstparty/Thumbnail/data": data +"/toolresults:v1beta3firstparty/Thumbnail/heightPx": height_px +"/toolresults:v1beta3firstparty/Thumbnail/widthPx": width_px +"/toolresults:v1beta3firstparty/Timestamp": timestamp +"/toolresults:v1beta3firstparty/Timestamp/nanos": nanos +"/toolresults:v1beta3firstparty/Timestamp/seconds": seconds +"/toolresults:v1beta3firstparty/ToolExecution": tool_execution +"/toolresults:v1beta3firstparty/ToolExecution/commandLineArguments": command_line_arguments +"/toolresults:v1beta3firstparty/ToolExecution/commandLineArguments/command_line_argument": command_line_argument +"/toolresults:v1beta3firstparty/ToolExecution/exitCode": exit_code +"/toolresults:v1beta3firstparty/ToolExecution/toolLogs": tool_logs +"/toolresults:v1beta3firstparty/ToolExecution/toolLogs/tool_log": tool_log +"/toolresults:v1beta3firstparty/ToolExecution/toolOutputs": tool_outputs +"/toolresults:v1beta3firstparty/ToolExecution/toolOutputs/tool_output": tool_output +"/toolresults:v1beta3firstparty/ToolExecutionStep": tool_execution_step +"/toolresults:v1beta3firstparty/ToolExecutionStep/toolExecution": tool_execution +"/toolresults:v1beta3firstparty/ToolExitCode": tool_exit_code +"/toolresults:v1beta3firstparty/ToolExitCode/number": number +"/toolresults:v1beta3firstparty/ToolOutputReference": tool_output_reference +"/toolresults:v1beta3firstparty/ToolOutputReference/creationTime": creation_time +"/toolresults:v1beta3firstparty/ToolOutputReference/output": output +"/toolresults:v1beta3firstparty/ToolOutputReference/testCase": test_case +"/toolresults:v1beta3firstparty/fields": fields +"/toolresults:v1beta3firstparty/key": key +"/toolresults:v1beta3firstparty/quotaUser": quota_user +"/toolresults:v1beta3firstparty/toolresults.projects.getSettings": get_project_settings +"/toolresults:v1beta3firstparty/toolresults.projects.getSettings/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.create": create_project_history +"/toolresults:v1beta3firstparty/toolresults.projects.histories.create/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.create/requestId": request_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.clusters.list": list_project_history_execution_clusters +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.clusters.list/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.clusters.list/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.clusters.list/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.create": create_project_history_execution +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.create/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.create/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.create/requestId": request_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.get": get_project_history_execution +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.get/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.get/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.get/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.list": list_project_history_executions +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.list/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.list/pageSize": page_size +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.list/pageToken": page_token +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.list/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.patch": patch_project_history_execution +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.patch/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.patch/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.patch/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.patch/requestId": request_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.create": create_project_history_execution_step +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.create/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.create/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.create/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.create/requestId": request_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.get": get_project_history_execution_step +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.get/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.get/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.get/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.get/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.getPerfMetricsSummary": get_project_history_execution_step_perf_metrics_summary +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.getPerfMetricsSummary/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.getPerfMetricsSummary/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.getPerfMetricsSummary/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.getPerfMetricsSummary/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.list": list_project_history_execution_steps +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.list/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.list/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.list/pageSize": page_size +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.list/pageToken": page_token +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.list/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.patch": patch_project_history_execution_step +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.patch/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.patch/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.patch/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.patch/requestId": request_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.patch/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfMetricsSummary.create": create_project_history_execution_step_perf_metrics_summary +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfMetricsSummary.create/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfMetricsSummary.create/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfMetricsSummary.create/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfMetricsSummary.create/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.create": create_project_history_execution_step_perf_sample_series +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.create/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.create/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.create/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.create/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.get": get_project_history_execution_step_perf_sample_series +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.get/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.get/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.get/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.get/sampleSeriesId": sample_series_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.get/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.list": list_project_history_execution_step_perf_sample_series +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.list/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.list/filter": filter +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.list/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.list/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.list/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate": batch_create_perf_samples +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate/projectId": project_id +? "/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate/sampleSeriesId" +: sample_series_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.batchCreate/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list": list_project_history_execution_step_perf_sample_series_samples +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list/pageSize": page_size +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list/pageToken": page_token +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list/sampleSeriesId": sample_series_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.perfSampleSeries.samples.list/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.publishXunitXmlFiles": publish_step_xunit_xml_files +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.publishXunitXmlFiles/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.publishXunitXmlFiles/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.publishXunitXmlFiles/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.publishXunitXmlFiles/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.thumbnails.list": list_project_history_execution_step_thumbnails +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.thumbnails.list/executionId": execution_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.thumbnails.list/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.thumbnails.list/pageSize": page_size +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.thumbnails.list/pageToken": page_token +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.thumbnails.list/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.executions.steps.thumbnails.list/stepId": step_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.get": get_project_history +"/toolresults:v1beta3firstparty/toolresults.projects.histories.get/historyId": history_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.get/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.histories.list": list_project_histories +"/toolresults:v1beta3firstparty/toolresults.projects.histories.list/filterByName": filter_by_name +"/toolresults:v1beta3firstparty/toolresults.projects.histories.list/pageSize": page_size +"/toolresults:v1beta3firstparty/toolresults.projects.histories.list/pageToken": page_token +"/toolresults:v1beta3firstparty/toolresults.projects.histories.list/projectId": project_id +"/toolresults:v1beta3firstparty/toolresults.projects.initializeSettings": initialize_project_settings +"/toolresults:v1beta3firstparty/toolresults.projects.initializeSettings/projectId": project_id +"/toolresults:v1beta3firstparty/userIp": user_ip "/translate:v2/DetectLanguageRequest": detect_language_request "/translate:v2/DetectLanguageRequest/q": q "/translate:v2/DetectLanguageRequest/q/q": q @@ -45138,6 +58360,81 @@ "/youtubeAnalytics:v1/youtubeAnalytics.reports.query/sort": sort "/youtubeAnalytics:v1/youtubeAnalytics.reports.query/start-date": start_date "/youtubeAnalytics:v1/youtubeAnalytics.reports.query/start-index": start_index +"/youtubeAnalytics:v1beta1/Group": group +"/youtubeAnalytics:v1beta1/Group/contentDetails": content_details +"/youtubeAnalytics:v1beta1/Group/contentDetails/itemCount": item_count +"/youtubeAnalytics:v1beta1/Group/contentDetails/itemType": item_type +"/youtubeAnalytics:v1beta1/Group/etag": etag +"/youtubeAnalytics:v1beta1/Group/id": id +"/youtubeAnalytics:v1beta1/Group/kind": kind +"/youtubeAnalytics:v1beta1/Group/snippet": snippet +"/youtubeAnalytics:v1beta1/Group/snippet/publishedAt": published_at +"/youtubeAnalytics:v1beta1/Group/snippet/title": title +"/youtubeAnalytics:v1beta1/GroupItem": group_item +"/youtubeAnalytics:v1beta1/GroupItem/etag": etag +"/youtubeAnalytics:v1beta1/GroupItem/groupId": group_id +"/youtubeAnalytics:v1beta1/GroupItem/id": id +"/youtubeAnalytics:v1beta1/GroupItem/kind": kind +"/youtubeAnalytics:v1beta1/GroupItem/resource": resource +"/youtubeAnalytics:v1beta1/GroupItem/resource/id": id +"/youtubeAnalytics:v1beta1/GroupItem/resource/kind": kind +"/youtubeAnalytics:v1beta1/GroupItemListResponse": group_item_list_response +"/youtubeAnalytics:v1beta1/GroupItemListResponse/etag": etag +"/youtubeAnalytics:v1beta1/GroupItemListResponse/items": items +"/youtubeAnalytics:v1beta1/GroupItemListResponse/items/item": item +"/youtubeAnalytics:v1beta1/GroupItemListResponse/kind": kind +"/youtubeAnalytics:v1beta1/GroupListResponse": group_list_response +"/youtubeAnalytics:v1beta1/GroupListResponse/etag": etag +"/youtubeAnalytics:v1beta1/GroupListResponse/items": items +"/youtubeAnalytics:v1beta1/GroupListResponse/items/item": item +"/youtubeAnalytics:v1beta1/GroupListResponse/kind": kind +"/youtubeAnalytics:v1beta1/GroupListResponse/nextPageToken": next_page_token +"/youtubeAnalytics:v1beta1/ResultTable": result_table +"/youtubeAnalytics:v1beta1/ResultTable/columnHeaders": column_headers +"/youtubeAnalytics:v1beta1/ResultTable/columnHeaders/column_header": column_header +"/youtubeAnalytics:v1beta1/ResultTable/columnHeaders/column_header/columnType": column_type +"/youtubeAnalytics:v1beta1/ResultTable/columnHeaders/column_header/dataType": data_type +"/youtubeAnalytics:v1beta1/ResultTable/columnHeaders/column_header/name": name +"/youtubeAnalytics:v1beta1/ResultTable/kind": kind +"/youtubeAnalytics:v1beta1/ResultTable/rows": rows +"/youtubeAnalytics:v1beta1/ResultTable/rows/row": row +"/youtubeAnalytics:v1beta1/ResultTable/rows/row/row": row +"/youtubeAnalytics:v1beta1/fields": fields +"/youtubeAnalytics:v1beta1/key": key +"/youtubeAnalytics:v1beta1/quotaUser": quota_user +"/youtubeAnalytics:v1beta1/userIp": user_ip +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.delete": delete_group_item +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.delete/id": id +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.delete/onBehalfOfContentOwner": on_behalf_of_content_owner +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.insert": insert_group_item +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.insert/onBehalfOfContentOwner": on_behalf_of_content_owner +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.list": list_group_items +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.list/groupId": group_id +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groupItems.list/onBehalfOfContentOwner": on_behalf_of_content_owner +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.delete": delete_group +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.delete/id": id +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.delete/onBehalfOfContentOwner": on_behalf_of_content_owner +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.insert": insert_group +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.insert/onBehalfOfContentOwner": on_behalf_of_content_owner +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.list": list_groups +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.list/id": id +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.list/mine": mine +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.list/onBehalfOfContentOwner": on_behalf_of_content_owner +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.list/pageToken": page_token +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.update": update_group +"/youtubeAnalytics:v1beta1/youtubeAnalytics.groups.update/onBehalfOfContentOwner": on_behalf_of_content_owner +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query": query_report +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/currency": currency +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/dimensions": dimensions +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/end-date": end_date +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/filters": filters +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/ids": ids +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/include-historical-channel-data": include_historical_channel_data +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/max-results": max_results +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/metrics": metrics +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/sort": sort +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/start-date": start_date +"/youtubeAnalytics:v1beta1/youtubeAnalytics.reports.query/start-index": start_index "/youtubePartner:v1/AdBreak": ad_break "/youtubePartner:v1/AdBreak/midrollSeconds": midroll_seconds "/youtubePartner:v1/AdBreak/position": position diff --git a/generated/google/apis/adexchangebuyer_v1_2.rb b/generated/google/apis/adexchangebuyer_v1_2.rb new file mode 100644 index 000000000..6d45b10dd --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_2.rb @@ -0,0 +1,35 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/adexchangebuyer_v1_2/service.rb' +require 'google/apis/adexchangebuyer_v1_2/classes.rb' +require 'google/apis/adexchangebuyer_v1_2/representations.rb' + +module Google + module Apis + # Ad Exchange Buyer API + # + # Accesses your bidding-account information, submits creatives for validation, + # finds available direct deals, and retrieves performance reports. + # + # @see https://developers.google.com/ad-exchange/buyer-rest + module AdexchangebuyerV1_2 + VERSION = 'V1_2' + REVISION = '20170215' + + # Manage your Ad Exchange buyer account configuration + AUTH_ADEXCHANGE_BUYER = 'https://www.googleapis.com/auth/adexchange.buyer' + end + end +end diff --git a/generated/google/apis/adexchangebuyer_v1_2/classes.rb b/generated/google/apis/adexchangebuyer_v1_2/classes.rb new file mode 100644 index 000000000..236fe14ec --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_2/classes.rb @@ -0,0 +1,457 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangebuyerV1_2 + + # Configuration data for an Ad Exchange buyer account. + class Account + include Google::Apis::Core::Hashable + + # Your bidder locations that have distinct URLs. + # Corresponds to the JSON property `bidderLocation` + # @return [Array] + attr_accessor :bidder_location + + # The nid parameter value used in cookie match requests. Please contact your + # technical account manager if you need to change this. + # Corresponds to the JSON property `cookieMatchingNid` + # @return [String] + attr_accessor :cookie_matching_nid + + # The base URL used in cookie match requests. + # Corresponds to the JSON property `cookieMatchingUrl` + # @return [String] + attr_accessor :cookie_matching_url + + # Account id. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The maximum number of active creatives that an account can have, where a + # creative is active if it was inserted or bid with in the last 30 days. Please + # contact your technical account manager if you need to change this. + # Corresponds to the JSON property `maximumActiveCreatives` + # @return [Fixnum] + attr_accessor :maximum_active_creatives + + # The sum of all bidderLocation.maximumQps values cannot exceed this. Please + # contact your technical account manager if you need to change this. + # Corresponds to the JSON property `maximumTotalQps` + # @return [Fixnum] + attr_accessor :maximum_total_qps + + # The number of creatives that this account inserted or bid with in the last 30 + # days. + # Corresponds to the JSON property `numberActiveCreatives` + # @return [Fixnum] + attr_accessor :number_active_creatives + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bidder_location = args[:bidder_location] if args.key?(:bidder_location) + @cookie_matching_nid = args[:cookie_matching_nid] if args.key?(:cookie_matching_nid) + @cookie_matching_url = args[:cookie_matching_url] if args.key?(:cookie_matching_url) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @maximum_active_creatives = args[:maximum_active_creatives] if args.key?(:maximum_active_creatives) + @maximum_total_qps = args[:maximum_total_qps] if args.key?(:maximum_total_qps) + @number_active_creatives = args[:number_active_creatives] if args.key?(:number_active_creatives) + end + + # + class BidderLocation + include Google::Apis::Core::Hashable + + # The maximum queries per second the Ad Exchange will send. + # Corresponds to the JSON property `maximumQps` + # @return [Fixnum] + attr_accessor :maximum_qps + + # The geographical region the Ad Exchange should send requests from. Only used + # by some quota systems, but always setting the value is recommended. Allowed + # values: + # - ASIA + # - EUROPE + # - US_EAST + # - US_WEST + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # The URL to which the Ad Exchange will send bid requests. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @maximum_qps = args[:maximum_qps] if args.key?(:maximum_qps) + @region = args[:region] if args.key?(:region) + @url = args[:url] if args.key?(:url) + end + end + end + + # An account feed lists Ad Exchange buyer accounts that the user has access to. + # Each entry in the feed corresponds to a single buyer account. + class AccountsList + include Google::Apis::Core::Hashable + + # A list of accounts. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A creative and its classification data. + class Creative + include Google::Apis::Core::Hashable + + # The HTML snippet that displays the ad when inserted in the web page. If set, + # videoURL should not be set. + # Corresponds to the JSON property `HTMLSnippet` + # @return [String] + attr_accessor :html_snippet + + # Account id. + # Corresponds to the JSON property `accountId` + # @return [Fixnum] + attr_accessor :account_id + + # Detected advertiser id, if any. Read-only. This field should not be set in + # requests. + # Corresponds to the JSON property `advertiserId` + # @return [Array] + attr_accessor :advertiser_id + + # The name of the company being advertised in the creative. + # Corresponds to the JSON property `advertiserName` + # @return [String] + attr_accessor :advertiser_name + + # The agency id for this creative. + # Corresponds to the JSON property `agencyId` + # @return [Fixnum] + attr_accessor :agency_id + + # The last upload timestamp of this creative if it was uploaded via API. Read- + # only. The value of this field is generated, and will be ignored for uploads. ( + # formatted RFC 3339 timestamp). + # Corresponds to the JSON property `apiUploadTimestamp` + # @return [DateTime] + attr_accessor :api_upload_timestamp + + # All attributes for the ads that may be shown from this snippet. + # Corresponds to the JSON property `attribute` + # @return [Array] + attr_accessor :attribute + + # A buyer-specific id identifying the creative in this ad. + # Corresponds to the JSON property `buyerCreativeId` + # @return [String] + attr_accessor :buyer_creative_id + + # The set of destination urls for the snippet. + # Corresponds to the JSON property `clickThroughUrl` + # @return [Array] + attr_accessor :click_through_url + + # Shows any corrections that were applied to this creative. Read-only. This + # field should not be set in requests. + # Corresponds to the JSON property `corrections` + # @return [Array] + attr_accessor :corrections + + # The reasons for disapproval, if any. Note that not all disapproval reasons may + # be categorized, so it is possible for the creative to have a status of + # DISAPPROVED with an empty list for disapproval_reasons. In this case, please + # reach out to your TAM to help debug the issue. Read-only. This field should + # not be set in requests. + # Corresponds to the JSON property `disapprovalReasons` + # @return [Array] + attr_accessor :disapproval_reasons + + # The filtering reasons for the creative. Read-only. This field should not be + # set in requests. + # Corresponds to the JSON property `filteringReasons` + # @return [Google::Apis::AdexchangebuyerV1_2::Creative::FilteringReasons] + attr_accessor :filtering_reasons + + # Ad height. + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # The set of urls to be called to record an impression. + # Corresponds to the JSON property `impressionTrackingUrl` + # @return [Array] + attr_accessor :impression_tracking_url + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Detected product categories, if any. Read-only. This field should not be set + # in requests. + # Corresponds to the JSON property `productCategories` + # @return [Array] + attr_accessor :product_categories + + # All restricted categories for the ads that may be shown from this snippet. + # Corresponds to the JSON property `restrictedCategories` + # @return [Array] + attr_accessor :restricted_categories + + # Detected sensitive categories, if any. Read-only. This field should not be set + # in requests. + # Corresponds to the JSON property `sensitiveCategories` + # @return [Array] + attr_accessor :sensitive_categories + + # Creative serving status. Read-only. This field should not be set in requests. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # All vendor types for the ads that may be shown from this snippet. + # Corresponds to the JSON property `vendorType` + # @return [Array] + attr_accessor :vendor_type + + # The version for this creative. Read-only. This field should not be set in + # requests. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + # The url to fetch a video ad. If set, HTMLSnippet should not be set. + # Corresponds to the JSON property `videoURL` + # @return [String] + attr_accessor :video_url + + # Ad width. + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @html_snippet = args[:html_snippet] if args.key?(:html_snippet) + @account_id = args[:account_id] if args.key?(:account_id) + @advertiser_id = args[:advertiser_id] if args.key?(:advertiser_id) + @advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name) + @agency_id = args[:agency_id] if args.key?(:agency_id) + @api_upload_timestamp = args[:api_upload_timestamp] if args.key?(:api_upload_timestamp) + @attribute = args[:attribute] if args.key?(:attribute) + @buyer_creative_id = args[:buyer_creative_id] if args.key?(:buyer_creative_id) + @click_through_url = args[:click_through_url] if args.key?(:click_through_url) + @corrections = args[:corrections] if args.key?(:corrections) + @disapproval_reasons = args[:disapproval_reasons] if args.key?(:disapproval_reasons) + @filtering_reasons = args[:filtering_reasons] if args.key?(:filtering_reasons) + @height = args[:height] if args.key?(:height) + @impression_tracking_url = args[:impression_tracking_url] if args.key?(:impression_tracking_url) + @kind = args[:kind] if args.key?(:kind) + @product_categories = args[:product_categories] if args.key?(:product_categories) + @restricted_categories = args[:restricted_categories] if args.key?(:restricted_categories) + @sensitive_categories = args[:sensitive_categories] if args.key?(:sensitive_categories) + @status = args[:status] if args.key?(:status) + @vendor_type = args[:vendor_type] if args.key?(:vendor_type) + @version = args[:version] if args.key?(:version) + @video_url = args[:video_url] if args.key?(:video_url) + @width = args[:width] if args.key?(:width) + end + + # + class Correction + include Google::Apis::Core::Hashable + + # Additional details about the correction. + # Corresponds to the JSON property `details` + # @return [Array] + attr_accessor :details + + # The type of correction that was applied to the creative. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @reason = args[:reason] if args.key?(:reason) + end + end + + # + class DisapprovalReason + include Google::Apis::Core::Hashable + + # Additional details about the reason for disapproval. + # Corresponds to the JSON property `details` + # @return [Array] + attr_accessor :details + + # The categorized reason for disapproval. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @reason = args[:reason] if args.key?(:reason) + end + end + + # The filtering reasons for the creative. Read-only. This field should not be + # set in requests. + class FilteringReasons + include Google::Apis::Core::Hashable + + # The date in ISO 8601 format for the data. The data is collected from 00:00:00 + # to 23:59:59 in PST. + # Corresponds to the JSON property `date` + # @return [String] + attr_accessor :date + + # The filtering reasons. + # Corresponds to the JSON property `reasons` + # @return [Array] + attr_accessor :reasons + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @date = args[:date] if args.key?(:date) + @reasons = args[:reasons] if args.key?(:reasons) + end + + # + class Reason + include Google::Apis::Core::Hashable + + # The number of times the creative was filtered for the status. The count is + # aggregated across all publishers on the exchange. + # Corresponds to the JSON property `filteringCount` + # @return [Fixnum] + attr_accessor :filtering_count + + # The filtering status code. Please refer to the creative-status-codes.txt file + # for different statuses. + # Corresponds to the JSON property `filteringStatus` + # @return [Fixnum] + attr_accessor :filtering_status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @filtering_count = args[:filtering_count] if args.key?(:filtering_count) + @filtering_status = args[:filtering_status] if args.key?(:filtering_status) + end + end + end + end + + # The creatives feed lists the active creatives for the Ad Exchange buyer + # accounts that the user has access to. Each entry in the feed corresponds to a + # single creative. + class CreativesList + include Google::Apis::Core::Hashable + + # A list of creatives. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through creatives. To retrieve the next page + # of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + end + end +end diff --git a/generated/google/apis/adexchangebuyer_v1_2/representations.rb b/generated/google/apis/adexchangebuyer_v1_2/representations.rb new file mode 100644 index 000000000..7b1deba4f --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_2/representations.rb @@ -0,0 +1,189 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangebuyerV1_2 + + class Account + class Representation < Google::Apis::Core::JsonRepresentation; end + + class BidderLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AccountsList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Creative + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Correction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DisapprovalReason + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FilteringReasons + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Reason + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class CreativesList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Account + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :bidder_location, as: 'bidderLocation', class: Google::Apis::AdexchangebuyerV1_2::Account::BidderLocation, decorator: Google::Apis::AdexchangebuyerV1_2::Account::BidderLocation::Representation + + property :cookie_matching_nid, as: 'cookieMatchingNid' + property :cookie_matching_url, as: 'cookieMatchingUrl' + property :id, as: 'id' + property :kind, as: 'kind' + property :maximum_active_creatives, as: 'maximumActiveCreatives' + property :maximum_total_qps, as: 'maximumTotalQps' + property :number_active_creatives, as: 'numberActiveCreatives' + end + + class BidderLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :maximum_qps, as: 'maximumQps' + property :region, as: 'region' + property :url, as: 'url' + end + end + end + + class AccountsList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangebuyerV1_2::Account, decorator: Google::Apis::AdexchangebuyerV1_2::Account::Representation + + property :kind, as: 'kind' + end + end + + class Creative + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :html_snippet, as: 'HTMLSnippet' + property :account_id, as: 'accountId' + collection :advertiser_id, as: 'advertiserId' + property :advertiser_name, as: 'advertiserName' + property :agency_id, :numeric_string => true, as: 'agencyId' + property :api_upload_timestamp, as: 'apiUploadTimestamp', type: DateTime + + collection :attribute, as: 'attribute' + property :buyer_creative_id, as: 'buyerCreativeId' + collection :click_through_url, as: 'clickThroughUrl' + collection :corrections, as: 'corrections', class: Google::Apis::AdexchangebuyerV1_2::Creative::Correction, decorator: Google::Apis::AdexchangebuyerV1_2::Creative::Correction::Representation + + collection :disapproval_reasons, as: 'disapprovalReasons', class: Google::Apis::AdexchangebuyerV1_2::Creative::DisapprovalReason, decorator: Google::Apis::AdexchangebuyerV1_2::Creative::DisapprovalReason::Representation + + property :filtering_reasons, as: 'filteringReasons', class: Google::Apis::AdexchangebuyerV1_2::Creative::FilteringReasons, decorator: Google::Apis::AdexchangebuyerV1_2::Creative::FilteringReasons::Representation + + property :height, as: 'height' + collection :impression_tracking_url, as: 'impressionTrackingUrl' + property :kind, as: 'kind' + collection :product_categories, as: 'productCategories' + collection :restricted_categories, as: 'restrictedCategories' + collection :sensitive_categories, as: 'sensitiveCategories' + property :status, as: 'status' + collection :vendor_type, as: 'vendorType' + property :version, as: 'version' + property :video_url, as: 'videoURL' + property :width, as: 'width' + end + + class Correction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :details, as: 'details' + property :reason, as: 'reason' + end + end + + class DisapprovalReason + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :details, as: 'details' + property :reason, as: 'reason' + end + end + + class FilteringReasons + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :date, as: 'date' + collection :reasons, as: 'reasons', class: Google::Apis::AdexchangebuyerV1_2::Creative::FilteringReasons::Reason, decorator: Google::Apis::AdexchangebuyerV1_2::Creative::FilteringReasons::Reason::Representation + + end + + class Reason + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :filtering_count, :numeric_string => true, as: 'filteringCount' + property :filtering_status, as: 'filteringStatus' + end + end + end + end + + class CreativesList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangebuyerV1_2::Creative, decorator: Google::Apis::AdexchangebuyerV1_2::Creative::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + end + end +end diff --git a/generated/google/apis/adexchangebuyer_v1_2/service.rb b/generated/google/apis/adexchangebuyer_v1_2/service.rb new file mode 100644 index 000000000..4922e9451 --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_2/service.rb @@ -0,0 +1,329 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangebuyerV1_2 + # Ad Exchange Buyer API + # + # Accesses your bidding-account information, submits creatives for validation, + # finds available direct deals, and retrieves performance reports. + # + # @example + # require 'google/apis/adexchangebuyer_v1_2' + # + # Adexchangebuyer = Google::Apis::AdexchangebuyerV1_2 # Alias the module + # service = Adexchangebuyer::AdExchangeBuyerService.new + # + # @see https://developers.google.com/ad-exchange/buyer-rest + class AdExchangeBuyerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'adexchangebuyer/v1.2/') + @batch_path = 'batch' + end + + # Gets one account by ID. + # @param [Fixnum] id + # The account id + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_2::Account] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_2::Account] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_account(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'accounts/{id}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_2::Account::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_2::Account + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the authenticated user's list of accounts. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_2::AccountsList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_2::AccountsList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_accounts(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'accounts', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_2::AccountsList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_2::AccountsList + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing account. This method supports patch semantics. + # @param [Fixnum] id + # The account id + # @param [Google::Apis::AdexchangebuyerV1_2::Account] account_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_2::Account] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_2::Account] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_account(id, account_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'accounts/{id}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_2::Account::Representation + command.request_object = account_object + command.response_representation = Google::Apis::AdexchangebuyerV1_2::Account::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_2::Account + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing account. + # @param [Fixnum] id + # The account id + # @param [Google::Apis::AdexchangebuyerV1_2::Account] account_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_2::Account] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_2::Account] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_account(id, account_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'accounts/{id}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_2::Account::Representation + command.request_object = account_object + command.response_representation = Google::Apis::AdexchangebuyerV1_2::Account::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_2::Account + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the status for a single creative. A creative will be available 30-40 + # minutes after submission. + # @param [Fixnum] account_id + # The id for the account that will serve this creative. + # @param [String] buyer_creative_id + # The buyer-specific id for this creative. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_2::Creative] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_2::Creative] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_creative(account_id, buyer_creative_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'creatives/{accountId}/{buyerCreativeId}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_2::Creative::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_2::Creative + command.params['accountId'] = account_id unless account_id.nil? + command.params['buyerCreativeId'] = buyer_creative_id unless buyer_creative_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Submit a new creative. + # @param [Google::Apis::AdexchangebuyerV1_2::Creative] creative_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_2::Creative] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_2::Creative] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_creative(creative_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'creatives', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_2::Creative::Representation + command.request_object = creative_object + command.response_representation = Google::Apis::AdexchangebuyerV1_2::Creative::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_2::Creative + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of the authenticated user's active creatives. A creative will + # be available 30-40 minutes after submission. + # @param [Fixnum] max_results + # Maximum number of entries returned on one result page. If not set, the default + # is 100. Optional. + # @param [String] page_token + # A continuation token, used to page through ad clients. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. Optional. + # @param [String] status_filter + # When specified, only creatives having the given status are returned. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_2::CreativesList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_2::CreativesList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_creatives(max_results: nil, page_token: nil, status_filter: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'creatives', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_2::CreativesList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_2::CreativesList + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['statusFilter'] = status_filter unless status_filter.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/adexchangebuyer_v1_3.rb b/generated/google/apis/adexchangebuyer_v1_3.rb new file mode 100644 index 000000000..5eaec3840 --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_3.rb @@ -0,0 +1,35 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/adexchangebuyer_v1_3/service.rb' +require 'google/apis/adexchangebuyer_v1_3/classes.rb' +require 'google/apis/adexchangebuyer_v1_3/representations.rb' + +module Google + module Apis + # Ad Exchange Buyer API + # + # Accesses your bidding-account information, submits creatives for validation, + # finds available direct deals, and retrieves performance reports. + # + # @see https://developers.google.com/ad-exchange/buyer-rest + module AdexchangebuyerV1_3 + VERSION = 'V1_3' + REVISION = '20170215' + + # Manage your Ad Exchange buyer account configuration + AUTH_ADEXCHANGE_BUYER = 'https://www.googleapis.com/auth/adexchange.buyer' + end + end +end diff --git a/generated/google/apis/adexchangebuyer_v1_3/classes.rb b/generated/google/apis/adexchangebuyer_v1_3/classes.rb new file mode 100644 index 000000000..821896844 --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_3/classes.rb @@ -0,0 +1,1347 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangebuyerV1_3 + + # Configuration data for an Ad Exchange buyer account. + class Account + include Google::Apis::Core::Hashable + + # Your bidder locations that have distinct URLs. + # Corresponds to the JSON property `bidderLocation` + # @return [Array] + attr_accessor :bidder_location + + # The nid parameter value used in cookie match requests. Please contact your + # technical account manager if you need to change this. + # Corresponds to the JSON property `cookieMatchingNid` + # @return [String] + attr_accessor :cookie_matching_nid + + # The base URL used in cookie match requests. + # Corresponds to the JSON property `cookieMatchingUrl` + # @return [String] + attr_accessor :cookie_matching_url + + # Account id. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The maximum number of active creatives that an account can have, where a + # creative is active if it was inserted or bid with in the last 30 days. Please + # contact your technical account manager if you need to change this. + # Corresponds to the JSON property `maximumActiveCreatives` + # @return [Fixnum] + attr_accessor :maximum_active_creatives + + # The sum of all bidderLocation.maximumQps values cannot exceed this. Please + # contact your technical account manager if you need to change this. + # Corresponds to the JSON property `maximumTotalQps` + # @return [Fixnum] + attr_accessor :maximum_total_qps + + # The number of creatives that this account inserted or bid with in the last 30 + # days. + # Corresponds to the JSON property `numberActiveCreatives` + # @return [Fixnum] + attr_accessor :number_active_creatives + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bidder_location = args[:bidder_location] if args.key?(:bidder_location) + @cookie_matching_nid = args[:cookie_matching_nid] if args.key?(:cookie_matching_nid) + @cookie_matching_url = args[:cookie_matching_url] if args.key?(:cookie_matching_url) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @maximum_active_creatives = args[:maximum_active_creatives] if args.key?(:maximum_active_creatives) + @maximum_total_qps = args[:maximum_total_qps] if args.key?(:maximum_total_qps) + @number_active_creatives = args[:number_active_creatives] if args.key?(:number_active_creatives) + end + + # + class BidderLocation + include Google::Apis::Core::Hashable + + # The maximum queries per second the Ad Exchange will send. + # Corresponds to the JSON property `maximumQps` + # @return [Fixnum] + attr_accessor :maximum_qps + + # The geographical region the Ad Exchange should send requests from. Only used + # by some quota systems, but always setting the value is recommended. Allowed + # values: + # - ASIA + # - EUROPE + # - US_EAST + # - US_WEST + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # The URL to which the Ad Exchange will send bid requests. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @maximum_qps = args[:maximum_qps] if args.key?(:maximum_qps) + @region = args[:region] if args.key?(:region) + @url = args[:url] if args.key?(:url) + end + end + end + + # An account feed lists Ad Exchange buyer accounts that the user has access to. + # Each entry in the feed corresponds to a single buyer account. + class AccountsList + include Google::Apis::Core::Hashable + + # A list of accounts. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # The configuration data for an Ad Exchange billing info. + class BillingInfo + include Google::Apis::Core::Hashable + + # Account id. + # Corresponds to the JSON property `accountId` + # @return [Fixnum] + attr_accessor :account_id + + # Account name. + # Corresponds to the JSON property `accountName` + # @return [String] + attr_accessor :account_name + + # A list of adgroup IDs associated with this particular account. These IDs may + # show up as part of a realtime bidding BidRequest, which indicates a bid + # request for this account. + # Corresponds to the JSON property `billingId` + # @return [Array] + attr_accessor :billing_id + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @account_id = args[:account_id] if args.key?(:account_id) + @account_name = args[:account_name] if args.key?(:account_name) + @billing_id = args[:billing_id] if args.key?(:billing_id) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A billing info feed lists Billing Info the Ad Exchange buyer account has + # access to. Each entry in the feed corresponds to a single billing info. + class BillingInfoList + include Google::Apis::Core::Hashable + + # A list of billing info relevant for your account. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # The configuration data for Ad Exchange RTB - Budget API. + class Budget + include Google::Apis::Core::Hashable + + # The id of the account. This is required for get and update requests. + # Corresponds to the JSON property `accountId` + # @return [Fixnum] + attr_accessor :account_id + + # The billing id to determine which adgroup to provide budget information for. + # This is required for get and update requests. + # Corresponds to the JSON property `billingId` + # @return [Fixnum] + attr_accessor :billing_id + + # The daily budget amount in unit amount of the account currency to apply for + # the billingId provided. This is required for update requests. + # Corresponds to the JSON property `budgetAmount` + # @return [Fixnum] + attr_accessor :budget_amount + + # The currency code for the buyer. This cannot be altered here. + # Corresponds to the JSON property `currencyCode` + # @return [String] + attr_accessor :currency_code + + # The unique id that describes this item. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of the resource, i.e. "adexchangebuyer#budget". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @account_id = args[:account_id] if args.key?(:account_id) + @billing_id = args[:billing_id] if args.key?(:billing_id) + @budget_amount = args[:budget_amount] if args.key?(:budget_amount) + @currency_code = args[:currency_code] if args.key?(:currency_code) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A creative and its classification data. + class Creative + include Google::Apis::Core::Hashable + + # The HTML snippet that displays the ad when inserted in the web page. If set, + # videoURL should not be set. + # Corresponds to the JSON property `HTMLSnippet` + # @return [String] + attr_accessor :html_snippet + + # Account id. + # Corresponds to the JSON property `accountId` + # @return [Fixnum] + attr_accessor :account_id + + # Detected advertiser id, if any. Read-only. This field should not be set in + # requests. + # Corresponds to the JSON property `advertiserId` + # @return [Array] + attr_accessor :advertiser_id + + # The name of the company being advertised in the creative. + # Corresponds to the JSON property `advertiserName` + # @return [String] + attr_accessor :advertiser_name + + # The agency id for this creative. + # Corresponds to the JSON property `agencyId` + # @return [Fixnum] + attr_accessor :agency_id + + # The last upload timestamp of this creative if it was uploaded via API. Read- + # only. The value of this field is generated, and will be ignored for uploads. ( + # formatted RFC 3339 timestamp). + # Corresponds to the JSON property `apiUploadTimestamp` + # @return [DateTime] + attr_accessor :api_upload_timestamp + + # All attributes for the ads that may be shown from this snippet. + # Corresponds to the JSON property `attribute` + # @return [Array] + attr_accessor :attribute + + # A buyer-specific id identifying the creative in this ad. + # Corresponds to the JSON property `buyerCreativeId` + # @return [String] + attr_accessor :buyer_creative_id + + # The set of destination urls for the snippet. + # Corresponds to the JSON property `clickThroughUrl` + # @return [Array] + attr_accessor :click_through_url + + # Shows any corrections that were applied to this creative. Read-only. This + # field should not be set in requests. + # Corresponds to the JSON property `corrections` + # @return [Array] + attr_accessor :corrections + + # The reasons for disapproval, if any. Note that not all disapproval reasons may + # be categorized, so it is possible for the creative to have a status of + # DISAPPROVED with an empty list for disapproval_reasons. In this case, please + # reach out to your TAM to help debug the issue. Read-only. This field should + # not be set in requests. + # Corresponds to the JSON property `disapprovalReasons` + # @return [Array] + attr_accessor :disapproval_reasons + + # The filtering reasons for the creative. Read-only. This field should not be + # set in requests. + # Corresponds to the JSON property `filteringReasons` + # @return [Google::Apis::AdexchangebuyerV1_3::Creative::FilteringReasons] + attr_accessor :filtering_reasons + + # Ad height. + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # The set of urls to be called to record an impression. + # Corresponds to the JSON property `impressionTrackingUrl` + # @return [Array] + attr_accessor :impression_tracking_url + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # If nativeAd is set, HTMLSnippet and videoURL should not be set. + # Corresponds to the JSON property `nativeAd` + # @return [Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd] + attr_accessor :native_ad + + # Detected product categories, if any. Read-only. This field should not be set + # in requests. + # Corresponds to the JSON property `productCategories` + # @return [Array] + attr_accessor :product_categories + + # All restricted categories for the ads that may be shown from this snippet. + # Corresponds to the JSON property `restrictedCategories` + # @return [Array] + attr_accessor :restricted_categories + + # Detected sensitive categories, if any. Read-only. This field should not be set + # in requests. + # Corresponds to the JSON property `sensitiveCategories` + # @return [Array] + attr_accessor :sensitive_categories + + # Creative serving status. Read-only. This field should not be set in requests. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # All vendor types for the ads that may be shown from this snippet. + # Corresponds to the JSON property `vendorType` + # @return [Array] + attr_accessor :vendor_type + + # The version for this creative. Read-only. This field should not be set in + # requests. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not + # be set. + # Corresponds to the JSON property `videoURL` + # @return [String] + attr_accessor :video_url + + # Ad width. + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @html_snippet = args[:html_snippet] if args.key?(:html_snippet) + @account_id = args[:account_id] if args.key?(:account_id) + @advertiser_id = args[:advertiser_id] if args.key?(:advertiser_id) + @advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name) + @agency_id = args[:agency_id] if args.key?(:agency_id) + @api_upload_timestamp = args[:api_upload_timestamp] if args.key?(:api_upload_timestamp) + @attribute = args[:attribute] if args.key?(:attribute) + @buyer_creative_id = args[:buyer_creative_id] if args.key?(:buyer_creative_id) + @click_through_url = args[:click_through_url] if args.key?(:click_through_url) + @corrections = args[:corrections] if args.key?(:corrections) + @disapproval_reasons = args[:disapproval_reasons] if args.key?(:disapproval_reasons) + @filtering_reasons = args[:filtering_reasons] if args.key?(:filtering_reasons) + @height = args[:height] if args.key?(:height) + @impression_tracking_url = args[:impression_tracking_url] if args.key?(:impression_tracking_url) + @kind = args[:kind] if args.key?(:kind) + @native_ad = args[:native_ad] if args.key?(:native_ad) + @product_categories = args[:product_categories] if args.key?(:product_categories) + @restricted_categories = args[:restricted_categories] if args.key?(:restricted_categories) + @sensitive_categories = args[:sensitive_categories] if args.key?(:sensitive_categories) + @status = args[:status] if args.key?(:status) + @vendor_type = args[:vendor_type] if args.key?(:vendor_type) + @version = args[:version] if args.key?(:version) + @video_url = args[:video_url] if args.key?(:video_url) + @width = args[:width] if args.key?(:width) + end + + # + class Correction + include Google::Apis::Core::Hashable + + # Additional details about the correction. + # Corresponds to the JSON property `details` + # @return [Array] + attr_accessor :details + + # The type of correction that was applied to the creative. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @reason = args[:reason] if args.key?(:reason) + end + end + + # + class DisapprovalReason + include Google::Apis::Core::Hashable + + # Additional details about the reason for disapproval. + # Corresponds to the JSON property `details` + # @return [Array] + attr_accessor :details + + # The categorized reason for disapproval. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @reason = args[:reason] if args.key?(:reason) + end + end + + # The filtering reasons for the creative. Read-only. This field should not be + # set in requests. + class FilteringReasons + include Google::Apis::Core::Hashable + + # The date in ISO 8601 format for the data. The data is collected from 00:00:00 + # to 23:59:59 in PST. + # Corresponds to the JSON property `date` + # @return [String] + attr_accessor :date + + # The filtering reasons. + # Corresponds to the JSON property `reasons` + # @return [Array] + attr_accessor :reasons + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @date = args[:date] if args.key?(:date) + @reasons = args[:reasons] if args.key?(:reasons) + end + + # + class Reason + include Google::Apis::Core::Hashable + + # The number of times the creative was filtered for the status. The count is + # aggregated across all publishers on the exchange. + # Corresponds to the JSON property `filteringCount` + # @return [Fixnum] + attr_accessor :filtering_count + + # The filtering status code. Please refer to the creative-status-codes.txt file + # for different statuses. + # Corresponds to the JSON property `filteringStatus` + # @return [Fixnum] + attr_accessor :filtering_status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @filtering_count = args[:filtering_count] if args.key?(:filtering_count) + @filtering_status = args[:filtering_status] if args.key?(:filtering_status) + end + end + end + + # If nativeAd is set, HTMLSnippet and videoURL should not be set. + class NativeAd + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `advertiser` + # @return [String] + attr_accessor :advertiser + + # The app icon, for app download ads. + # Corresponds to the JSON property `appIcon` + # @return [Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::AppIcon] + attr_accessor :app_icon + + # A long description of the ad. + # Corresponds to the JSON property `body` + # @return [String] + attr_accessor :body + + # A label for the button that the user is supposed to click. + # Corresponds to the JSON property `callToAction` + # @return [String] + attr_accessor :call_to_action + + # The URL to use for click tracking. + # Corresponds to the JSON property `clickTrackingUrl` + # @return [String] + attr_accessor :click_tracking_url + + # A short title for the ad. + # Corresponds to the JSON property `headline` + # @return [String] + attr_accessor :headline + + # A large image. + # Corresponds to the JSON property `image` + # @return [Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::Image] + attr_accessor :image + + # The URLs are called when the impression is rendered. + # Corresponds to the JSON property `impressionTrackingUrl` + # @return [Array] + attr_accessor :impression_tracking_url + + # A smaller image, for the advertiser logo. + # Corresponds to the JSON property `logo` + # @return [Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::Logo] + attr_accessor :logo + + # The price of the promoted app including the currency info. + # Corresponds to the JSON property `price` + # @return [String] + attr_accessor :price + + # The app rating in the app store. Must be in the range [0-5]. + # Corresponds to the JSON property `starRating` + # @return [Float] + attr_accessor :star_rating + + # The URL to the app store to purchase/download the promoted app. + # Corresponds to the JSON property `store` + # @return [String] + attr_accessor :store + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @advertiser = args[:advertiser] if args.key?(:advertiser) + @app_icon = args[:app_icon] if args.key?(:app_icon) + @body = args[:body] if args.key?(:body) + @call_to_action = args[:call_to_action] if args.key?(:call_to_action) + @click_tracking_url = args[:click_tracking_url] if args.key?(:click_tracking_url) + @headline = args[:headline] if args.key?(:headline) + @image = args[:image] if args.key?(:image) + @impression_tracking_url = args[:impression_tracking_url] if args.key?(:impression_tracking_url) + @logo = args[:logo] if args.key?(:logo) + @price = args[:price] if args.key?(:price) + @star_rating = args[:star_rating] if args.key?(:star_rating) + @store = args[:store] if args.key?(:store) + end + + # The app icon, for app download ads. + class AppIcon + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + # + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @height = args[:height] if args.key?(:height) + @url = args[:url] if args.key?(:url) + @width = args[:width] if args.key?(:width) + end + end + + # A large image. + class Image + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + # + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @height = args[:height] if args.key?(:height) + @url = args[:url] if args.key?(:url) + @width = args[:width] if args.key?(:width) + end + end + + # A smaller image, for the advertiser logo. + class Logo + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + # + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @height = args[:height] if args.key?(:height) + @url = args[:url] if args.key?(:url) + @width = args[:width] if args.key?(:width) + end + end + end + end + + # The creatives feed lists the active creatives for the Ad Exchange buyer + # accounts that the user has access to. Each entry in the feed corresponds to a + # single creative. + class CreativesList + include Google::Apis::Core::Hashable + + # A list of creatives. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through creatives. To retrieve the next page + # of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The configuration data for an Ad Exchange direct deal. + class DirectDeal + include Google::Apis::Core::Hashable + + # The account id of the buyer this deal is for. + # Corresponds to the JSON property `accountId` + # @return [Fixnum] + attr_accessor :account_id + + # The name of the advertiser this deal is for. + # Corresponds to the JSON property `advertiser` + # @return [String] + attr_accessor :advertiser + + # Whether the publisher for this deal is eligible for alcohol ads. + # Corresponds to the JSON property `allowsAlcohol` + # @return [Boolean] + attr_accessor :allows_alcohol + alias_method :allows_alcohol?, :allows_alcohol + + # The account id that this deal was negotiated for. It is either the buyer or + # the client that this deal was negotiated on behalf of. + # Corresponds to the JSON property `buyerAccountId` + # @return [Fixnum] + attr_accessor :buyer_account_id + + # The currency code that applies to the fixed_cpm value. If not set then assumed + # to be USD. + # Corresponds to the JSON property `currencyCode` + # @return [String] + attr_accessor :currency_code + + # The deal type such as programmatic reservation or fixed price and so on. + # Corresponds to the JSON property `dealTier` + # @return [String] + attr_accessor :deal_tier + + # End time for when this deal stops being active. If not set then this deal is + # valid until manually disabled by the publisher. In seconds since the epoch. + # Corresponds to the JSON property `endTime` + # @return [Fixnum] + attr_accessor :end_time + + # The fixed price for this direct deal. In cpm micros of currency according to + # currency_code. If set, then this deal is eligible for the fixed price tier of + # buying (highest priority, pay exactly the configured fixed price). + # Corresponds to the JSON property `fixedCpm` + # @return [Fixnum] + attr_accessor :fixed_cpm + + # Deal id. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Deal name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The minimum price for this direct deal. In cpm micros of currency according to + # currency_code. If set, then this deal is eligible for the private exchange + # tier of buying (below fixed price priority, run as a second price auction). + # Corresponds to the JSON property `privateExchangeMinCpm` + # @return [Fixnum] + attr_accessor :private_exchange_min_cpm + + # If true, the publisher has opted to have their blocks ignored when a creative + # is bid with for this deal. + # Corresponds to the JSON property `publisherBlocksOverriden` + # @return [Boolean] + attr_accessor :publisher_blocks_overriden + alias_method :publisher_blocks_overriden?, :publisher_blocks_overriden + + # The name of the publisher offering this direct deal. + # Corresponds to the JSON property `sellerNetwork` + # @return [String] + attr_accessor :seller_network + + # Start time for when this deal becomes active. If not set then this deal is + # active immediately upon creation. In seconds since the epoch. + # Corresponds to the JSON property `startTime` + # @return [Fixnum] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @account_id = args[:account_id] if args.key?(:account_id) + @advertiser = args[:advertiser] if args.key?(:advertiser) + @allows_alcohol = args[:allows_alcohol] if args.key?(:allows_alcohol) + @buyer_account_id = args[:buyer_account_id] if args.key?(:buyer_account_id) + @currency_code = args[:currency_code] if args.key?(:currency_code) + @deal_tier = args[:deal_tier] if args.key?(:deal_tier) + @end_time = args[:end_time] if args.key?(:end_time) + @fixed_cpm = args[:fixed_cpm] if args.key?(:fixed_cpm) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @private_exchange_min_cpm = args[:private_exchange_min_cpm] if args.key?(:private_exchange_min_cpm) + @publisher_blocks_overriden = args[:publisher_blocks_overriden] if args.key?(:publisher_blocks_overriden) + @seller_network = args[:seller_network] if args.key?(:seller_network) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + + # A direct deals feed lists Direct Deals the Ad Exchange buyer account has + # access to. This includes direct deals set up for the buyer account as well as + # its merged stream seats. + class DirectDealsList + include Google::Apis::Core::Hashable + + # A list of direct deals relevant for your account. + # Corresponds to the JSON property `directDeals` + # @return [Array] + attr_accessor :direct_deals + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @direct_deals = args[:direct_deals] if args.key?(:direct_deals) + @kind = args[:kind] if args.key?(:kind) + end + end + + # The configuration data for an Ad Exchange performance report list. + class PerformanceReport + include Google::Apis::Core::Hashable + + # The number of bid responses with an ad. + # Corresponds to the JSON property `bidRate` + # @return [Float] + attr_accessor :bid_rate + + # The number of bid requests sent to your bidder. + # Corresponds to the JSON property `bidRequestRate` + # @return [Float] + attr_accessor :bid_request_rate + + # Rate of various prefiltering statuses per match. Please refer to the callout- + # status-codes.txt file for different statuses. + # Corresponds to the JSON property `calloutStatusRate` + # @return [Array] + attr_accessor :callout_status_rate + + # Average QPS for cookie matcher operations. + # Corresponds to the JSON property `cookieMatcherStatusRate` + # @return [Array] + attr_accessor :cookie_matcher_status_rate + + # Rate of ads with a given status. Please refer to the creative-status-codes.txt + # file for different statuses. + # Corresponds to the JSON property `creativeStatusRate` + # @return [Array] + attr_accessor :creative_status_rate + + # The number of bid responses that were filtered due to a policy violation or + # other errors. + # Corresponds to the JSON property `filteredBidRate` + # @return [Float] + attr_accessor :filtered_bid_rate + + # Average QPS for hosted match operations. + # Corresponds to the JSON property `hostedMatchStatusRate` + # @return [Array] + attr_accessor :hosted_match_status_rate + + # The number of potential queries based on your pretargeting settings. + # Corresponds to the JSON property `inventoryMatchRate` + # @return [Float] + attr_accessor :inventory_match_rate + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The 50th percentile round trip latency(ms) as perceived from Google servers + # for the duration period covered by the report. + # Corresponds to the JSON property `latency50thPercentile` + # @return [Float] + attr_accessor :latency_50th_percentile + + # The 85th percentile round trip latency(ms) as perceived from Google servers + # for the duration period covered by the report. + # Corresponds to the JSON property `latency85thPercentile` + # @return [Float] + attr_accessor :latency_85th_percentile + + # The 95th percentile round trip latency(ms) as perceived from Google servers + # for the duration period covered by the report. + # Corresponds to the JSON property `latency95thPercentile` + # @return [Float] + attr_accessor :latency_95th_percentile + + # Rate of various quota account statuses per quota check. + # Corresponds to the JSON property `noQuotaInRegion` + # @return [Float] + attr_accessor :no_quota_in_region + + # Rate of various quota account statuses per quota check. + # Corresponds to the JSON property `outOfQuota` + # @return [Float] + attr_accessor :out_of_quota + + # Average QPS for pixel match requests from clients. + # Corresponds to the JSON property `pixelMatchRequests` + # @return [Float] + attr_accessor :pixel_match_requests + + # Average QPS for pixel match responses from clients. + # Corresponds to the JSON property `pixelMatchResponses` + # @return [Float] + attr_accessor :pixel_match_responses + + # The configured quota limits for this account. + # Corresponds to the JSON property `quotaConfiguredLimit` + # @return [Float] + attr_accessor :quota_configured_limit + + # The throttled quota limits for this account. + # Corresponds to the JSON property `quotaThrottledLimit` + # @return [Float] + attr_accessor :quota_throttled_limit + + # The trading location of this data. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # The number of properly formed bid responses received by our servers within the + # deadline. + # Corresponds to the JSON property `successfulRequestRate` + # @return [Float] + attr_accessor :successful_request_rate + + # The unix timestamp of the starting time of this performance data. + # Corresponds to the JSON property `timestamp` + # @return [Fixnum] + attr_accessor :timestamp + + # The number of bid responses that were unsuccessful due to timeouts, incorrect + # formatting, etc. + # Corresponds to the JSON property `unsuccessfulRequestRate` + # @return [Float] + attr_accessor :unsuccessful_request_rate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bid_rate = args[:bid_rate] if args.key?(:bid_rate) + @bid_request_rate = args[:bid_request_rate] if args.key?(:bid_request_rate) + @callout_status_rate = args[:callout_status_rate] if args.key?(:callout_status_rate) + @cookie_matcher_status_rate = args[:cookie_matcher_status_rate] if args.key?(:cookie_matcher_status_rate) + @creative_status_rate = args[:creative_status_rate] if args.key?(:creative_status_rate) + @filtered_bid_rate = args[:filtered_bid_rate] if args.key?(:filtered_bid_rate) + @hosted_match_status_rate = args[:hosted_match_status_rate] if args.key?(:hosted_match_status_rate) + @inventory_match_rate = args[:inventory_match_rate] if args.key?(:inventory_match_rate) + @kind = args[:kind] if args.key?(:kind) + @latency_50th_percentile = args[:latency_50th_percentile] if args.key?(:latency_50th_percentile) + @latency_85th_percentile = args[:latency_85th_percentile] if args.key?(:latency_85th_percentile) + @latency_95th_percentile = args[:latency_95th_percentile] if args.key?(:latency_95th_percentile) + @no_quota_in_region = args[:no_quota_in_region] if args.key?(:no_quota_in_region) + @out_of_quota = args[:out_of_quota] if args.key?(:out_of_quota) + @pixel_match_requests = args[:pixel_match_requests] if args.key?(:pixel_match_requests) + @pixel_match_responses = args[:pixel_match_responses] if args.key?(:pixel_match_responses) + @quota_configured_limit = args[:quota_configured_limit] if args.key?(:quota_configured_limit) + @quota_throttled_limit = args[:quota_throttled_limit] if args.key?(:quota_throttled_limit) + @region = args[:region] if args.key?(:region) + @successful_request_rate = args[:successful_request_rate] if args.key?(:successful_request_rate) + @timestamp = args[:timestamp] if args.key?(:timestamp) + @unsuccessful_request_rate = args[:unsuccessful_request_rate] if args.key?(:unsuccessful_request_rate) + end + end + + # The configuration data for an Ad Exchange performance report list. + class PerformanceReportList + include Google::Apis::Core::Hashable + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # A list of performance reports relevant for the account. + # Corresponds to the JSON property `performanceReport` + # @return [Array] + attr_accessor :performance_report + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @performance_report = args[:performance_report] if args.key?(:performance_report) + end + end + + # + class PretargetingConfig + include Google::Apis::Core::Hashable + + # The id for billing purposes, provided for reference. Leave this field blank + # for insert requests; the id will be generated automatically. + # Corresponds to the JSON property `billingId` + # @return [Fixnum] + attr_accessor :billing_id + + # The config id; generated automatically. Leave this field blank for insert + # requests. + # Corresponds to the JSON property `configId` + # @return [Fixnum] + attr_accessor :config_id + + # The name of the config. Must be unique. Required for all requests. + # Corresponds to the JSON property `configName` + # @return [String] + attr_accessor :config_name + + # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or + # PRETARGETING_CREATIVE_TYPE_VIDEO. + # Corresponds to the JSON property `creativeType` + # @return [Array] + attr_accessor :creative_type + + # Requests which allow one of these (width, height) pairs will match. All pairs + # must be supported ad dimensions. + # Corresponds to the JSON property `dimensions` + # @return [Array] + attr_accessor :dimensions + + # Requests with any of these content labels will not match. Values are from + # content-labels.txt in the downloadable files section. + # Corresponds to the JSON property `excludedContentLabels` + # @return [Array] + attr_accessor :excluded_content_labels + + # Requests containing any of these geo criteria ids will not match. + # Corresponds to the JSON property `excludedGeoCriteriaIds` + # @return [Array] + attr_accessor :excluded_geo_criteria_ids + + # Requests containing any of these placements will not match. + # Corresponds to the JSON property `excludedPlacements` + # @return [Array] + attr_accessor :excluded_placements + + # Requests containing any of these users list ids will not match. + # Corresponds to the JSON property `excludedUserLists` + # @return [Array] + attr_accessor :excluded_user_lists + + # Requests containing any of these vertical ids will not match. Values are from + # the publisher-verticals.txt file in the downloadable files section. + # Corresponds to the JSON property `excludedVerticals` + # @return [Array] + attr_accessor :excluded_verticals + + # Requests containing any of these geo criteria ids will match. + # Corresponds to the JSON property `geoCriteriaIds` + # @return [Array] + attr_accessor :geo_criteria_ids + + # Whether this config is active. Required for all requests. + # Corresponds to the JSON property `isActive` + # @return [Boolean] + attr_accessor :is_active + alias_method :is_active?, :is_active + + # The kind of the resource, i.e. "adexchangebuyer#pretargetingConfig". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Request containing any of these language codes will match. + # Corresponds to the JSON property `languages` + # @return [Array] + attr_accessor :languages + + # Requests containing any of these mobile carrier ids will match. Values are + # from mobile-carriers.csv in the downloadable files section. + # Corresponds to the JSON property `mobileCarriers` + # @return [Array] + attr_accessor :mobile_carriers + + # Requests containing any of these mobile device ids will match. Values are from + # mobile-devices.csv in the downloadable files section. + # Corresponds to the JSON property `mobileDevices` + # @return [Array] + attr_accessor :mobile_devices + + # Requests containing any of these mobile operating system version ids will + # match. Values are from mobile-os.csv in the downloadable files section. + # Corresponds to the JSON property `mobileOperatingSystemVersions` + # @return [Array] + attr_accessor :mobile_operating_system_versions + + # Requests containing any of these placements will match. + # Corresponds to the JSON property `placements` + # @return [Array] + attr_accessor :placements + + # Requests matching any of these platforms will match. Possible values are + # PRETARGETING_PLATFORM_MOBILE, PRETARGETING_PLATFORM_DESKTOP, and + # PRETARGETING_PLATFORM_TABLET. + # Corresponds to the JSON property `platforms` + # @return [Array] + attr_accessor :platforms + + # Creative attributes should be declared here if all creatives corresponding to + # this pretargeting configuration have that creative attribute. Values are from + # pretargetable-creative-attributes.txt in the downloadable files section. + # Corresponds to the JSON property `supportedCreativeAttributes` + # @return [Array] + attr_accessor :supported_creative_attributes + + # Requests containing any of these user list ids will match. + # Corresponds to the JSON property `userLists` + # @return [Array] + attr_accessor :user_lists + + # Requests that allow any of these vendor ids will match. Values are from + # vendors.txt in the downloadable files section. + # Corresponds to the JSON property `vendorTypes` + # @return [Array] + attr_accessor :vendor_types + + # Requests containing any of these vertical ids will match. + # Corresponds to the JSON property `verticals` + # @return [Array] + attr_accessor :verticals + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @billing_id = args[:billing_id] if args.key?(:billing_id) + @config_id = args[:config_id] if args.key?(:config_id) + @config_name = args[:config_name] if args.key?(:config_name) + @creative_type = args[:creative_type] if args.key?(:creative_type) + @dimensions = args[:dimensions] if args.key?(:dimensions) + @excluded_content_labels = args[:excluded_content_labels] if args.key?(:excluded_content_labels) + @excluded_geo_criteria_ids = args[:excluded_geo_criteria_ids] if args.key?(:excluded_geo_criteria_ids) + @excluded_placements = args[:excluded_placements] if args.key?(:excluded_placements) + @excluded_user_lists = args[:excluded_user_lists] if args.key?(:excluded_user_lists) + @excluded_verticals = args[:excluded_verticals] if args.key?(:excluded_verticals) + @geo_criteria_ids = args[:geo_criteria_ids] if args.key?(:geo_criteria_ids) + @is_active = args[:is_active] if args.key?(:is_active) + @kind = args[:kind] if args.key?(:kind) + @languages = args[:languages] if args.key?(:languages) + @mobile_carriers = args[:mobile_carriers] if args.key?(:mobile_carriers) + @mobile_devices = args[:mobile_devices] if args.key?(:mobile_devices) + @mobile_operating_system_versions = args[:mobile_operating_system_versions] if args.key?(:mobile_operating_system_versions) + @placements = args[:placements] if args.key?(:placements) + @platforms = args[:platforms] if args.key?(:platforms) + @supported_creative_attributes = args[:supported_creative_attributes] if args.key?(:supported_creative_attributes) + @user_lists = args[:user_lists] if args.key?(:user_lists) + @vendor_types = args[:vendor_types] if args.key?(:vendor_types) + @verticals = args[:verticals] if args.key?(:verticals) + end + + # + class Dimension + include Google::Apis::Core::Hashable + + # Height in pixels. + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # Width in pixels. + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @height = args[:height] if args.key?(:height) + @width = args[:width] if args.key?(:width) + end + end + + # + class ExcludedPlacement + include Google::Apis::Core::Hashable + + # The value of the placement. Interpretation depends on the placement type, e.g. + # URL for a site placement, channel name for a channel placement, app id for a + # mobile app placement. + # Corresponds to the JSON property `token` + # @return [String] + attr_accessor :token + + # The type of the placement. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @token = args[:token] if args.key?(:token) + @type = args[:type] if args.key?(:type) + end + end + + # + class Placement + include Google::Apis::Core::Hashable + + # The value of the placement. Interpretation depends on the placement type, e.g. + # URL for a site placement, channel name for a channel placement, app id for a + # mobile app placement. + # Corresponds to the JSON property `token` + # @return [String] + attr_accessor :token + + # The type of the placement. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @token = args[:token] if args.key?(:token) + @type = args[:type] if args.key?(:type) + end + end + end + + # + class PretargetingConfigList + include Google::Apis::Core::Hashable + + # A list of pretargeting configs + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + end + end +end diff --git a/generated/google/apis/adexchangebuyer_v1_3/representations.rb b/generated/google/apis/adexchangebuyer_v1_3/representations.rb new file mode 100644 index 000000000..34470ec06 --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_3/representations.rb @@ -0,0 +1,498 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangebuyerV1_3 + + class Account + class Representation < Google::Apis::Core::JsonRepresentation; end + + class BidderLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AccountsList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BillingInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BillingInfoList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Budget + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Creative + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Correction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DisapprovalReason + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FilteringReasons + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Reason + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class NativeAd + class Representation < Google::Apis::Core::JsonRepresentation; end + + class AppIcon + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Image + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Logo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class CreativesList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DirectDeal + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DirectDealsList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PerformanceReport + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PerformanceReportList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PretargetingConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Dimension + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ExcludedPlacement + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Placement + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class PretargetingConfigList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Account + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :bidder_location, as: 'bidderLocation', class: Google::Apis::AdexchangebuyerV1_3::Account::BidderLocation, decorator: Google::Apis::AdexchangebuyerV1_3::Account::BidderLocation::Representation + + property :cookie_matching_nid, as: 'cookieMatchingNid' + property :cookie_matching_url, as: 'cookieMatchingUrl' + property :id, as: 'id' + property :kind, as: 'kind' + property :maximum_active_creatives, as: 'maximumActiveCreatives' + property :maximum_total_qps, as: 'maximumTotalQps' + property :number_active_creatives, as: 'numberActiveCreatives' + end + + class BidderLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :maximum_qps, as: 'maximumQps' + property :region, as: 'region' + property :url, as: 'url' + end + end + end + + class AccountsList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangebuyerV1_3::Account, decorator: Google::Apis::AdexchangebuyerV1_3::Account::Representation + + property :kind, as: 'kind' + end + end + + class BillingInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :account_id, as: 'accountId' + property :account_name, as: 'accountName' + collection :billing_id, as: 'billingId' + property :kind, as: 'kind' + end + end + + class BillingInfoList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangebuyerV1_3::BillingInfo, decorator: Google::Apis::AdexchangebuyerV1_3::BillingInfo::Representation + + property :kind, as: 'kind' + end + end + + class Budget + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :account_id, :numeric_string => true, as: 'accountId' + property :billing_id, :numeric_string => true, as: 'billingId' + property :budget_amount, :numeric_string => true, as: 'budgetAmount' + property :currency_code, as: 'currencyCode' + property :id, as: 'id' + property :kind, as: 'kind' + end + end + + class Creative + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :html_snippet, as: 'HTMLSnippet' + property :account_id, as: 'accountId' + collection :advertiser_id, as: 'advertiserId' + property :advertiser_name, as: 'advertiserName' + property :agency_id, :numeric_string => true, as: 'agencyId' + property :api_upload_timestamp, as: 'apiUploadTimestamp', type: DateTime + + collection :attribute, as: 'attribute' + property :buyer_creative_id, as: 'buyerCreativeId' + collection :click_through_url, as: 'clickThroughUrl' + collection :corrections, as: 'corrections', class: Google::Apis::AdexchangebuyerV1_3::Creative::Correction, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::Correction::Representation + + collection :disapproval_reasons, as: 'disapprovalReasons', class: Google::Apis::AdexchangebuyerV1_3::Creative::DisapprovalReason, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::DisapprovalReason::Representation + + property :filtering_reasons, as: 'filteringReasons', class: Google::Apis::AdexchangebuyerV1_3::Creative::FilteringReasons, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::FilteringReasons::Representation + + property :height, as: 'height' + collection :impression_tracking_url, as: 'impressionTrackingUrl' + property :kind, as: 'kind' + property :native_ad, as: 'nativeAd', class: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::Representation + + collection :product_categories, as: 'productCategories' + collection :restricted_categories, as: 'restrictedCategories' + collection :sensitive_categories, as: 'sensitiveCategories' + property :status, as: 'status' + collection :vendor_type, as: 'vendorType' + property :version, as: 'version' + property :video_url, as: 'videoURL' + property :width, as: 'width' + end + + class Correction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :details, as: 'details' + property :reason, as: 'reason' + end + end + + class DisapprovalReason + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :details, as: 'details' + property :reason, as: 'reason' + end + end + + class FilteringReasons + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :date, as: 'date' + collection :reasons, as: 'reasons', class: Google::Apis::AdexchangebuyerV1_3::Creative::FilteringReasons::Reason, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::FilteringReasons::Reason::Representation + + end + + class Reason + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :filtering_count, :numeric_string => true, as: 'filteringCount' + property :filtering_status, as: 'filteringStatus' + end + end + end + + class NativeAd + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :advertiser, as: 'advertiser' + property :app_icon, as: 'appIcon', class: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::AppIcon, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::AppIcon::Representation + + property :body, as: 'body' + property :call_to_action, as: 'callToAction' + property :click_tracking_url, as: 'clickTrackingUrl' + property :headline, as: 'headline' + property :image, as: 'image', class: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::Image, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::Image::Representation + + collection :impression_tracking_url, as: 'impressionTrackingUrl' + property :logo, as: 'logo', class: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::Logo, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::NativeAd::Logo::Representation + + property :price, as: 'price' + property :star_rating, as: 'starRating' + property :store, as: 'store' + end + + class AppIcon + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :height, as: 'height' + property :url, as: 'url' + property :width, as: 'width' + end + end + + class Image + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :height, as: 'height' + property :url, as: 'url' + property :width, as: 'width' + end + end + + class Logo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :height, as: 'height' + property :url, as: 'url' + property :width, as: 'width' + end + end + end + end + + class CreativesList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangebuyerV1_3::Creative, decorator: Google::Apis::AdexchangebuyerV1_3::Creative::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class DirectDeal + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :account_id, as: 'accountId' + property :advertiser, as: 'advertiser' + property :allows_alcohol, as: 'allowsAlcohol' + property :buyer_account_id, :numeric_string => true, as: 'buyerAccountId' + property :currency_code, as: 'currencyCode' + property :deal_tier, as: 'dealTier' + property :end_time, :numeric_string => true, as: 'endTime' + property :fixed_cpm, :numeric_string => true, as: 'fixedCpm' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :private_exchange_min_cpm, :numeric_string => true, as: 'privateExchangeMinCpm' + property :publisher_blocks_overriden, as: 'publisherBlocksOverriden' + property :seller_network, as: 'sellerNetwork' + property :start_time, :numeric_string => true, as: 'startTime' + end + end + + class DirectDealsList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :direct_deals, as: 'directDeals', class: Google::Apis::AdexchangebuyerV1_3::DirectDeal, decorator: Google::Apis::AdexchangebuyerV1_3::DirectDeal::Representation + + property :kind, as: 'kind' + end + end + + class PerformanceReport + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bid_rate, as: 'bidRate' + property :bid_request_rate, as: 'bidRequestRate' + collection :callout_status_rate, as: 'calloutStatusRate' + collection :cookie_matcher_status_rate, as: 'cookieMatcherStatusRate' + collection :creative_status_rate, as: 'creativeStatusRate' + property :filtered_bid_rate, as: 'filteredBidRate' + collection :hosted_match_status_rate, as: 'hostedMatchStatusRate' + property :inventory_match_rate, as: 'inventoryMatchRate' + property :kind, as: 'kind' + property :latency_50th_percentile, as: 'latency50thPercentile' + property :latency_85th_percentile, as: 'latency85thPercentile' + property :latency_95th_percentile, as: 'latency95thPercentile' + property :no_quota_in_region, as: 'noQuotaInRegion' + property :out_of_quota, as: 'outOfQuota' + property :pixel_match_requests, as: 'pixelMatchRequests' + property :pixel_match_responses, as: 'pixelMatchResponses' + property :quota_configured_limit, as: 'quotaConfiguredLimit' + property :quota_throttled_limit, as: 'quotaThrottledLimit' + property :region, as: 'region' + property :successful_request_rate, as: 'successfulRequestRate' + property :timestamp, :numeric_string => true, as: 'timestamp' + property :unsuccessful_request_rate, as: 'unsuccessfulRequestRate' + end + end + + class PerformanceReportList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + collection :performance_report, as: 'performanceReport', class: Google::Apis::AdexchangebuyerV1_3::PerformanceReport, decorator: Google::Apis::AdexchangebuyerV1_3::PerformanceReport::Representation + + end + end + + class PretargetingConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :billing_id, :numeric_string => true, as: 'billingId' + property :config_id, :numeric_string => true, as: 'configId' + property :config_name, as: 'configName' + collection :creative_type, as: 'creativeType' + collection :dimensions, as: 'dimensions', class: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Dimension, decorator: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Dimension::Representation + + collection :excluded_content_labels, as: 'excludedContentLabels' + collection :excluded_geo_criteria_ids, as: 'excludedGeoCriteriaIds' + collection :excluded_placements, as: 'excludedPlacements', class: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::ExcludedPlacement, decorator: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::ExcludedPlacement::Representation + + collection :excluded_user_lists, as: 'excludedUserLists' + collection :excluded_verticals, as: 'excludedVerticals' + collection :geo_criteria_ids, as: 'geoCriteriaIds' + property :is_active, as: 'isActive' + property :kind, as: 'kind' + collection :languages, as: 'languages' + collection :mobile_carriers, as: 'mobileCarriers' + collection :mobile_devices, as: 'mobileDevices' + collection :mobile_operating_system_versions, as: 'mobileOperatingSystemVersions' + collection :placements, as: 'placements', class: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Placement, decorator: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Placement::Representation + + collection :platforms, as: 'platforms' + collection :supported_creative_attributes, as: 'supportedCreativeAttributes' + collection :user_lists, as: 'userLists' + collection :vendor_types, as: 'vendorTypes' + collection :verticals, as: 'verticals' + end + + class Dimension + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :height, :numeric_string => true, as: 'height' + property :width, :numeric_string => true, as: 'width' + end + end + + class ExcludedPlacement + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :token, as: 'token' + property :type, as: 'type' + end + end + + class Placement + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :token, as: 'token' + property :type, as: 'type' + end + end + end + + class PretargetingConfigList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig, decorator: Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + + property :kind, as: 'kind' + end + end + end + end +end diff --git a/generated/google/apis/adexchangebuyer_v1_3/service.rb b/generated/google/apis/adexchangebuyer_v1_3/service.rb new file mode 100644 index 000000000..0eca56062 --- /dev/null +++ b/generated/google/apis/adexchangebuyer_v1_3/service.rb @@ -0,0 +1,873 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangebuyerV1_3 + # Ad Exchange Buyer API + # + # Accesses your bidding-account information, submits creatives for validation, + # finds available direct deals, and retrieves performance reports. + # + # @example + # require 'google/apis/adexchangebuyer_v1_3' + # + # Adexchangebuyer = Google::Apis::AdexchangebuyerV1_3 # Alias the module + # service = Adexchangebuyer::AdExchangeBuyerService.new + # + # @see https://developers.google.com/ad-exchange/buyer-rest + class AdExchangeBuyerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'adexchangebuyer/v1.3/') + @batch_path = 'batch' + end + + # Gets one account by ID. + # @param [Fixnum] id + # The account id + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Account] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Account] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_account(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'accounts/{id}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Account::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Account + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the authenticated user's list of accounts. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::AccountsList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::AccountsList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_accounts(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'accounts', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::AccountsList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::AccountsList + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing account. This method supports patch semantics. + # @param [Fixnum] id + # The account id + # @param [Google::Apis::AdexchangebuyerV1_3::Account] account_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Account] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Account] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_account(id, account_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'accounts/{id}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::Account::Representation + command.request_object = account_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Account::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Account + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing account. + # @param [Fixnum] id + # The account id + # @param [Google::Apis::AdexchangebuyerV1_3::Account] account_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Account] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Account] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_account(id, account_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'accounts/{id}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::Account::Representation + command.request_object = account_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Account::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Account + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the billing information for one account specified by account ID. + # @param [Fixnum] account_id + # The account id. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::BillingInfo] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::BillingInfo] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_billing_info(account_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'billinginfo/{accountId}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::BillingInfo::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::BillingInfo + command.params['accountId'] = account_id unless account_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of billing information for all accounts of the authenticated + # user. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::BillingInfoList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::BillingInfoList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_billing_infos(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'billinginfo', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::BillingInfoList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::BillingInfoList + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the budget information for the adgroup specified by the accountId and + # billingId. + # @param [Fixnum] account_id + # The account id to get the budget information for. + # @param [Fixnum] billing_id + # The billing id to get the budget information for. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Budget] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Budget] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_budget(account_id, billing_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'billinginfo/{accountId}/{billingId}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Budget::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Budget + command.params['accountId'] = account_id unless account_id.nil? + command.params['billingId'] = billing_id unless billing_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the budget amount for the budget of the adgroup specified by the + # accountId and billingId, with the budget amount in the request. This method + # supports patch semantics. + # @param [Fixnum] account_id + # The account id associated with the budget being updated. + # @param [Fixnum] billing_id + # The billing id associated with the budget being updated. + # @param [Google::Apis::AdexchangebuyerV1_3::Budget] budget_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Budget] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Budget] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_budget(account_id, billing_id, budget_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'billinginfo/{accountId}/{billingId}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::Budget::Representation + command.request_object = budget_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Budget::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Budget + command.params['accountId'] = account_id unless account_id.nil? + command.params['billingId'] = billing_id unless billing_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the budget amount for the budget of the adgroup specified by the + # accountId and billingId, with the budget amount in the request. + # @param [Fixnum] account_id + # The account id associated with the budget being updated. + # @param [Fixnum] billing_id + # The billing id associated with the budget being updated. + # @param [Google::Apis::AdexchangebuyerV1_3::Budget] budget_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Budget] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Budget] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_budget(account_id, billing_id, budget_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'billinginfo/{accountId}/{billingId}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::Budget::Representation + command.request_object = budget_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Budget::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Budget + command.params['accountId'] = account_id unless account_id.nil? + command.params['billingId'] = billing_id unless billing_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the status for a single creative. A creative will be available 30-40 + # minutes after submission. + # @param [Fixnum] account_id + # The id for the account that will serve this creative. + # @param [String] buyer_creative_id + # The buyer-specific id for this creative. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Creative] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Creative] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_creative(account_id, buyer_creative_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'creatives/{accountId}/{buyerCreativeId}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Creative::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Creative + command.params['accountId'] = account_id unless account_id.nil? + command.params['buyerCreativeId'] = buyer_creative_id unless buyer_creative_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Submit a new creative. + # @param [Google::Apis::AdexchangebuyerV1_3::Creative] creative_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::Creative] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::Creative] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_creative(creative_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'creatives', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::Creative::Representation + command.request_object = creative_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::Creative::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::Creative + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of the authenticated user's active creatives. A creative will + # be available 30-40 minutes after submission. + # @param [Array, Fixnum] account_id + # When specified, only creatives for the given account ids are returned. + # @param [Array, String] buyer_creative_id + # When specified, only creatives for the given buyer creative ids are returned. + # @param [Fixnum] max_results + # Maximum number of entries returned on one result page. If not set, the default + # is 100. Optional. + # @param [String] page_token + # A continuation token, used to page through ad clients. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. Optional. + # @param [String] status_filter + # When specified, only creatives having the given status are returned. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::CreativesList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::CreativesList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_creatives(account_id: nil, buyer_creative_id: nil, max_results: nil, page_token: nil, status_filter: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'creatives', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::CreativesList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::CreativesList + command.query['accountId'] = account_id unless account_id.nil? + command.query['buyerCreativeId'] = buyer_creative_id unless buyer_creative_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['statusFilter'] = status_filter unless status_filter.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets one direct deal by ID. + # @param [Fixnum] id + # The direct deal id + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::DirectDeal] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::DirectDeal] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_direct_deal(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'directdeals/{id}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::DirectDeal::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::DirectDeal + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the authenticated user's list of direct deals. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::DirectDealsList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::DirectDealsList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_direct_deals(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'directdeals', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::DirectDealsList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::DirectDealsList + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the authenticated user's list of performance metrics. + # @param [Fixnum] account_id + # The account id to get the reports. + # @param [String] end_date_time + # The end time of the report in ISO 8601 timestamp format using UTC. + # @param [String] start_date_time + # The start time of the report in ISO 8601 timestamp format using UTC. + # @param [Fixnum] max_results + # Maximum number of entries returned on one result page. If not set, the default + # is 100. Optional. + # @param [String] page_token + # A continuation token, used to page through performance reports. To retrieve + # the next page, set this parameter to the value of "nextPageToken" from the + # previous response. Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::PerformanceReportList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::PerformanceReportList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_performance_reports(account_id, end_date_time, start_date_time, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'performancereport', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::PerformanceReportList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::PerformanceReportList + command.query['accountId'] = account_id unless account_id.nil? + command.query['endDateTime'] = end_date_time unless end_date_time.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['startDateTime'] = start_date_time unless start_date_time.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an existing pretargeting config. + # @param [Fixnum] account_id + # The account id to delete the pretargeting config for. + # @param [Fixnum] config_id + # The specific id of the configuration to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_pretargeting_config(account_id, config_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'pretargetingconfigs/{accountId}/{configId}', options) + command.params['accountId'] = account_id unless account_id.nil? + command.params['configId'] = config_id unless config_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets a specific pretargeting configuration + # @param [Fixnum] account_id + # The account id to get the pretargeting config for. + # @param [Fixnum] config_id + # The specific id of the configuration to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_pretargeting_config(account_id, config_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'pretargetingconfigs/{accountId}/{configId}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig + command.params['accountId'] = account_id unless account_id.nil? + command.params['configId'] = config_id unless config_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Inserts a new pretargeting configuration. + # @param [Fixnum] account_id + # The account id to insert the pretargeting config for. + # @param [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] pretargeting_config_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_pretargeting_config(account_id, pretargeting_config_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'pretargetingconfigs/{accountId}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + command.request_object = pretargeting_config_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig + command.params['accountId'] = account_id unless account_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of the authenticated user's pretargeting configurations. + # @param [Fixnum] account_id + # The account id to get the pretargeting configs for. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::PretargetingConfigList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::PretargetingConfigList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_pretargeting_configs(account_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'pretargetingconfigs/{accountId}', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfigList::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::PretargetingConfigList + command.params['accountId'] = account_id unless account_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing pretargeting config. This method supports patch semantics. + # @param [Fixnum] account_id + # The account id to update the pretargeting config for. + # @param [Fixnum] config_id + # The specific id of the configuration to update. + # @param [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] pretargeting_config_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_pretargeting_config(account_id, config_id, pretargeting_config_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'pretargetingconfigs/{accountId}/{configId}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + command.request_object = pretargeting_config_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig + command.params['accountId'] = account_id unless account_id.nil? + command.params['configId'] = config_id unless config_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing pretargeting config. + # @param [Fixnum] account_id + # The account id to update the pretargeting config for. + # @param [Fixnum] config_id + # The specific id of the configuration to update. + # @param [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] pretargeting_config_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_3::PretargetingConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_pretargeting_config(account_id, config_id, pretargeting_config_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'pretargetingconfigs/{accountId}/{configId}', options) + command.request_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + command.request_object = pretargeting_config_object + command.response_representation = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_3::PretargetingConfig + command.params['accountId'] = account_id unless account_id.nil? + command.params['configId'] = config_id unless config_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1.rb b/generated/google/apis/adexchangeseller_v1.rb new file mode 100644 index 000000000..0aa73edf5 --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1.rb @@ -0,0 +1,37 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/adexchangeseller_v1/service.rb' +require 'google/apis/adexchangeseller_v1/classes.rb' +require 'google/apis/adexchangeseller_v1/representations.rb' + +module Google + module Apis + # Ad Exchange Seller API + # + # Accesses the inventory of Ad Exchange seller users and generates reports. + # + # @see https://developers.google.com/ad-exchange/seller-rest/ + module AdexchangesellerV1 + VERSION = 'V1' + REVISION = '20160805' + + # View and manage your Ad Exchange data + AUTH_ADEXCHANGE_SELLER = 'https://www.googleapis.com/auth/adexchange.seller' + + # View your Ad Exchange data + AUTH_ADEXCHANGE_SELLER_READONLY = 'https://www.googleapis.com/auth/adexchange.seller.readonly' + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1/classes.rb b/generated/google/apis/adexchangeseller_v1/classes.rb new file mode 100644 index 000000000..1a16c8509 --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1/classes.rb @@ -0,0 +1,557 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangesellerV1 + + # + class AdClient + include Google::Apis::Core::Hashable + + # Whether this ad client is opted in to ARC. + # Corresponds to the JSON property `arcOptIn` + # @return [Boolean] + attr_accessor :arc_opt_in + alias_method :arc_opt_in?, :arc_opt_in + + # Unique identifier of this ad client. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#adClient. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # This ad client's product code, which corresponds to the PRODUCT_CODE report + # dimension. + # Corresponds to the JSON property `productCode` + # @return [String] + attr_accessor :product_code + + # Whether this ad client supports being reported on. + # Corresponds to the JSON property `supportsReporting` + # @return [Boolean] + attr_accessor :supports_reporting + alias_method :supports_reporting?, :supports_reporting + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @arc_opt_in = args[:arc_opt_in] if args.key?(:arc_opt_in) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @product_code = args[:product_code] if args.key?(:product_code) + @supports_reporting = args[:supports_reporting] if args.key?(:supports_reporting) + end + end + + # + class AdClients + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The ad clients returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#adClients. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through ad clients. To retrieve the next page + # of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class AdUnit + include Google::Apis::Core::Hashable + + # Identity code of this ad unit, not necessarily unique across ad clients. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # Unique identifier of this ad unit. This should be considered an opaque + # identifier; it is not safe to rely on it being in any particular format. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#adUnit. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of this ad unit. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Status of this ad unit. Possible values are: + # NEW: Indicates that the ad unit was created within the last seven days and + # does not yet have any activity associated with it. + # ACTIVE: Indicates that there has been activity on this ad unit in the last + # seven days. + # INACTIVE: Indicates that there has been no activity on this ad unit in the + # last seven days. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @status = args[:status] if args.key?(:status) + end + end + + # + class AdUnits + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The ad units returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#adUnits. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through ad units. To retrieve the next page of + # results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class CustomChannel + include Google::Apis::Core::Hashable + + # Code of this custom channel, not necessarily unique across ad clients. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # Unique identifier of this custom channel. This should be considered an opaque + # identifier; it is not safe to rely on it being in any particular format. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#customChannel. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of this custom channel. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The targeting information of this custom channel, if activated. + # Corresponds to the JSON property `targetingInfo` + # @return [Google::Apis::AdexchangesellerV1::CustomChannel::TargetingInfo] + attr_accessor :targeting_info + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @targeting_info = args[:targeting_info] if args.key?(:targeting_info) + end + + # The targeting information of this custom channel, if activated. + class TargetingInfo + include Google::Apis::Core::Hashable + + # The name used to describe this channel externally. + # Corresponds to the JSON property `adsAppearOn` + # @return [String] + attr_accessor :ads_appear_on + + # The external description of the channel. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The locations in which ads appear. (Only valid for content and mobile content + # ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, + # MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, + # BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: + # TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # The language of the sites ads will be displayed on. + # Corresponds to the JSON property `siteLanguage` + # @return [String] + attr_accessor :site_language + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ads_appear_on = args[:ads_appear_on] if args.key?(:ads_appear_on) + @description = args[:description] if args.key?(:description) + @location = args[:location] if args.key?(:location) + @site_language = args[:site_language] if args.key?(:site_language) + end + end + end + + # + class CustomChannels + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The custom channels returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#customChannels. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through custom channels. To retrieve the next + # page of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class Report + include Google::Apis::Core::Hashable + + # The averages of the report. This is the same length as any other row in the + # report; cells corresponding to dimension columns are empty. + # Corresponds to the JSON property `averages` + # @return [Array] + attr_accessor :averages + + # The header information of the columns requested in the report. This is a list + # of headers; one for each dimension in the request, followed by one for each + # metric in the request. + # Corresponds to the JSON property `headers` + # @return [Array] + attr_accessor :headers + + # Kind this is, in this case adexchangeseller#report. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The output rows of the report. Each row is a list of cells; one for each + # dimension in the request, followed by one for each metric in the request. The + # dimension cells contain strings, and the metric cells contain numbers. + # Corresponds to the JSON property `rows` + # @return [Array>] + attr_accessor :rows + + # The total number of rows matched by the report request. Fewer rows may be + # returned in the response due to being limited by the row count requested or + # the report row limit. + # Corresponds to the JSON property `totalMatchedRows` + # @return [Fixnum] + attr_accessor :total_matched_rows + + # The totals of the report. This is the same length as any other row in the + # report; cells corresponding to dimension columns are empty. + # Corresponds to the JSON property `totals` + # @return [Array] + attr_accessor :totals + + # Any warnings associated with generation of the report. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @averages = args[:averages] if args.key?(:averages) + @headers = args[:headers] if args.key?(:headers) + @kind = args[:kind] if args.key?(:kind) + @rows = args[:rows] if args.key?(:rows) + @total_matched_rows = args[:total_matched_rows] if args.key?(:total_matched_rows) + @totals = args[:totals] if args.key?(:totals) + @warnings = args[:warnings] if args.key?(:warnings) + end + + # + class Header + include Google::Apis::Core::Hashable + + # The currency of this column. Only present if the header type is + # METRIC_CURRENCY. + # Corresponds to the JSON property `currency` + # @return [String] + attr_accessor :currency + + # The name of the header. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or + # METRIC_CURRENCY. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @currency = args[:currency] if args.key?(:currency) + @name = args[:name] if args.key?(:name) + @type = args[:type] if args.key?(:type) + end + end + end + + # + class SavedReport + include Google::Apis::Core::Hashable + + # Unique identifier of this saved report. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#savedReport. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # This saved report's name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + end + end + + # + class SavedReports + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The saved reports returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#savedReports. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through saved reports. To retrieve the next + # page of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class UrlChannel + include Google::Apis::Core::Hashable + + # Unique identifier of this URL channel. This should be considered an opaque + # identifier; it is not safe to rely on it being in any particular format. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#urlChannel. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # URL Pattern of this URL channel. Does not include "http://" or "https://". + # Example: www.example.com/home + # Corresponds to the JSON property `urlPattern` + # @return [String] + attr_accessor :url_pattern + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @url_pattern = args[:url_pattern] if args.key?(:url_pattern) + end + end + + # + class UrlChannels + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The URL channels returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#urlChannels. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through URL channels. To retrieve the next + # page of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1/representations.rb b/generated/google/apis/adexchangeseller_v1/representations.rb new file mode 100644 index 000000000..f19a9ef73 --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1/representations.rb @@ -0,0 +1,248 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangesellerV1 + + class AdClient + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdClients + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdUnit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdUnits + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CustomChannel + class Representation < Google::Apis::Core::JsonRepresentation; end + + class TargetingInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class CustomChannels + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Report + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Header + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class SavedReport + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SavedReports + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlChannel + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlChannels + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdClient + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :arc_opt_in, as: 'arcOptIn' + property :id, as: 'id' + property :kind, as: 'kind' + property :product_code, as: 'productCode' + property :supports_reporting, as: 'supportsReporting' + end + end + + class AdClients + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1::AdClient, decorator: Google::Apis::AdexchangesellerV1::AdClient::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class AdUnit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :id, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :status, as: 'status' + end + end + + class AdUnits + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1::AdUnit, decorator: Google::Apis::AdexchangesellerV1::AdUnit::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class CustomChannel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :id, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :targeting_info, as: 'targetingInfo', class: Google::Apis::AdexchangesellerV1::CustomChannel::TargetingInfo, decorator: Google::Apis::AdexchangesellerV1::CustomChannel::TargetingInfo::Representation + + end + + class TargetingInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ads_appear_on, as: 'adsAppearOn' + property :description, as: 'description' + property :location, as: 'location' + property :site_language, as: 'siteLanguage' + end + end + end + + class CustomChannels + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1::CustomChannel, decorator: Google::Apis::AdexchangesellerV1::CustomChannel::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class Report + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :averages, as: 'averages' + collection :headers, as: 'headers', class: Google::Apis::AdexchangesellerV1::Report::Header, decorator: Google::Apis::AdexchangesellerV1::Report::Header::Representation + + property :kind, as: 'kind' + collection :rows, as: 'rows', :class => Array do + include Representable::JSON::Collection + items + end + + property :total_matched_rows, :numeric_string => true, as: 'totalMatchedRows' + collection :totals, as: 'totals' + collection :warnings, as: 'warnings' + end + + class Header + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :currency, as: 'currency' + property :name, as: 'name' + property :type, as: 'type' + end + end + end + + class SavedReport + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + end + end + + class SavedReports + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1::SavedReport, decorator: Google::Apis::AdexchangesellerV1::SavedReport::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class UrlChannel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :url_pattern, as: 'urlPattern' + end + end + + class UrlChannels + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1::UrlChannel, decorator: Google::Apis::AdexchangesellerV1::UrlChannel::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1/service.rb b/generated/google/apis/adexchangeseller_v1/service.rb new file mode 100644 index 000000000..64218dccb --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1/service.rb @@ -0,0 +1,568 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangesellerV1 + # Ad Exchange Seller API + # + # Accesses the inventory of Ad Exchange seller users and generates reports. + # + # @example + # require 'google/apis/adexchangeseller_v1' + # + # Adexchangeseller = Google::Apis::AdexchangesellerV1 # Alias the module + # service = Adexchangeseller::AdExchangeSellerService.new + # + # @see https://developers.google.com/ad-exchange/seller-rest/ + class AdExchangeSellerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'adexchangeseller/v1/') + @batch_path = 'batch' + end + + # List all ad clients in this Ad Exchange account. + # @param [Fixnum] max_results + # The maximum number of ad clients to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through ad clients. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::AdClients] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::AdClients] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_adclients(max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients', options) + command.response_representation = Google::Apis::AdexchangesellerV1::AdClients::Representation + command.response_class = Google::Apis::AdexchangesellerV1::AdClients + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified ad unit in the specified ad client. + # @param [String] ad_client_id + # Ad client for which to get the ad unit. + # @param [String] ad_unit_id + # Ad unit to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::AdUnit] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::AdUnit] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_adunit(ad_client_id, ad_unit_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/adunits/{adUnitId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1::AdUnit::Representation + command.response_class = Google::Apis::AdexchangesellerV1::AdUnit + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['adUnitId'] = ad_unit_id unless ad_unit_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all ad units in the specified ad client for this Ad Exchange account. + # @param [String] ad_client_id + # Ad client for which to list ad units. + # @param [Boolean] include_inactive + # Whether to include inactive ad units. Default: true. + # @param [Fixnum] max_results + # The maximum number of ad units to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through ad units. To retrieve the next page, + # set this parameter to the value of "nextPageToken" from the previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::AdUnits] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::AdUnits] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_adunits(ad_client_id, include_inactive: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/adunits', options) + command.response_representation = Google::Apis::AdexchangesellerV1::AdUnits::Representation + command.response_class = Google::Apis::AdexchangesellerV1::AdUnits + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.query['includeInactive'] = include_inactive unless include_inactive.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all custom channels which the specified ad unit belongs to. + # @param [String] ad_client_id + # Ad client which contains the ad unit. + # @param [String] ad_unit_id + # Ad unit for which to list custom channels. + # @param [Fixnum] max_results + # The maximum number of custom channels to include in the response, used for + # paging. + # @param [String] page_token + # A continuation token, used to page through custom channels. To retrieve the + # next page, set this parameter to the value of "nextPageToken" from the + # previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::CustomChannels] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::CustomChannels] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_adunit_customchannels(ad_client_id, ad_unit_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/adunits/{adUnitId}/customchannels', options) + command.response_representation = Google::Apis::AdexchangesellerV1::CustomChannels::Representation + command.response_class = Google::Apis::AdexchangesellerV1::CustomChannels + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['adUnitId'] = ad_unit_id unless ad_unit_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get the specified custom channel from the specified ad client. + # @param [String] ad_client_id + # Ad client which contains the custom channel. + # @param [String] custom_channel_id + # Custom channel to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::CustomChannel] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::CustomChannel] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_customchannel(ad_client_id, custom_channel_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/customchannels/{customChannelId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1::CustomChannel::Representation + command.response_class = Google::Apis::AdexchangesellerV1::CustomChannel + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['customChannelId'] = custom_channel_id unless custom_channel_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all custom channels in the specified ad client for this Ad Exchange + # account. + # @param [String] ad_client_id + # Ad client for which to list custom channels. + # @param [Fixnum] max_results + # The maximum number of custom channels to include in the response, used for + # paging. + # @param [String] page_token + # A continuation token, used to page through custom channels. To retrieve the + # next page, set this parameter to the value of "nextPageToken" from the + # previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::CustomChannels] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::CustomChannels] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_customchannels(ad_client_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/customchannels', options) + command.response_representation = Google::Apis::AdexchangesellerV1::CustomChannels::Representation + command.response_class = Google::Apis::AdexchangesellerV1::CustomChannels + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all ad units in the specified custom channel. + # @param [String] ad_client_id + # Ad client which contains the custom channel. + # @param [String] custom_channel_id + # Custom channel for which to list ad units. + # @param [Boolean] include_inactive + # Whether to include inactive ad units. Default: true. + # @param [Fixnum] max_results + # The maximum number of ad units to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through ad units. To retrieve the next page, + # set this parameter to the value of "nextPageToken" from the previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::AdUnits] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::AdUnits] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_customchannel_adunits(ad_client_id, custom_channel_id, include_inactive: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/customchannels/{customChannelId}/adunits', options) + command.response_representation = Google::Apis::AdexchangesellerV1::AdUnits::Representation + command.response_class = Google::Apis::AdexchangesellerV1::AdUnits + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['customChannelId'] = custom_channel_id unless custom_channel_id.nil? + command.query['includeInactive'] = include_inactive unless include_inactive.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Generate an Ad Exchange report based on the report request sent in the query + # parameters. Returns the result as JSON; to retrieve output in CSV format + # specify "alt=csv" as a query parameter. + # @param [String] start_date + # Start of the date range to report on in "YYYY-MM-DD" format, inclusive. + # @param [String] end_date + # End of the date range to report on in "YYYY-MM-DD" format, inclusive. + # @param [Array, String] dimension + # Dimensions to base the report on. + # @param [Array, String] filter + # Filters to be run on the report. + # @param [String] locale + # Optional locale to use for translating report output to a local language. + # Defaults to "en_US" if not specified. + # @param [Fixnum] max_results + # The maximum number of rows of report data to return. + # @param [Array, String] metric + # Numeric columns to include in the report. + # @param [Array, String] sort + # The name of a dimension or metric to sort the resulting report on, optionally + # prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is + # specified, the column is sorted ascending. + # @param [Fixnum] start_index + # Index of the first row of report data to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::Report] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::Report] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def generate_report(start_date, end_date, dimension: nil, filter: nil, locale: nil, max_results: nil, metric: nil, sort: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:get, 'reports', options) + else + command = make_download_command(:get, 'reports', options) + command.download_dest = download_dest + end + command.response_representation = Google::Apis::AdexchangesellerV1::Report::Representation + command.response_class = Google::Apis::AdexchangesellerV1::Report + command.query['dimension'] = dimension unless dimension.nil? + command.query['endDate'] = end_date unless end_date.nil? + command.query['filter'] = filter unless filter.nil? + command.query['locale'] = locale unless locale.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['metric'] = metric unless metric.nil? + command.query['sort'] = sort unless sort.nil? + command.query['startDate'] = start_date unless start_date.nil? + command.query['startIndex'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Generate an Ad Exchange report based on the saved report ID sent in the query + # parameters. + # @param [String] saved_report_id + # The saved report to retrieve. + # @param [String] locale + # Optional locale to use for translating report output to a local language. + # Defaults to "en_US" if not specified. + # @param [Fixnum] max_results + # The maximum number of rows of report data to return. + # @param [Fixnum] start_index + # Index of the first row of report data to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::Report] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::Report] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def generate_report_saved(saved_report_id, locale: nil, max_results: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'reports/{savedReportId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1::Report::Representation + command.response_class = Google::Apis::AdexchangesellerV1::Report + command.params['savedReportId'] = saved_report_id unless saved_report_id.nil? + command.query['locale'] = locale unless locale.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['startIndex'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all saved reports in this Ad Exchange account. + # @param [Fixnum] max_results + # The maximum number of saved reports to include in the response, used for + # paging. + # @param [String] page_token + # A continuation token, used to page through saved reports. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::SavedReports] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::SavedReports] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_report_saveds(max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'reports/saved', options) + command.response_representation = Google::Apis::AdexchangesellerV1::SavedReports::Representation + command.response_class = Google::Apis::AdexchangesellerV1::SavedReports + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all URL channels in the specified ad client for this Ad Exchange account. + # @param [String] ad_client_id + # Ad client for which to list URL channels. + # @param [Fixnum] max_results + # The maximum number of URL channels to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through URL channels. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1::UrlChannels] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1::UrlChannels] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_urlchannels(ad_client_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/urlchannels', options) + command.response_representation = Google::Apis::AdexchangesellerV1::UrlChannels::Representation + command.response_class = Google::Apis::AdexchangesellerV1::UrlChannels + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1_1.rb b/generated/google/apis/adexchangeseller_v1_1.rb new file mode 100644 index 000000000..a320c326d --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1_1.rb @@ -0,0 +1,37 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/adexchangeseller_v1_1/service.rb' +require 'google/apis/adexchangeseller_v1_1/classes.rb' +require 'google/apis/adexchangeseller_v1_1/representations.rb' + +module Google + module Apis + # Ad Exchange Seller API + # + # Accesses the inventory of Ad Exchange seller users and generates reports. + # + # @see https://developers.google.com/ad-exchange/seller-rest/ + module AdexchangesellerV1_1 + VERSION = 'V1_1' + REVISION = '20160805' + + # View and manage your Ad Exchange data + AUTH_ADEXCHANGE_SELLER = 'https://www.googleapis.com/auth/adexchange.seller' + + # View your Ad Exchange data + AUTH_ADEXCHANGE_SELLER_READONLY = 'https://www.googleapis.com/auth/adexchange.seller.readonly' + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1_1/classes.rb b/generated/google/apis/adexchangeseller_v1_1/classes.rb new file mode 100644 index 000000000..c9e288cf1 --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1_1/classes.rb @@ -0,0 +1,842 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangesellerV1_1 + + # + class Account + include Google::Apis::Core::Hashable + + # Unique identifier of this account. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#account. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of this account. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + end + end + + # + class AdClient + include Google::Apis::Core::Hashable + + # Whether this ad client is opted in to ARC. + # Corresponds to the JSON property `arcOptIn` + # @return [Boolean] + attr_accessor :arc_opt_in + alias_method :arc_opt_in?, :arc_opt_in + + # Unique identifier of this ad client. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#adClient. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # This ad client's product code, which corresponds to the PRODUCT_CODE report + # dimension. + # Corresponds to the JSON property `productCode` + # @return [String] + attr_accessor :product_code + + # Whether this ad client supports being reported on. + # Corresponds to the JSON property `supportsReporting` + # @return [Boolean] + attr_accessor :supports_reporting + alias_method :supports_reporting?, :supports_reporting + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @arc_opt_in = args[:arc_opt_in] if args.key?(:arc_opt_in) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @product_code = args[:product_code] if args.key?(:product_code) + @supports_reporting = args[:supports_reporting] if args.key?(:supports_reporting) + end + end + + # + class AdClients + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The ad clients returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#adClients. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through ad clients. To retrieve the next page + # of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class AdUnit + include Google::Apis::Core::Hashable + + # Identity code of this ad unit, not necessarily unique across ad clients. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # Unique identifier of this ad unit. This should be considered an opaque + # identifier; it is not safe to rely on it being in any particular format. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#adUnit. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of this ad unit. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Status of this ad unit. Possible values are: + # NEW: Indicates that the ad unit was created within the last seven days and + # does not yet have any activity associated with it. + # ACTIVE: Indicates that there has been activity on this ad unit in the last + # seven days. + # INACTIVE: Indicates that there has been no activity on this ad unit in the + # last seven days. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @status = args[:status] if args.key?(:status) + end + end + + # + class AdUnits + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The ad units returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#adUnits. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through ad units. To retrieve the next page of + # results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class Alert + include Google::Apis::Core::Hashable + + # Unique identifier of this alert. This should be considered an opaque + # identifier; it is not safe to rely on it being in any particular format. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#alert. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The localized alert message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + # Severity of this alert. Possible values: INFO, WARNING, SEVERE. + # Corresponds to the JSON property `severity` + # @return [String] + attr_accessor :severity + + # Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, + # ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, + # GRAYLISTED_PUBLISHER, API_HOLD. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @message = args[:message] if args.key?(:message) + @severity = args[:severity] if args.key?(:severity) + @type = args[:type] if args.key?(:type) + end + end + + # + class Alerts + include Google::Apis::Core::Hashable + + # The alerts returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#alerts. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class CustomChannel + include Google::Apis::Core::Hashable + + # Code of this custom channel, not necessarily unique across ad clients. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # Unique identifier of this custom channel. This should be considered an opaque + # identifier; it is not safe to rely on it being in any particular format. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#customChannel. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of this custom channel. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The targeting information of this custom channel, if activated. + # Corresponds to the JSON property `targetingInfo` + # @return [Google::Apis::AdexchangesellerV1_1::CustomChannel::TargetingInfo] + attr_accessor :targeting_info + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @targeting_info = args[:targeting_info] if args.key?(:targeting_info) + end + + # The targeting information of this custom channel, if activated. + class TargetingInfo + include Google::Apis::Core::Hashable + + # The name used to describe this channel externally. + # Corresponds to the JSON property `adsAppearOn` + # @return [String] + attr_accessor :ads_appear_on + + # The external description of the channel. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The locations in which ads appear. (Only valid for content and mobile content + # ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, + # MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, + # BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: + # TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # The language of the sites ads will be displayed on. + # Corresponds to the JSON property `siteLanguage` + # @return [String] + attr_accessor :site_language + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ads_appear_on = args[:ads_appear_on] if args.key?(:ads_appear_on) + @description = args[:description] if args.key?(:description) + @location = args[:location] if args.key?(:location) + @site_language = args[:site_language] if args.key?(:site_language) + end + end + end + + # + class CustomChannels + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The custom channels returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#customChannels. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through custom channels. To retrieve the next + # page of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class Metadata + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#metadata. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class PreferredDeal + include Google::Apis::Core::Hashable + + # The name of the advertiser this deal is for. + # Corresponds to the JSON property `advertiserName` + # @return [String] + attr_accessor :advertiser_name + + # The name of the buyer network this deal is for. + # Corresponds to the JSON property `buyerNetworkName` + # @return [String] + attr_accessor :buyer_network_name + + # The currency code that applies to the fixed_cpm value. If not set then assumed + # to be USD. + # Corresponds to the JSON property `currencyCode` + # @return [String] + attr_accessor :currency_code + + # Time when this deal stops being active in seconds since the epoch (GMT). If + # not set then this deal is valid until manually disabled by the publisher. + # Corresponds to the JSON property `endTime` + # @return [Fixnum] + attr_accessor :end_time + + # The fixed price for this preferred deal. In cpm micros of currency according + # to currencyCode. If set, then this preferred deal is eligible for the fixed + # price tier of buying (highest priority, pay exactly the configured fixed price) + # . + # Corresponds to the JSON property `fixedCpm` + # @return [Fixnum] + attr_accessor :fixed_cpm + + # Unique identifier of this preferred deal. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#preferredDeal. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Time when this deal becomes active in seconds since the epoch (GMT). If not + # set then this deal is active immediately upon creation. + # Corresponds to the JSON property `startTime` + # @return [Fixnum] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @advertiser_name = args[:advertiser_name] if args.key?(:advertiser_name) + @buyer_network_name = args[:buyer_network_name] if args.key?(:buyer_network_name) + @currency_code = args[:currency_code] if args.key?(:currency_code) + @end_time = args[:end_time] if args.key?(:end_time) + @fixed_cpm = args[:fixed_cpm] if args.key?(:fixed_cpm) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + + # + class PreferredDeals + include Google::Apis::Core::Hashable + + # The preferred deals returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#preferredDeals. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class Report + include Google::Apis::Core::Hashable + + # The averages of the report. This is the same length as any other row in the + # report; cells corresponding to dimension columns are empty. + # Corresponds to the JSON property `averages` + # @return [Array] + attr_accessor :averages + + # The header information of the columns requested in the report. This is a list + # of headers; one for each dimension in the request, followed by one for each + # metric in the request. + # Corresponds to the JSON property `headers` + # @return [Array] + attr_accessor :headers + + # Kind this is, in this case adexchangeseller#report. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The output rows of the report. Each row is a list of cells; one for each + # dimension in the request, followed by one for each metric in the request. The + # dimension cells contain strings, and the metric cells contain numbers. + # Corresponds to the JSON property `rows` + # @return [Array>] + attr_accessor :rows + + # The total number of rows matched by the report request. Fewer rows may be + # returned in the response due to being limited by the row count requested or + # the report row limit. + # Corresponds to the JSON property `totalMatchedRows` + # @return [Fixnum] + attr_accessor :total_matched_rows + + # The totals of the report. This is the same length as any other row in the + # report; cells corresponding to dimension columns are empty. + # Corresponds to the JSON property `totals` + # @return [Array] + attr_accessor :totals + + # Any warnings associated with generation of the report. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @averages = args[:averages] if args.key?(:averages) + @headers = args[:headers] if args.key?(:headers) + @kind = args[:kind] if args.key?(:kind) + @rows = args[:rows] if args.key?(:rows) + @total_matched_rows = args[:total_matched_rows] if args.key?(:total_matched_rows) + @totals = args[:totals] if args.key?(:totals) + @warnings = args[:warnings] if args.key?(:warnings) + end + + # + class Header + include Google::Apis::Core::Hashable + + # The currency of this column. Only present if the header type is + # METRIC_CURRENCY. + # Corresponds to the JSON property `currency` + # @return [String] + attr_accessor :currency + + # The name of the header. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or + # METRIC_CURRENCY. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @currency = args[:currency] if args.key?(:currency) + @name = args[:name] if args.key?(:name) + @type = args[:type] if args.key?(:type) + end + end + end + + # + class ReportingMetadataEntry + include Google::Apis::Core::Hashable + + # For metrics this is a list of dimension IDs which the metric is compatible + # with, for dimensions it is a list of compatibility groups the dimension + # belongs to. + # Corresponds to the JSON property `compatibleDimensions` + # @return [Array] + attr_accessor :compatible_dimensions + + # The names of the metrics the dimension or metric this reporting metadata entry + # describes is compatible with. + # Corresponds to the JSON property `compatibleMetrics` + # @return [Array] + attr_accessor :compatible_metrics + + # Unique identifier of this reporting metadata entry, corresponding to the name + # of the appropriate dimension or metric. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The names of the dimensions which the dimension or metric this reporting + # metadata entry describes requires to also be present in order for the report + # to be valid. Omitting these will not cause an error or warning, but may result + # in data which cannot be correctly interpreted. + # Corresponds to the JSON property `requiredDimensions` + # @return [Array] + attr_accessor :required_dimensions + + # The names of the metrics which the dimension or metric this reporting metadata + # entry describes requires to also be present in order for the report to be + # valid. Omitting these will not cause an error or warning, but may result in + # data which cannot be correctly interpreted. + # Corresponds to the JSON property `requiredMetrics` + # @return [Array] + attr_accessor :required_metrics + + # The codes of the projects supported by the dimension or metric this reporting + # metadata entry describes. + # Corresponds to the JSON property `supportedProducts` + # @return [Array] + attr_accessor :supported_products + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @compatible_dimensions = args[:compatible_dimensions] if args.key?(:compatible_dimensions) + @compatible_metrics = args[:compatible_metrics] if args.key?(:compatible_metrics) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @required_dimensions = args[:required_dimensions] if args.key?(:required_dimensions) + @required_metrics = args[:required_metrics] if args.key?(:required_metrics) + @supported_products = args[:supported_products] if args.key?(:supported_products) + end + end + + # + class SavedReport + include Google::Apis::Core::Hashable + + # Unique identifier of this saved report. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#savedReport. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # This saved report's name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + end + end + + # + class SavedReports + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The saved reports returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#savedReports. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through saved reports. To retrieve the next + # page of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class UrlChannel + include Google::Apis::Core::Hashable + + # Unique identifier of this URL channel. This should be considered an opaque + # identifier; it is not safe to rely on it being in any particular format. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Kind of resource this is, in this case adexchangeseller#urlChannel. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # URL Pattern of this URL channel. Does not include "http://" or "https://". + # Example: www.example.com/home + # Corresponds to the JSON property `urlPattern` + # @return [String] + attr_accessor :url_pattern + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @url_pattern = args[:url_pattern] if args.key?(:url_pattern) + end + end + + # + class UrlChannels + include Google::Apis::Core::Hashable + + # ETag of this response for caching purposes. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The URL channels returned in this list response. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Kind of list this is, in this case adexchangeseller#urlChannels. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Continuation token used to page through URL channels. To retrieve the next + # page of results, set the next request's "pageToken" value to this. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1_1/representations.rb b/generated/google/apis/adexchangeseller_v1_1/representations.rb new file mode 100644 index 000000000..0c75e4986 --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1_1/representations.rb @@ -0,0 +1,364 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangesellerV1_1 + + class Account + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdClient + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdClients + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdUnit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AdUnits + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Alert + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Alerts + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CustomChannel + class Representation < Google::Apis::Core::JsonRepresentation; end + + class TargetingInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class CustomChannels + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Metadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PreferredDeal + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PreferredDeals + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Report + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Header + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportingMetadataEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SavedReport + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SavedReports + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlChannel + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlChannels + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Account + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + end + end + + class AdClient + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :arc_opt_in, as: 'arcOptIn' + property :id, as: 'id' + property :kind, as: 'kind' + property :product_code, as: 'productCode' + property :supports_reporting, as: 'supportsReporting' + end + end + + class AdClients + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::AdClient, decorator: Google::Apis::AdexchangesellerV1_1::AdClient::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class AdUnit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :id, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :status, as: 'status' + end + end + + class AdUnits + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::AdUnit, decorator: Google::Apis::AdexchangesellerV1_1::AdUnit::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class Alert + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :message, as: 'message' + property :severity, as: 'severity' + property :type, as: 'type' + end + end + + class Alerts + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::Alert, decorator: Google::Apis::AdexchangesellerV1_1::Alert::Representation + + property :kind, as: 'kind' + end + end + + class CustomChannel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :id, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :targeting_info, as: 'targetingInfo', class: Google::Apis::AdexchangesellerV1_1::CustomChannel::TargetingInfo, decorator: Google::Apis::AdexchangesellerV1_1::CustomChannel::TargetingInfo::Representation + + end + + class TargetingInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ads_appear_on, as: 'adsAppearOn' + property :description, as: 'description' + property :location, as: 'location' + property :site_language, as: 'siteLanguage' + end + end + end + + class CustomChannels + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::CustomChannel, decorator: Google::Apis::AdexchangesellerV1_1::CustomChannel::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class Metadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::ReportingMetadataEntry, decorator: Google::Apis::AdexchangesellerV1_1::ReportingMetadataEntry::Representation + + property :kind, as: 'kind' + end + end + + class PreferredDeal + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :advertiser_name, as: 'advertiserName' + property :buyer_network_name, as: 'buyerNetworkName' + property :currency_code, as: 'currencyCode' + property :end_time, :numeric_string => true, as: 'endTime' + property :fixed_cpm, :numeric_string => true, as: 'fixedCpm' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :start_time, :numeric_string => true, as: 'startTime' + end + end + + class PreferredDeals + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::PreferredDeal, decorator: Google::Apis::AdexchangesellerV1_1::PreferredDeal::Representation + + property :kind, as: 'kind' + end + end + + class Report + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :averages, as: 'averages' + collection :headers, as: 'headers', class: Google::Apis::AdexchangesellerV1_1::Report::Header, decorator: Google::Apis::AdexchangesellerV1_1::Report::Header::Representation + + property :kind, as: 'kind' + collection :rows, as: 'rows', :class => Array do + include Representable::JSON::Collection + items + end + + property :total_matched_rows, :numeric_string => true, as: 'totalMatchedRows' + collection :totals, as: 'totals' + collection :warnings, as: 'warnings' + end + + class Header + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :currency, as: 'currency' + property :name, as: 'name' + property :type, as: 'type' + end + end + end + + class ReportingMetadataEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :compatible_dimensions, as: 'compatibleDimensions' + collection :compatible_metrics, as: 'compatibleMetrics' + property :id, as: 'id' + property :kind, as: 'kind' + collection :required_dimensions, as: 'requiredDimensions' + collection :required_metrics, as: 'requiredMetrics' + collection :supported_products, as: 'supportedProducts' + end + end + + class SavedReport + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + end + end + + class SavedReports + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::SavedReport, decorator: Google::Apis::AdexchangesellerV1_1::SavedReport::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class UrlChannel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :url_pattern, as: 'urlPattern' + end + end + + class UrlChannels + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::AdexchangesellerV1_1::UrlChannel, decorator: Google::Apis::AdexchangesellerV1_1::UrlChannel::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + end + end +end diff --git a/generated/google/apis/adexchangeseller_v1_1/service.rb b/generated/google/apis/adexchangeseller_v1_1/service.rb new file mode 100644 index 000000000..aa3003ef5 --- /dev/null +++ b/generated/google/apis/adexchangeseller_v1_1/service.rb @@ -0,0 +1,771 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AdexchangesellerV1_1 + # Ad Exchange Seller API + # + # Accesses the inventory of Ad Exchange seller users and generates reports. + # + # @example + # require 'google/apis/adexchangeseller_v1_1' + # + # Adexchangeseller = Google::Apis::AdexchangesellerV1_1 # Alias the module + # service = Adexchangeseller::AdExchangeSellerService.new + # + # @see https://developers.google.com/ad-exchange/seller-rest/ + class AdExchangeSellerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'adexchangeseller/v1.1/') + @batch_path = 'batch' + end + + # Get information about the selected Ad Exchange account. + # @param [String] account_id + # Account to get information about. Tip: 'myaccount' is a valid ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::Account] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::Account] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_account(account_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'accounts/{accountId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::Account::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::Account + command.params['accountId'] = account_id unless account_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all ad clients in this Ad Exchange account. + # @param [Fixnum] max_results + # The maximum number of ad clients to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through ad clients. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::AdClients] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::AdClients] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_adclients(max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::AdClients::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::AdClients + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified ad unit in the specified ad client. + # @param [String] ad_client_id + # Ad client for which to get the ad unit. + # @param [String] ad_unit_id + # Ad unit to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::AdUnit] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::AdUnit] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_adunit(ad_client_id, ad_unit_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/adunits/{adUnitId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::AdUnit::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::AdUnit + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['adUnitId'] = ad_unit_id unless ad_unit_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all ad units in the specified ad client for this Ad Exchange account. + # @param [String] ad_client_id + # Ad client for which to list ad units. + # @param [Boolean] include_inactive + # Whether to include inactive ad units. Default: true. + # @param [Fixnum] max_results + # The maximum number of ad units to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through ad units. To retrieve the next page, + # set this parameter to the value of "nextPageToken" from the previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::AdUnits] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::AdUnits] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_adunits(ad_client_id, include_inactive: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/adunits', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::AdUnits::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::AdUnits + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.query['includeInactive'] = include_inactive unless include_inactive.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all custom channels which the specified ad unit belongs to. + # @param [String] ad_client_id + # Ad client which contains the ad unit. + # @param [String] ad_unit_id + # Ad unit for which to list custom channels. + # @param [Fixnum] max_results + # The maximum number of custom channels to include in the response, used for + # paging. + # @param [String] page_token + # A continuation token, used to page through custom channels. To retrieve the + # next page, set this parameter to the value of "nextPageToken" from the + # previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::CustomChannels] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::CustomChannels] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_adunit_customchannels(ad_client_id, ad_unit_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/adunits/{adUnitId}/customchannels', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::CustomChannels::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::CustomChannels + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['adUnitId'] = ad_unit_id unless ad_unit_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the alerts for this Ad Exchange account. + # @param [String] locale + # The locale to use for translating alert messages. The account locale will be + # used if this is not supplied. The AdSense default (English) will be used if + # the supplied locale is invalid or unsupported. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::Alerts] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::Alerts] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_alerts(locale: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'alerts', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::Alerts::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::Alerts + command.query['locale'] = locale unless locale.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get the specified custom channel from the specified ad client. + # @param [String] ad_client_id + # Ad client which contains the custom channel. + # @param [String] custom_channel_id + # Custom channel to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::CustomChannel] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::CustomChannel] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_customchannel(ad_client_id, custom_channel_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/customchannels/{customChannelId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::CustomChannel::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::CustomChannel + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['customChannelId'] = custom_channel_id unless custom_channel_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all custom channels in the specified ad client for this Ad Exchange + # account. + # @param [String] ad_client_id + # Ad client for which to list custom channels. + # @param [Fixnum] max_results + # The maximum number of custom channels to include in the response, used for + # paging. + # @param [String] page_token + # A continuation token, used to page through custom channels. To retrieve the + # next page, set this parameter to the value of "nextPageToken" from the + # previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::CustomChannels] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::CustomChannels] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_customchannels(ad_client_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/customchannels', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::CustomChannels::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::CustomChannels + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all ad units in the specified custom channel. + # @param [String] ad_client_id + # Ad client which contains the custom channel. + # @param [String] custom_channel_id + # Custom channel for which to list ad units. + # @param [Boolean] include_inactive + # Whether to include inactive ad units. Default: true. + # @param [Fixnum] max_results + # The maximum number of ad units to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through ad units. To retrieve the next page, + # set this parameter to the value of "nextPageToken" from the previous response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::AdUnits] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::AdUnits] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_customchannel_adunits(ad_client_id, custom_channel_id, include_inactive: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/customchannels/{customChannelId}/adunits', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::AdUnits::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::AdUnits + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.params['customChannelId'] = custom_channel_id unless custom_channel_id.nil? + command.query['includeInactive'] = include_inactive unless include_inactive.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the metadata for the dimensions available to this AdExchange account. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::Metadata] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::Metadata] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_metadatum_dimensions(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'metadata/dimensions', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::Metadata::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::Metadata + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the metadata for the metrics available to this AdExchange account. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::Metadata] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::Metadata] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_metadatum_metrics(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'metadata/metrics', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::Metadata::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::Metadata + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get information about the selected Ad Exchange Preferred Deal. + # @param [String] deal_id + # Preferred deal to get information about. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::PreferredDeal] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::PreferredDeal] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_preferreddeal(deal_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'preferreddeals/{dealId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::PreferredDeal::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::PreferredDeal + command.params['dealId'] = deal_id unless deal_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the preferred deals for this Ad Exchange account. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::PreferredDeals] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::PreferredDeals] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_preferreddeals(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'preferreddeals', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::PreferredDeals::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::PreferredDeals + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Generate an Ad Exchange report based on the report request sent in the query + # parameters. Returns the result as JSON; to retrieve output in CSV format + # specify "alt=csv" as a query parameter. + # @param [String] start_date + # Start of the date range to report on in "YYYY-MM-DD" format, inclusive. + # @param [String] end_date + # End of the date range to report on in "YYYY-MM-DD" format, inclusive. + # @param [Array, String] dimension + # Dimensions to base the report on. + # @param [Array, String] filter + # Filters to be run on the report. + # @param [String] locale + # Optional locale to use for translating report output to a local language. + # Defaults to "en_US" if not specified. + # @param [Fixnum] max_results + # The maximum number of rows of report data to return. + # @param [Array, String] metric + # Numeric columns to include in the report. + # @param [Array, String] sort + # The name of a dimension or metric to sort the resulting report on, optionally + # prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is + # specified, the column is sorted ascending. + # @param [Fixnum] start_index + # Index of the first row of report data to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::Report] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::Report] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def generate_report(start_date, end_date, dimension: nil, filter: nil, locale: nil, max_results: nil, metric: nil, sort: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:get, 'reports', options) + else + command = make_download_command(:get, 'reports', options) + command.download_dest = download_dest + end + command.response_representation = Google::Apis::AdexchangesellerV1_1::Report::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::Report + command.query['dimension'] = dimension unless dimension.nil? + command.query['endDate'] = end_date unless end_date.nil? + command.query['filter'] = filter unless filter.nil? + command.query['locale'] = locale unless locale.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['metric'] = metric unless metric.nil? + command.query['sort'] = sort unless sort.nil? + command.query['startDate'] = start_date unless start_date.nil? + command.query['startIndex'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Generate an Ad Exchange report based on the saved report ID sent in the query + # parameters. + # @param [String] saved_report_id + # The saved report to retrieve. + # @param [String] locale + # Optional locale to use for translating report output to a local language. + # Defaults to "en_US" if not specified. + # @param [Fixnum] max_results + # The maximum number of rows of report data to return. + # @param [Fixnum] start_index + # Index of the first row of report data to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::Report] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::Report] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def generate_report_saved(saved_report_id, locale: nil, max_results: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'reports/{savedReportId}', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::Report::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::Report + command.params['savedReportId'] = saved_report_id unless saved_report_id.nil? + command.query['locale'] = locale unless locale.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['startIndex'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all saved reports in this Ad Exchange account. + # @param [Fixnum] max_results + # The maximum number of saved reports to include in the response, used for + # paging. + # @param [String] page_token + # A continuation token, used to page through saved reports. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::SavedReports] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::SavedReports] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_report_saveds(max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'reports/saved', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::SavedReports::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::SavedReports + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all URL channels in the specified ad client for this Ad Exchange account. + # @param [String] ad_client_id + # Ad client for which to list URL channels. + # @param [Fixnum] max_results + # The maximum number of URL channels to include in the response, used for paging. + # @param [String] page_token + # A continuation token, used to page through URL channels. To retrieve the next + # page, set this parameter to the value of "nextPageToken" from the previous + # response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangesellerV1_1::UrlChannels] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangesellerV1_1::UrlChannels] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_urlchannels(ad_client_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'adclients/{adClientId}/urlchannels', options) + command.response_representation = Google::Apis::AdexchangesellerV1_1::UrlChannels::Representation + command.response_class = Google::Apis::AdexchangesellerV1_1::UrlChannels + command.params['adClientId'] = ad_client_id unless ad_client_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/admin_directory_v1.rb b/generated/google/apis/admin_directory_v1.rb index 1bd5fa366..a6ac17242 100644 --- a/generated/google/apis/admin_directory_v1.rb +++ b/generated/google/apis/admin_directory_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/admin-sdk/directory/ module AdminDirectoryV1 VERSION = 'DirectoryV1' - REVISION = '20170530' + REVISION = '20170712' # View and manage customer related information AUTH_ADMIN_DIRECTORY_CUSTOMER = 'https://www.googleapis.com/auth/admin.directory.customer' diff --git a/generated/google/apis/admin_directory_v1/classes.rb b/generated/google/apis/admin_directory_v1/classes.rb index 1e0a67839..485d5d246 100644 --- a/generated/google/apis/admin_directory_v1/classes.rb +++ b/generated/google/apis/admin_directory_v1/classes.rb @@ -637,6 +637,26 @@ module Google end end + # JSON request template for moving ChromeOs Device to given OU in Directory + # Devices API. + class ChromeOsMoveDevicesToOu + include Google::Apis::Core::Hashable + + # ChromeOs Devices to be moved to OU + # Corresponds to the JSON property `deviceIds` + # @return [Array] + attr_accessor :device_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @device_ids = args[:device_ids] if args.key?(:device_ids) + end + end + # JSON template for Customer Resource object in Directory API. class Customer include Google::Apis::Core::Hashable @@ -2418,6 +2438,11 @@ module Google attr_accessor :is_mailbox_setup alias_method :is_mailbox_setup?, :is_mailbox_setup + # + # Corresponds to the JSON property `keywords` + # @return [Object] + attr_accessor :keywords + # Kind of resource this is. # Corresponds to the JSON property `kind` # @return [String] @@ -2546,6 +2571,7 @@ module Google @is_enforced_in2_sv = args[:is_enforced_in2_sv] if args.key?(:is_enforced_in2_sv) @is_enrolled_in2_sv = args[:is_enrolled_in2_sv] if args.key?(:is_enrolled_in2_sv) @is_mailbox_setup = args[:is_mailbox_setup] if args.key?(:is_mailbox_setup) + @keywords = args[:keywords] if args.key?(:keywords) @kind = args[:kind] if args.key?(:kind) @languages = args[:languages] if args.key?(:languages) @last_login_time = args[:last_login_time] if args.key?(:last_login_time) @@ -2820,6 +2846,40 @@ module Google end end + # JSON template for a keyword entry. + class UserKeyword + include Google::Apis::Core::Hashable + + # Custom Type. + # Corresponds to the JSON property `customType` + # @return [String] + attr_accessor :custom_type + + # Each entry can have a type which indicates standard type of that entry. For + # example, keyword could be of type occupation or outlook. In addition to the + # standard type, an entry can have a custom type and can give it any name. Such + # types should have the CUSTOM value as type and also have a customType value. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Keyword. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @custom_type = args[:custom_type] if args.key?(:custom_type) + @type = args[:type] if args.key?(:type) + @value = args[:value] if args.key?(:value) + end + end + # JSON template for a language entry. class UserLanguage include Google::Apis::Core::Hashable diff --git a/generated/google/apis/admin_directory_v1/representations.rb b/generated/google/apis/admin_directory_v1/representations.rb index ba3b4a173..ff4fa48ea 100644 --- a/generated/google/apis/admin_directory_v1/representations.rb +++ b/generated/google/apis/admin_directory_v1/representations.rb @@ -94,6 +94,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ChromeOsMoveDevicesToOu + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Customer class Representation < Google::Apis::Core::JsonRepresentation; end @@ -316,6 +322,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class UserKeyword + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class UserLanguage class Representation < Google::Apis::Core::JsonRepresentation; end @@ -561,6 +573,13 @@ module Google end end + class ChromeOsMoveDevicesToOu + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :device_ids, as: 'deviceIds' + end + end + class Customer # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -998,6 +1017,7 @@ module Google property :is_enforced_in2_sv, as: 'isEnforcedIn2Sv' property :is_enrolled_in2_sv, as: 'isEnrolledIn2Sv' property :is_mailbox_setup, as: 'isMailboxSetup' + property :keywords, as: 'keywords' property :kind, as: 'kind' property :languages, as: 'languages' property :last_login_time, as: 'lastLoginTime', type: DateTime @@ -1081,6 +1101,15 @@ module Google end end + class UserKeyword + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :custom_type, as: 'customType' + property :type, as: 'type' + property :value, as: 'value' + end + end + class UserLanguage # @private class Representation < Google::Apis::Core::JsonRepresentation diff --git a/generated/google/apis/admin_directory_v1/service.rb b/generated/google/apis/admin_directory_v1/service.rb index 7b89b60f3..5cbfa70f3 100644 --- a/generated/google/apis/admin_directory_v1/service.rb +++ b/generated/google/apis/admin_directory_v1/service.rb @@ -337,6 +337,45 @@ module Google execute_or_queue_command(command, &block) end + # Move or insert multiple Chrome OS Devices to Organization Unit + # @param [String] customer_id + # Immutable ID of the G Suite account + # @param [String] org_unit_path + # Full path of the target organization unit or its Id + # @param [Google::Apis::AdminDirectoryV1::ChromeOsMoveDevicesToOu] chrome_os_move_devices_to_ou_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def move_chromeosdevice_devices_to_ou(customer_id, org_unit_path, chrome_os_move_devices_to_ou_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'customer/{customerId}/devices/chromeos/moveDevicesToOu', options) + command.request_representation = Google::Apis::AdminDirectoryV1::ChromeOsMoveDevicesToOu::Representation + command.request_object = chrome_os_move_devices_to_ou_object + command.params['customerId'] = customer_id unless customer_id.nil? + command.query['orgUnitPath'] = org_unit_path unless org_unit_path.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Update Chrome OS Device. This method supports patch semantics. # @param [String] customer_id # Immutable ID of the G Suite account diff --git a/generated/google/apis/analytics_v2_4.rb b/generated/google/apis/analytics_v2_4.rb new file mode 100644 index 000000000..f511476fc --- /dev/null +++ b/generated/google/apis/analytics_v2_4.rb @@ -0,0 +1,37 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/analytics_v2_4/service.rb' +require 'google/apis/analytics_v2_4/classes.rb' +require 'google/apis/analytics_v2_4/representations.rb' + +module Google + module Apis + # Google Analytics API + # + # Views and manages your Google Analytics data. + # + # @see https://developers.google.com/analytics/ + module AnalyticsV2_4 + VERSION = 'V2_4' + REVISION = '20170321' + + # View and manage your Google Analytics data + AUTH_ANALYTICS = 'https://www.googleapis.com/auth/analytics' + + # View your Google Analytics data + AUTH_ANALYTICS_READONLY = 'https://www.googleapis.com/auth/analytics.readonly' + end + end +end diff --git a/generated/google/apis/analytics_v2_4/classes.rb b/generated/google/apis/analytics_v2_4/classes.rb new file mode 100644 index 000000000..1510d077e --- /dev/null +++ b/generated/google/apis/analytics_v2_4/classes.rb @@ -0,0 +1,26 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AnalyticsV2_4 + end + end +end diff --git a/generated/google/apis/analytics_v2_4/representations.rb b/generated/google/apis/analytics_v2_4/representations.rb new file mode 100644 index 000000000..1510d077e --- /dev/null +++ b/generated/google/apis/analytics_v2_4/representations.rb @@ -0,0 +1,26 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AnalyticsV2_4 + end + end +end diff --git a/generated/google/apis/analytics_v2_4/service.rb b/generated/google/apis/analytics_v2_4/service.rb new file mode 100644 index 000000000..8f1ee5145 --- /dev/null +++ b/generated/google/apis/analytics_v2_4/service.rb @@ -0,0 +1,345 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AnalyticsV2_4 + # Google Analytics API + # + # Views and manages your Google Analytics data. + # + # @example + # require 'google/apis/analytics_v2_4' + # + # Analytics = Google::Apis::AnalyticsV2_4 # Alias the module + # service = Analytics::AnalyticsService.new + # + # @see https://developers.google.com/analytics/ + class AnalyticsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'analytics/v2.4/') + @batch_path = 'batch' + end + + # Returns Analytics report data for a view (profile). + # @param [String] ids + # Unique table ID for retrieving report data. Table ID is of the form ga:XXXX, + # where XXXX is the Analytics view (profile) ID. + # @param [String] start_date + # Start date for fetching report data. All requests should specify a start date + # formatted as YYYY-MM-DD. + # @param [String] end_date + # End date for fetching report data. All requests should specify an end date + # formatted as YYYY-MM-DD. + # @param [String] metrics + # A comma-separated list of Analytics metrics. E.g., 'ga:sessions,ga:pageviews'. + # At least one metric must be specified to retrieve a valid Analytics report. + # @param [String] dimensions + # A comma-separated list of Analytics dimensions. E.g., 'ga:browser,ga:city'. + # @param [String] filters + # A comma-separated list of dimension or metric filters to be applied to the + # report data. + # @param [Fixnum] max_results + # The maximum number of entries to include in this feed. + # @param [String] segment + # An Analytics advanced segment to be applied to the report data. + # @param [String] sort + # A comma-separated list of dimensions or metrics that determine the sort order + # for the report data. + # @param [Fixnum] start_index + # An index of the first entity to retrieve. Use this parameter as a pagination + # mechanism along with the max-results parameter. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_datum(ids, start_date, end_date, metrics, dimensions: nil, filters: nil, max_results: nil, segment: nil, sort: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'data', options) + command.query['dimensions'] = dimensions unless dimensions.nil? + command.query['end-date'] = end_date unless end_date.nil? + command.query['filters'] = filters unless filters.nil? + command.query['ids'] = ids unless ids.nil? + command.query['max-results'] = max_results unless max_results.nil? + command.query['metrics'] = metrics unless metrics.nil? + command.query['segment'] = segment unless segment.nil? + command.query['sort'] = sort unless sort.nil? + command.query['start-date'] = start_date unless start_date.nil? + command.query['start-index'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all accounts to which the user has access. + # @param [Fixnum] max_results + # The maximum number of accounts to include in this response. + # @param [Fixnum] start_index + # An index of the first account to retrieve. Use this parameter as a pagination + # mechanism along with the max-results parameter. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_management_accounts(max_results: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'management/accounts', options) + command.query['max-results'] = max_results unless max_results.nil? + command.query['start-index'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists goals to which the user has access. + # @param [String] account_id + # Account ID to retrieve goals for. Can either be a specific account ID or '~all' + # , which refers to all the accounts that user has access to. + # @param [String] web_property_id + # Web property ID to retrieve goals for. Can either be a specific web property + # ID or '~all', which refers to all the web properties that user has access to. + # @param [String] profile_id + # View (Profile) ID to retrieve goals for. Can either be a specific view ( + # profile) ID or '~all', which refers to all the views (profiles) that user has + # access to. + # @param [Fixnum] max_results + # The maximum number of goals to include in this response. + # @param [Fixnum] start_index + # An index of the first goal to retrieve. Use this parameter as a pagination + # mechanism along with the max-results parameter. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_management_goals(account_id, web_property_id, profile_id, max_results: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals', options) + command.params['accountId'] = account_id unless account_id.nil? + command.params['webPropertyId'] = web_property_id unless web_property_id.nil? + command.params['profileId'] = profile_id unless profile_id.nil? + command.query['max-results'] = max_results unless max_results.nil? + command.query['start-index'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists views (profiles) to which the user has access. + # @param [String] account_id + # Account ID for the views (profiles) to retrieve. Can either be a specific + # account ID or '~all', which refers to all the accounts to which the user has + # access. + # @param [String] web_property_id + # Web property ID for the views (profiles) to retrieve. Can either be a specific + # web property ID or '~all', which refers to all the web properties to which the + # user has access. + # @param [Fixnum] max_results + # The maximum number of views (profiles) to include in this response. + # @param [Fixnum] start_index + # An index of the first entity to retrieve. Use this parameter as a pagination + # mechanism along with the max-results parameter. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_management_profiles(account_id, web_property_id, max_results: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'management/accounts/{accountId}/webproperties/{webPropertyId}/profiles', options) + command.params['accountId'] = account_id unless account_id.nil? + command.params['webPropertyId'] = web_property_id unless web_property_id.nil? + command.query['max-results'] = max_results unless max_results.nil? + command.query['start-index'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists advanced segments to which the user has access. + # @param [Fixnum] max_results + # The maximum number of advanced segments to include in this response. + # @param [Fixnum] start_index + # An index of the first advanced segment to retrieve. Use this parameter as a + # pagination mechanism along with the max-results parameter. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_management_segments(max_results: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'management/segments', options) + command.query['max-results'] = max_results unless max_results.nil? + command.query['start-index'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists web properties to which the user has access. + # @param [String] account_id + # Account ID to retrieve web properties for. Can either be a specific account ID + # or '~all', which refers to all the accounts that user has access to. + # @param [Fixnum] max_results + # The maximum number of web properties to include in this response. + # @param [Fixnum] start_index + # An index of the first entity to retrieve. Use this parameter as a pagination + # mechanism along with the max-results parameter. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_management_webproperties(account_id, max_results: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'management/accounts/{accountId}/webproperties', options) + command.params['accountId'] = account_id unless account_id.nil? + command.query['max-results'] = max_results unless max_results.nil? + command.query['start-index'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/androidpublisher_v1.rb b/generated/google/apis/androidpublisher_v1.rb new file mode 100644 index 000000000..a78f404d9 --- /dev/null +++ b/generated/google/apis/androidpublisher_v1.rb @@ -0,0 +1,34 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/androidpublisher_v1/service.rb' +require 'google/apis/androidpublisher_v1/classes.rb' +require 'google/apis/androidpublisher_v1/representations.rb' + +module Google + module Apis + # Google Play Developer API + # + # Lets Android application developers access their Google Play accounts. + # + # @see https://developers.google.com/android-publisher + module AndroidpublisherV1 + VERSION = 'V1' + REVISION = '20170222' + + # View and manage your Google Play Developer account + AUTH_ANDROIDPUBLISHER = 'https://www.googleapis.com/auth/androidpublisher' + end + end +end diff --git a/generated/google/apis/androidpublisher_v1/classes.rb b/generated/google/apis/androidpublisher_v1/classes.rb new file mode 100644 index 000000000..b70543e32 --- /dev/null +++ b/generated/google/apis/androidpublisher_v1/classes.rb @@ -0,0 +1,67 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AndroidpublisherV1 + + # A SubscriptionPurchase resource indicates the status of a user's subscription + # purchase. + class SubscriptionPurchase + include Google::Apis::Core::Hashable + + # Whether the subscription will automatically be renewed when it reaches its + # current expiry time. + # Corresponds to the JSON property `autoRenewing` + # @return [Boolean] + attr_accessor :auto_renewing + alias_method :auto_renewing?, :auto_renewing + + # Time at which the subscription was granted, in milliseconds since the Epoch. + # Corresponds to the JSON property `initiationTimestampMsec` + # @return [Fixnum] + attr_accessor :initiation_timestamp_msec + + # This kind represents a subscriptionPurchase object in the androidpublisher + # service. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Time at which the subscription will expire, in milliseconds since the Epoch. + # Corresponds to the JSON property `validUntilTimestampMsec` + # @return [Fixnum] + attr_accessor :valid_until_timestamp_msec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_renewing = args[:auto_renewing] if args.key?(:auto_renewing) + @initiation_timestamp_msec = args[:initiation_timestamp_msec] if args.key?(:initiation_timestamp_msec) + @kind = args[:kind] if args.key?(:kind) + @valid_until_timestamp_msec = args[:valid_until_timestamp_msec] if args.key?(:valid_until_timestamp_msec) + end + end + end + end +end diff --git a/generated/google/apis/androidpublisher_v1/representations.rb b/generated/google/apis/androidpublisher_v1/representations.rb new file mode 100644 index 000000000..5e1b33e9a --- /dev/null +++ b/generated/google/apis/androidpublisher_v1/representations.rb @@ -0,0 +1,42 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AndroidpublisherV1 + + class SubscriptionPurchase + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubscriptionPurchase + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_renewing, as: 'autoRenewing' + property :initiation_timestamp_msec, :numeric_string => true, as: 'initiationTimestampMsec' + property :kind, as: 'kind' + property :valid_until_timestamp_msec, :numeric_string => true, as: 'validUntilTimestampMsec' + end + end + end + end +end diff --git a/generated/google/apis/androidpublisher_v1/service.rb b/generated/google/apis/androidpublisher_v1/service.rb new file mode 100644 index 000000000..c2cbff9a6 --- /dev/null +++ b/generated/google/apis/androidpublisher_v1/service.rb @@ -0,0 +1,150 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AndroidpublisherV1 + # Google Play Developer API + # + # Lets Android application developers access their Google Play accounts. + # + # @example + # require 'google/apis/androidpublisher_v1' + # + # Androidpublisher = Google::Apis::AndroidpublisherV1 # Alias the module + # service = Androidpublisher::AndroidPublisherService.new + # + # @see https://developers.google.com/android-publisher + class AndroidPublisherService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'androidpublisher/v1/applications/') + @batch_path = 'batch' + end + + # Cancels a user's subscription purchase. The subscription remains valid until + # its expiration time. + # @param [String] package_name + # The package name of the application for which this subscription was purchased ( + # for example, 'com.some.thing'). + # @param [String] subscription_id + # The purchased subscription ID (for example, 'monthly001'). + # @param [String] token + # The token provided to the user's device when the subscription was purchased. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_purchase(package_name, subscription_id, token, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{packageName}/subscriptions/{subscriptionId}/purchases/{token}/cancel', options) + command.params['packageName'] = package_name unless package_name.nil? + command.params['subscriptionId'] = subscription_id unless subscription_id.nil? + command.params['token'] = token unless token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Checks whether a user's subscription purchase is valid and returns its expiry + # time. + # @param [String] package_name + # The package name of the application for which this subscription was purchased ( + # for example, 'com.some.thing'). + # @param [String] subscription_id + # The purchased subscription ID (for example, 'monthly001'). + # @param [String] token + # The token provided to the user's device when the subscription was purchased. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AndroidpublisherV1::SubscriptionPurchase] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AndroidpublisherV1::SubscriptionPurchase] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_purchase(package_name, subscription_id, token, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{packageName}/subscriptions/{subscriptionId}/purchases/{token}', options) + command.response_representation = Google::Apis::AndroidpublisherV1::SubscriptionPurchase::Representation + command.response_class = Google::Apis::AndroidpublisherV1::SubscriptionPurchase + command.params['packageName'] = package_name unless package_name.nil? + command.params['subscriptionId'] = subscription_id unless subscription_id.nil? + command.params['token'] = token unless token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/androidpublisher_v1_1.rb b/generated/google/apis/androidpublisher_v1_1.rb new file mode 100644 index 000000000..dec77929a --- /dev/null +++ b/generated/google/apis/androidpublisher_v1_1.rb @@ -0,0 +1,34 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/androidpublisher_v1_1/service.rb' +require 'google/apis/androidpublisher_v1_1/classes.rb' +require 'google/apis/androidpublisher_v1_1/representations.rb' + +module Google + module Apis + # Google Play Developer API + # + # Lets Android application developers access their Google Play accounts. + # + # @see https://developers.google.com/android-publisher + module AndroidpublisherV1_1 + VERSION = 'V1_1' + REVISION = '20170808' + + # View and manage your Google Play Developer account + AUTH_ANDROIDPUBLISHER = 'https://www.googleapis.com/auth/androidpublisher' + end + end +end diff --git a/generated/google/apis/androidpublisher_v1_1/classes.rb b/generated/google/apis/androidpublisher_v1_1/classes.rb new file mode 100644 index 000000000..087580d8f --- /dev/null +++ b/generated/google/apis/androidpublisher_v1_1/classes.rb @@ -0,0 +1,123 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AndroidpublisherV1_1 + + # An InappPurchase resource indicates the status of a user's inapp product + # purchase. + class InappPurchase + include Google::Apis::Core::Hashable + + # The consumption state of the inapp product. Possible values are: + # - Yet to be consumed + # - Consumed + # Corresponds to the JSON property `consumptionState` + # @return [Fixnum] + attr_accessor :consumption_state + + # A developer-specified string that contains supplemental information about an + # order. + # Corresponds to the JSON property `developerPayload` + # @return [String] + attr_accessor :developer_payload + + # This kind represents an inappPurchase object in the androidpublisher service. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The order id associated with the purchase of the inapp product. + # Corresponds to the JSON property `orderId` + # @return [String] + attr_accessor :order_id + + # The purchase state of the order. Possible values are: + # - Purchased + # - Cancelled + # Corresponds to the JSON property `purchaseState` + # @return [Fixnum] + attr_accessor :purchase_state + + # The time the product was purchased, in milliseconds since the epoch (Jan 1, + # 1970). + # Corresponds to the JSON property `purchaseTime` + # @return [Fixnum] + attr_accessor :purchase_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @consumption_state = args[:consumption_state] if args.key?(:consumption_state) + @developer_payload = args[:developer_payload] if args.key?(:developer_payload) + @kind = args[:kind] if args.key?(:kind) + @order_id = args[:order_id] if args.key?(:order_id) + @purchase_state = args[:purchase_state] if args.key?(:purchase_state) + @purchase_time = args[:purchase_time] if args.key?(:purchase_time) + end + end + + # A SubscriptionPurchase resource indicates the status of a user's subscription + # purchase. + class SubscriptionPurchase + include Google::Apis::Core::Hashable + + # Whether the subscription will automatically be renewed when it reaches its + # current expiry time. + # Corresponds to the JSON property `autoRenewing` + # @return [Boolean] + attr_accessor :auto_renewing + alias_method :auto_renewing?, :auto_renewing + + # Time at which the subscription was granted, in milliseconds since the Epoch. + # Corresponds to the JSON property `initiationTimestampMsec` + # @return [Fixnum] + attr_accessor :initiation_timestamp_msec + + # This kind represents a subscriptionPurchase object in the androidpublisher + # service. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Time at which the subscription will expire, in milliseconds since the Epoch. + # Corresponds to the JSON property `validUntilTimestampMsec` + # @return [Fixnum] + attr_accessor :valid_until_timestamp_msec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_renewing = args[:auto_renewing] if args.key?(:auto_renewing) + @initiation_timestamp_msec = args[:initiation_timestamp_msec] if args.key?(:initiation_timestamp_msec) + @kind = args[:kind] if args.key?(:kind) + @valid_until_timestamp_msec = args[:valid_until_timestamp_msec] if args.key?(:valid_until_timestamp_msec) + end + end + end + end +end diff --git a/generated/google/apis/androidpublisher_v1_1/representations.rb b/generated/google/apis/androidpublisher_v1_1/representations.rb new file mode 100644 index 000000000..c7d3819ab --- /dev/null +++ b/generated/google/apis/androidpublisher_v1_1/representations.rb @@ -0,0 +1,60 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AndroidpublisherV1_1 + + class InappPurchase + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubscriptionPurchase + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InappPurchase + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :consumption_state, as: 'consumptionState' + property :developer_payload, as: 'developerPayload' + property :kind, as: 'kind' + property :order_id, as: 'orderId' + property :purchase_state, as: 'purchaseState' + property :purchase_time, :numeric_string => true, as: 'purchaseTime' + end + end + + class SubscriptionPurchase + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_renewing, as: 'autoRenewing' + property :initiation_timestamp_msec, :numeric_string => true, as: 'initiationTimestampMsec' + property :kind, as: 'kind' + property :valid_until_timestamp_msec, :numeric_string => true, as: 'validUntilTimestampMsec' + end + end + end + end +end diff --git a/generated/google/apis/androidpublisher_v1_1/service.rb b/generated/google/apis/androidpublisher_v1_1/service.rb new file mode 100644 index 000000000..54ede6f8b --- /dev/null +++ b/generated/google/apis/androidpublisher_v1_1/service.rb @@ -0,0 +1,192 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AndroidpublisherV1_1 + # Google Play Developer API + # + # Lets Android application developers access their Google Play accounts. + # + # @example + # require 'google/apis/androidpublisher_v1_1' + # + # Androidpublisher = Google::Apis::AndroidpublisherV1_1 # Alias the module + # service = Androidpublisher::AndroidPublisherService.new + # + # @see https://developers.google.com/android-publisher + class AndroidPublisherService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'androidpublisher/v1.1/applications/') + @batch_path = 'batch' + end + + # Checks the purchase and consumption status of an inapp item. + # @param [String] package_name + # The package name of the application the inapp product was sold in (for example, + # 'com.some.thing'). + # @param [String] product_id + # The inapp product SKU (for example, 'com.some.thing.inapp1'). + # @param [String] token + # The token provided to the user's device when the inapp product was purchased. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AndroidpublisherV1_1::InappPurchase] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AndroidpublisherV1_1::InappPurchase] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_inapppurchase(package_name, product_id, token, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{packageName}/inapp/{productId}/purchases/{token}', options) + command.response_representation = Google::Apis::AndroidpublisherV1_1::InappPurchase::Representation + command.response_class = Google::Apis::AndroidpublisherV1_1::InappPurchase + command.params['packageName'] = package_name unless package_name.nil? + command.params['productId'] = product_id unless product_id.nil? + command.params['token'] = token unless token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Cancels a user's subscription purchase. The subscription remains valid until + # its expiration time. + # @param [String] package_name + # The package name of the application for which this subscription was purchased ( + # for example, 'com.some.thing'). + # @param [String] subscription_id + # The purchased subscription ID (for example, 'monthly001'). + # @param [String] token + # The token provided to the user's device when the subscription was purchased. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_purchase(package_name, subscription_id, token, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{packageName}/subscriptions/{subscriptionId}/purchases/{token}/cancel', options) + command.params['packageName'] = package_name unless package_name.nil? + command.params['subscriptionId'] = subscription_id unless subscription_id.nil? + command.params['token'] = token unless token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Checks whether a user's subscription purchase is valid and returns its expiry + # time. + # @param [String] package_name + # The package name of the application for which this subscription was purchased ( + # for example, 'com.some.thing'). + # @param [String] subscription_id + # The purchased subscription ID (for example, 'monthly001'). + # @param [String] token + # The token provided to the user's device when the subscription was purchased. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AndroidpublisherV1_1::SubscriptionPurchase] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AndroidpublisherV1_1::SubscriptionPurchase] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_purchase(package_name, subscription_id, token, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{packageName}/subscriptions/{subscriptionId}/purchases/{token}', options) + command.response_representation = Google::Apis::AndroidpublisherV1_1::SubscriptionPurchase::Representation + command.response_class = Google::Apis::AndroidpublisherV1_1::SubscriptionPurchase + command.params['packageName'] = package_name unless package_name.nil? + command.params['subscriptionId'] = subscription_id unless subscription_id.nil? + command.params['token'] = token unless token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1alpha.rb b/generated/google/apis/appengine_v1alpha.rb new file mode 100644 index 000000000..d0d0e0676 --- /dev/null +++ b/generated/google/apis/appengine_v1alpha.rb @@ -0,0 +1,41 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/appengine_v1alpha/service.rb' +require 'google/apis/appengine_v1alpha/classes.rb' +require 'google/apis/appengine_v1alpha/representations.rb' + +module Google + module Apis + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + module AppengineV1alpha + VERSION = 'V1alpha' + REVISION = '20170714' + + # View and manage your applications deployed on Google App Engine + AUTH_APPENGINE_ADMIN = 'https://www.googleapis.com/auth/appengine.admin' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + end + end +end diff --git a/generated/google/apis/appengine_v1alpha/classes.rb b/generated/google/apis/appengine_v1alpha/classes.rb new file mode 100644 index 000000000..702a842d2 --- /dev/null +++ b/generated/google/apis/appengine_v1alpha/classes.rb @@ -0,0 +1,987 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1alpha + + # An SSL certificate that a user has been authorized to administer. A user is + # authorized to administer any certificate that applies to one of their + # authorized domains. + class AuthorizedCertificate + include Google::Apis::Core::Hashable + + # An SSL certificate obtained from a certificate authority. + # Corresponds to the JSON property `certificateRawData` + # @return [Google::Apis::AppengineV1alpha::CertificateRawData] + attr_accessor :certificate_raw_data + + # The user-specified display name of the certificate. This is not guaranteed to + # be unique. Example: My Certificate. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Aggregate count of the domain mappings with this certificate mapped. This + # count includes domain mappings on applications for which the user does not + # have VIEWER permissions.Only returned by GET or LIST requests when + # specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly + # Corresponds to the JSON property `domainMappingsCount` + # @return [Fixnum] + attr_accessor :domain_mappings_count + + # Topmost applicable domains of this certificate. This certificate applies to + # these domains and their subdomains. Example: example.com.@OutputOnly + # Corresponds to the JSON property `domainNames` + # @return [Array] + attr_accessor :domain_names + + # The time when this certificate expires. To update the renewal time on this + # certificate, upload an SSL certificate with a different expiration time using + # AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly + # Corresponds to the JSON property `expireTime` + # @return [String] + attr_accessor :expire_time + + # Relative name of the certificate. This is a unique value autogenerated on + # AuthorizedCertificate resource creation. Example: 12345.@OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A certificate managed by App Engine. + # Corresponds to the JSON property `managedCertificate` + # @return [Google::Apis::AppengineV1alpha::ManagedCertificate] + attr_accessor :managed_certificate + + # Full path to the AuthorizedCertificate resource in the API. Example: apps/ + # myapp/authorizedCertificates/12345.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The full paths to user visible Domain Mapping resources that have this + # certificate mapped. Example: apps/myapp/domainMappings/example.com.This may + # not represent the full list of mapped domain mappings if the user does not + # have VIEWER permissions on all of the applications that have this certificate + # mapped. See domain_mappings_count for a complete count.Only returned by GET or + # LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@ + # OutputOnly + # Corresponds to the JSON property `visibleDomainMappings` + # @return [Array] + attr_accessor :visible_domain_mappings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @certificate_raw_data = args[:certificate_raw_data] if args.key?(:certificate_raw_data) + @display_name = args[:display_name] if args.key?(:display_name) + @domain_mappings_count = args[:domain_mappings_count] if args.key?(:domain_mappings_count) + @domain_names = args[:domain_names] if args.key?(:domain_names) + @expire_time = args[:expire_time] if args.key?(:expire_time) + @id = args[:id] if args.key?(:id) + @managed_certificate = args[:managed_certificate] if args.key?(:managed_certificate) + @name = args[:name] if args.key?(:name) + @visible_domain_mappings = args[:visible_domain_mappings] if args.key?(:visible_domain_mappings) + end + end + + # A domain that a user has been authorized to administer. To authorize use of a + # domain, verify ownership via Webmaster Central (https://www.google.com/ + # webmasters/verification/home). + class AuthorizedDomain + include Google::Apis::Core::Hashable + + # Fully qualified domain name of the domain authorized for use. Example: example. + # com. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/ + # authorizedDomains/example.com.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + end + end + + # An SSL certificate obtained from a certificate authority. + class CertificateRawData + include Google::Apis::Core::Hashable + + # Unencrypted PEM encoded RSA private key. This field is set once on certificate + # creation and then encrypted. The key size must be 2048 bits or fewer. Must + # include the header and footer. Example:
 -----BEGIN RSA PRIVATE KEY----- <
+        # unencrypted_key_value> -----END RSA PRIVATE KEY----- 
@InputOnly + # Corresponds to the JSON property `privateKey` + # @return [String] + attr_accessor :private_key + + # PEM encoded x.509 public key certificate. This field is set once on + # certificate creation. Must include the header and footer. Example:
 -----
+        # BEGIN CERTIFICATE-----  -----END CERTIFICATE----- 
+ # Corresponds to the JSON property `publicCertificate` + # @return [String] + attr_accessor :public_certificate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @private_key = args[:private_key] if args.key?(:private_key) + @public_certificate = args[:public_certificate] if args.key?(:public_certificate) + end + end + + # A domain serving an App Engine application. + class DomainMapping + include Google::Apis::Core::Hashable + + # Relative name of the domain serving the application. Example: example.com. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the DomainMapping resource in the API. Example: apps/myapp/ + # domainMapping/example.com.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The resource records required to configure this domain mapping. These records + # must be added to the domain's DNS configuration in order to serve the + # application via this domain mapping.@OutputOnly + # Corresponds to the JSON property `resourceRecords` + # @return [Array] + attr_accessor :resource_records + + # SSL configuration for a DomainMapping resource. + # Corresponds to the JSON property `sslSettings` + # @return [Google::Apis::AppengineV1alpha::SslSettings] + attr_accessor :ssl_settings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + @resource_records = args[:resource_records] if args.key?(:resource_records) + @ssl_settings = args[:ssl_settings] if args.key?(:ssl_settings) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated empty + # messages in your APIs. A typical example is to use it as the request or the + # response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for Empty is empty JSON object ``. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Response message for AuthorizedCertificates.ListAuthorizedCertificates. + class ListAuthorizedCertificatesResponse + include Google::Apis::Core::Hashable + + # The SSL certificates the user is authorized to administer. + # Corresponds to the JSON property `certificates` + # @return [Array] + attr_accessor :certificates + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @certificates = args[:certificates] if args.key?(:certificates) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for AuthorizedDomains.ListAuthorizedDomains. + class ListAuthorizedDomainsResponse + include Google::Apis::Core::Hashable + + # The authorized domains belonging to the user. + # Corresponds to the JSON property `domains` + # @return [Array] + attr_accessor :domains + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domains = args[:domains] if args.key?(:domains) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for DomainMappings.ListDomainMappings. + class ListDomainMappingsResponse + include Google::Apis::Core::Hashable + + # The domain mappings for the application. + # Corresponds to the JSON property `domainMappings` + # @return [Array] + attr_accessor :domain_mappings + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domain_mappings = args[:domain_mappings] if args.key?(:domain_mappings) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Locations.ListLocations. + class ListLocationsResponse + include Google::Apis::Core::Hashable + + # A list of locations that matches the specified filter in the request. + # Corresponds to the JSON property `locations` + # @return [Array] + attr_accessor :locations + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locations = args[:locations] if args.key?(:locations) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # A resource that represents Google Cloud Platform location. + class Location + include Google::Apis::Core::Hashable + + # Cross-service attributes for the location. For example + # `"cloud.googleapis.com/region": "us-east1"` + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The canonical id for this location. For example: "us-east1". + # Corresponds to the JSON property `locationId` + # @return [String] + attr_accessor :location_id + + # Service-specific metadata. For example the available capacity at the given + # location. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Resource name for the location, which may vary between implementations. For + # example: "projects/example-project/locations/us-east1" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @location_id = args[:location_id] if args.key?(:location_id) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + end + end + + # Metadata for the given google.cloud.location.Location. + class LocationMetadata + include Google::Apis::Core::Hashable + + # App Engine Flexible Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `flexibleEnvironmentAvailable` + # @return [Boolean] + attr_accessor :flexible_environment_available + alias_method :flexible_environment_available?, :flexible_environment_available + + # App Engine Standard Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `standardEnvironmentAvailable` + # @return [Boolean] + attr_accessor :standard_environment_available + alias_method :standard_environment_available?, :standard_environment_available + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @flexible_environment_available = args[:flexible_environment_available] if args.key?(:flexible_environment_available) + @standard_environment_available = args[:standard_environment_available] if args.key?(:standard_environment_available) + end + end + + # A certificate managed by App Engine. + class ManagedCertificate + include Google::Apis::Core::Hashable + + # Time at which the certificate was last renewed. The renewal process is fully + # managed. Certificate renewal will automatically occur before the certificate + # expires. Renewal errors can be tracked via ManagementStatus.@OutputOnly + # Corresponds to the JSON property `lastRenewalTime` + # @return [String] + attr_accessor :last_renewal_time + + # Status of certificate management. Refers to the most recent certificate + # acquisition or renewal attempt.@OutputOnly + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @last_renewal_time = args[:last_renewal_time] if args.key?(:last_renewal_time) + @status = args[:status] if args.key?(:status) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::AppengineV1alpha::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadata + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta4. + # Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Type of this operation. Deprecated, use method field instead. Example: " + # create_version".@OutputOnly + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # modules/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataExperimental + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine. + # experimental.CustomDomains.CreateCustomDomain.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # customDomains/example.com.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1 + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Alpha + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1alpha. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta5 + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method name that initiated this operation. Example: google.appengine. + # v1beta5.Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # A DNS resource record. + class ResourceRecord + include Google::Apis::Core::Hashable + + # Relative name of the object affected by this record. Only applicable for CNAME + # records. Example: 'www'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Data for this record. Values vary by record type, as defined in RFC 1035 ( + # section 5) and RFC 1034 (section 3.6.1). + # Corresponds to the JSON property `rrdata` + # @return [String] + attr_accessor :rrdata + + # Resource record type. Example: AAAA. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @rrdata = args[:rrdata] if args.key?(:rrdata) + @type = args[:type] if args.key?(:type) + end + end + + # SSL configuration for a DomainMapping resource. + class SslSettings + include Google::Apis::Core::Hashable + + # ID of the AuthorizedCertificate resource configuring SSL for the application. + # Clearing this field will remove SSL support.By default, a managed certificate + # is automatically created for every domain mapping. To omit SSL support or to + # configure SSL manually, specify no_managed_certificate on a CREATE or UPDATE + # request. You must be authorized to administer the AuthorizedCertificate + # resource to manually map it to a DomainMapping resource. Example: 12345. + # Corresponds to the JSON property `certificateId` + # @return [String] + attr_accessor :certificate_id + + # Whether the mapped certificate is an App Engine managed certificate. Managed + # certificates are created by default with a domain mapping. To opt out, specify + # no_managed_certificate on a CREATE or UPDATE request.@OutputOnly + # Corresponds to the JSON property `isManagedCertificate` + # @return [Boolean] + attr_accessor :is_managed_certificate + alias_method :is_managed_certificate?, :is_managed_certificate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @certificate_id = args[:certificate_id] if args.key?(:certificate_id) + @is_managed_certificate = args[:is_managed_certificate] if args.key?(:is_managed_certificate) + end + end + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1alpha/representations.rb b/generated/google/apis/appengine_v1alpha/representations.rb new file mode 100644 index 000000000..104fb6d8b --- /dev/null +++ b/generated/google/apis/appengine_v1alpha/representations.rb @@ -0,0 +1,397 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1alpha + + class AuthorizedCertificate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizedDomain + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CertificateRawData + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DomainMapping + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListAuthorizedCertificatesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListAuthorizedDomainsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListDomainMappingsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListLocationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Location + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LocationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedCertificate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataExperimental + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Alpha + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta5 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceRecord + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizedCertificate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :certificate_raw_data, as: 'certificateRawData', class: Google::Apis::AppengineV1alpha::CertificateRawData, decorator: Google::Apis::AppengineV1alpha::CertificateRawData::Representation + + property :display_name, as: 'displayName' + property :domain_mappings_count, as: 'domainMappingsCount' + collection :domain_names, as: 'domainNames' + property :expire_time, as: 'expireTime' + property :id, as: 'id' + property :managed_certificate, as: 'managedCertificate', class: Google::Apis::AppengineV1alpha::ManagedCertificate, decorator: Google::Apis::AppengineV1alpha::ManagedCertificate::Representation + + property :name, as: 'name' + collection :visible_domain_mappings, as: 'visibleDomainMappings' + end + end + + class AuthorizedDomain + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :name, as: 'name' + end + end + + class CertificateRawData + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :private_key, as: 'privateKey' + property :public_certificate, as: 'publicCertificate' + end + end + + class DomainMapping + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :name, as: 'name' + collection :resource_records, as: 'resourceRecords', class: Google::Apis::AppengineV1alpha::ResourceRecord, decorator: Google::Apis::AppengineV1alpha::ResourceRecord::Representation + + property :ssl_settings, as: 'sslSettings', class: Google::Apis::AppengineV1alpha::SslSettings, decorator: Google::Apis::AppengineV1alpha::SslSettings::Representation + + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ListAuthorizedCertificatesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :certificates, as: 'certificates', class: Google::Apis::AppengineV1alpha::AuthorizedCertificate, decorator: Google::Apis::AppengineV1alpha::AuthorizedCertificate::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListAuthorizedDomainsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :domains, as: 'domains', class: Google::Apis::AppengineV1alpha::AuthorizedDomain, decorator: Google::Apis::AppengineV1alpha::AuthorizedDomain::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListDomainMappingsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :domain_mappings, as: 'domainMappings', class: Google::Apis::AppengineV1alpha::DomainMapping, decorator: Google::Apis::AppengineV1alpha::DomainMapping::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListLocationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :locations, as: 'locations', class: Google::Apis::AppengineV1alpha::Location, decorator: Google::Apis::AppengineV1alpha::Location::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::AppengineV1alpha::Operation, decorator: Google::Apis::AppengineV1alpha::Operation::Representation + + end + end + + class Location + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + property :location_id, as: 'locationId' + hash :metadata, as: 'metadata' + property :name, as: 'name' + end + end + + class LocationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :flexible_environment_available, as: 'flexibleEnvironmentAvailable' + property :standard_environment_available, as: 'standardEnvironmentAvailable' + end + end + + class ManagedCertificate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :last_renewal_time, as: 'lastRenewalTime' + property :status, as: 'status' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::AppengineV1alpha::Status, decorator: Google::Apis::AppengineV1alpha::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :operation_type, as: 'operationType' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataExperimental + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataV1 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Alpha + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta5 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class ResourceRecord + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :rrdata, as: 'rrdata' + property :type, as: 'type' + end + end + + class SslSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :certificate_id, as: 'certificateId' + property :is_managed_certificate, as: 'isManagedCertificate' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1alpha/service.rb b/generated/google/apis/appengine_v1alpha/service.rb new file mode 100644 index 000000000..e06e98731 --- /dev/null +++ b/generated/google/apis/appengine_v1alpha/service.rb @@ -0,0 +1,631 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1alpha + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @example + # require 'google/apis/appengine_v1alpha' + # + # Appengine = Google::Apis::AppengineV1alpha # Alias the module + # service = Appengine::AppengineService.new + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + class AppengineService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://appengine.googleapis.com/', '') + @batch_path = 'batch' + end + + # Uploads the specified SSL certificate. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Google::Apis::AppengineV1alpha::AuthorizedCertificate] authorized_certificate_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::AuthorizedCertificate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::AuthorizedCertificate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_authorized_certificate(apps_id, authorized_certificate_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1alpha/apps/{appsId}/authorizedCertificates', options) + command.request_representation = Google::Apis::AppengineV1alpha::AuthorizedCertificate::Representation + command.request_object = authorized_certificate_object + command.response_representation = Google::Apis::AppengineV1alpha::AuthorizedCertificate::Representation + command.response_class = Google::Apis::AppengineV1alpha::AuthorizedCertificate + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified SSL certificate. + # @param [String] apps_id + # Part of `name`. Name of the resource to delete. Example: apps/myapp/ + # authorizedCertificates/12345. + # @param [String] authorized_certificates_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_authorized_certificate(apps_id, authorized_certificates_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}', options) + command.response_representation = Google::Apis::AppengineV1alpha::Empty::Representation + command.response_class = Google::Apis::AppengineV1alpha::Empty + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['authorizedCertificatesId'] = authorized_certificates_id unless authorized_certificates_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified SSL certificate. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/ + # authorizedCertificates/12345. + # @param [String] authorized_certificates_id + # Part of `name`. See documentation of `appsId`. + # @param [String] view + # Controls the set of fields returned in the GET response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::AuthorizedCertificate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::AuthorizedCertificate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_authorized_certificate(apps_id, authorized_certificates_id, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}', options) + command.response_representation = Google::Apis::AppengineV1alpha::AuthorizedCertificate::Representation + command.response_class = Google::Apis::AppengineV1alpha::AuthorizedCertificate + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['authorizedCertificatesId'] = authorized_certificates_id unless authorized_certificates_id.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all SSL certificates the user is authorized to administer. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] view + # Controls the set of fields returned in the LIST response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::ListAuthorizedCertificatesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::ListAuthorizedCertificatesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_authorized_certificates(apps_id, page_size: nil, page_token: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/authorizedCertificates', options) + command.response_representation = Google::Apis::AppengineV1alpha::ListAuthorizedCertificatesResponse::Representation + command.response_class = Google::Apis::AppengineV1alpha::ListAuthorizedCertificatesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified SSL certificate. To renew a certificate and maintain its + # existing domain mappings, update certificate_data with a new certificate. The + # new certificate must be applicable to the same domains as the original + # certificate. The certificate display_name may also be updated. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/ + # authorizedCertificates/12345. + # @param [String] authorized_certificates_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1alpha::AuthorizedCertificate] authorized_certificate_object + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. Updates are only + # supported on the certificate_raw_data and display_name fields. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::AuthorizedCertificate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::AuthorizedCertificate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_authorized_certificate(apps_id, authorized_certificates_id, authorized_certificate_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}', options) + command.request_representation = Google::Apis::AppengineV1alpha::AuthorizedCertificate::Representation + command.request_object = authorized_certificate_object + command.response_representation = Google::Apis::AppengineV1alpha::AuthorizedCertificate::Representation + command.response_class = Google::Apis::AppengineV1alpha::AuthorizedCertificate + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['authorizedCertificatesId'] = authorized_certificates_id unless authorized_certificates_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all domains the user is authorized to administer. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::ListAuthorizedDomainsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::ListAuthorizedDomainsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_authorized_domains(apps_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/authorizedDomains', options) + command.response_representation = Google::Apis::AppengineV1alpha::ListAuthorizedDomainsResponse::Representation + command.response_class = Google::Apis::AppengineV1alpha::ListAuthorizedDomainsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Maps a domain to an application. A user must be authorized to administer a + # domain in order to map it to an application. For a list of available + # authorized domains, see AuthorizedDomains.ListAuthorizedDomains. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Google::Apis::AppengineV1alpha::DomainMapping] domain_mapping_object + # @param [Boolean] no_managed_certificate + # Whether a managed certificate should be provided by App Engine. If true, a + # certificate ID must be manaually set in the DomainMapping resource to + # configure SSL for this domain. If false, a managed certificate will be + # provisioned and a certificate ID will be automatically populated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_domain_mapping(apps_id, domain_mapping_object = nil, no_managed_certificate: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1alpha/apps/{appsId}/domainMappings', options) + command.request_representation = Google::Apis::AppengineV1alpha::DomainMapping::Representation + command.request_object = domain_mapping_object + command.response_representation = Google::Apis::AppengineV1alpha::Operation::Representation + command.response_class = Google::Apis::AppengineV1alpha::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['noManagedCertificate'] = no_managed_certificate unless no_managed_certificate.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified domain mapping. A user must be authorized to administer + # the associated domain in order to delete a DomainMapping resource. + # @param [String] apps_id + # Part of `name`. Name of the resource to delete. Example: apps/myapp/ + # domainMappings/example.com. + # @param [String] domain_mappings_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_domain_mapping(apps_id, domain_mappings_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}', options) + command.response_representation = Google::Apis::AppengineV1alpha::Operation::Representation + command.response_class = Google::Apis::AppengineV1alpha::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['domainMappingsId'] = domain_mappings_id unless domain_mappings_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified domain mapping. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/ + # domainMappings/example.com. + # @param [String] domain_mappings_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::DomainMapping] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::DomainMapping] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_domain_mapping(apps_id, domain_mappings_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}', options) + command.response_representation = Google::Apis::AppengineV1alpha::DomainMapping::Representation + command.response_class = Google::Apis::AppengineV1alpha::DomainMapping + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['domainMappingsId'] = domain_mappings_id unless domain_mappings_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the domain mappings on an application. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::ListDomainMappingsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::ListDomainMappingsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_domain_mappings(apps_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/domainMappings', options) + command.response_representation = Google::Apis::AppengineV1alpha::ListDomainMappingsResponse::Representation + command.response_class = Google::Apis::AppengineV1alpha::ListDomainMappingsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified domain mapping. To map an SSL certificate to a domain + # mapping, update certificate_id to point to an AuthorizedCertificate resource. + # A user must be authorized to administer the associated domain in order to + # update a DomainMapping resource. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/ + # domainMappings/example.com. + # @param [String] domain_mappings_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1alpha::DomainMapping] domain_mapping_object + # @param [Boolean] no_managed_certificate + # Whether a managed certificate should be provided by App Engine. If true, a + # certificate ID must be manually set in the DomainMapping resource to configure + # SSL for this domain. If false, a managed certificate will be provisioned and a + # certificate ID will be automatically populated. Only applicable if + # ssl_settings.certificate_id is specified in the update mask. + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_domain_mapping(apps_id, domain_mappings_id, domain_mapping_object = nil, no_managed_certificate: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}', options) + command.request_representation = Google::Apis::AppengineV1alpha::DomainMapping::Representation + command.request_object = domain_mapping_object + command.response_representation = Google::Apis::AppengineV1alpha::Operation::Representation + command.response_class = Google::Apis::AppengineV1alpha::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['domainMappingsId'] = domain_mappings_id unless domain_mappings_id.nil? + command.query['noManagedCertificate'] = no_managed_certificate unless no_managed_certificate.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get information about a location. + # @param [String] apps_id + # Part of `name`. Resource name for the location. + # @param [String] locations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::Location] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::Location] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_location(apps_id, locations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/locations/{locationsId}', options) + command.response_representation = Google::Apis::AppengineV1alpha::Location::Representation + command.response_class = Google::Apis::AppengineV1alpha::Location + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['locationsId'] = locations_id unless locations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists information about the supported locations for this service. + # @param [String] apps_id + # Part of `name`. The resource that owns the locations collection, if applicable. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::ListLocationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::ListLocationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_locations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/locations', options) + command.response_representation = Google::Apis::AppengineV1alpha::ListLocationsResponse::Representation + command.response_class = Google::Apis::AppengineV1alpha::ListLocationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. The name of the operation resource. + # @param [String] operations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_operation(apps_id, operations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/operations/{operationsId}', options) + command.response_representation = Google::Apis::AppengineV1alpha::Operation::Representation + command.response_class = Google::Apis::AppengineV1alpha::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['operationsId'] = operations_id unless operations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the server + # doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding + # allows API services to override the binding to use different resource name + # schemes, such as users/*/operations. To override the binding, API services can + # add a binding such as "/v1/`name=users/*`/operations" to their service + # configuration. For backwards compatibility, the default name includes the + # operations collection id, however overriding users must ensure the name + # binding is the parent resource, without the operations collection id. + # @param [String] apps_id + # Part of `name`. The name of the operation's parent resource. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1alpha::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1alpha::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_operations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha/apps/{appsId}/operations', options) + command.response_representation = Google::Apis::AppengineV1alpha::ListOperationsResponse::Representation + command.response_class = Google::Apis::AppengineV1alpha::ListOperationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta.rb b/generated/google/apis/appengine_v1beta.rb new file mode 100644 index 000000000..5a4f4a31c --- /dev/null +++ b/generated/google/apis/appengine_v1beta.rb @@ -0,0 +1,41 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/appengine_v1beta/service.rb' +require 'google/apis/appengine_v1beta/classes.rb' +require 'google/apis/appengine_v1beta/representations.rb' + +module Google + module Apis + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + module AppengineV1beta + VERSION = 'V1beta' + REVISION = '20170818' + + # View and manage your applications deployed on Google App Engine + AUTH_APPENGINE_ADMIN = 'https://www.googleapis.com/auth/appengine.admin' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + end + end +end diff --git a/generated/google/apis/appengine_v1beta/classes.rb b/generated/google/apis/appengine_v1beta/classes.rb new file mode 100644 index 000000000..19072aea2 --- /dev/null +++ b/generated/google/apis/appengine_v1beta/classes.rb @@ -0,0 +1,2876 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta + + # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/ + # endpoints/) configuration for API handlers. + class ApiConfigHandler + include Google::Apis::Core::Hashable + + # Action to take when users access resources that require authentication. + # Defaults to redirect. + # Corresponds to the JSON property `authFailAction` + # @return [String] + attr_accessor :auth_fail_action + + # Level of login required to access this resource. Defaults to optional. + # Corresponds to the JSON property `login` + # @return [String] + attr_accessor :login + + # Path to the script from the application root directory. + # Corresponds to the JSON property `script` + # @return [String] + attr_accessor :script + + # Security (HTTPS) enforcement for this URL. + # Corresponds to the JSON property `securityLevel` + # @return [String] + attr_accessor :security_level + + # URL to serve the endpoint at. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action) + @login = args[:login] if args.key?(:login) + @script = args[:script] if args.key?(:script) + @security_level = args[:security_level] if args.key?(:security_level) + @url = args[:url] if args.key?(:url) + end + end + + # Uses Google Cloud Endpoints to handle requests. + class ApiEndpointHandler + include Google::Apis::Core::Hashable + + # Path to the script from the application root directory. + # Corresponds to the JSON property `scriptPath` + # @return [String] + attr_accessor :script_path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @script_path = args[:script_path] if args.key?(:script_path) + end + end + + # An Application resource contains the top-level configuration of an App Engine + # application. Next tag: 20 + class Application + include Google::Apis::Core::Hashable + + # Google Apps authentication domain that controls which users can access this + # application.Defaults to open access for any Google Account. + # Corresponds to the JSON property `authDomain` + # @return [String] + attr_accessor :auth_domain + + # 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 + # Corresponds to the JSON property `codeBucket` + # @return [String] + attr_accessor :code_bucket + + # Google Cloud Storage bucket that can be used by this application to store + # content.@OutputOnly + # Corresponds to the JSON property `defaultBucket` + # @return [String] + attr_accessor :default_bucket + + # Cookie expiration policy for this application. + # Corresponds to the JSON property `defaultCookieExpiration` + # @return [String] + attr_accessor :default_cookie_expiration + + # Hostname used to reach this application, as resolved by App Engine.@OutputOnly + # Corresponds to the JSON property `defaultHostname` + # @return [String] + attr_accessor :default_hostname + + # HTTP path dispatch rules for requests to the application that do not + # explicitly target a service or version. Rules are order-dependent. Up to 20 + # dispatch rules can be supported.@OutputOnly + # Corresponds to the JSON property `dispatchRules` + # @return [Array] + attr_accessor :dispatch_rules + + # The feature specific settings to be used in the application. These define + # behaviors that are user configurable. + # Corresponds to the JSON property `featureSettings` + # @return [Google::Apis::AppengineV1beta::FeatureSettings] + attr_accessor :feature_settings + + # The Google Container Registry domain used for storing managed build docker + # images for this application. + # Corresponds to the JSON property `gcrDomain` + # @return [String] + attr_accessor :gcr_domain + + # Identity-Aware Proxy + # Corresponds to the JSON property `iap` + # @return [Google::Apis::AppengineV1beta::IdentityAwareProxy] + attr_accessor :iap + + # 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. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Location from which this application will be run. Application instances will + # run out of data centers in the chosen location, which is also where all of the + # application's end user content is stored.Defaults to us-central.Options are:us- + # central - Central USeurope-west - Western Europeus-east1 - Eastern US + # Corresponds to the JSON property `locationId` + # @return [String] + attr_accessor :location_id + + # Full path to the Application resource in the API. Example: apps/myapp.@ + # OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Serving status of this application. + # Corresponds to the JSON property `servingStatus` + # @return [String] + attr_accessor :serving_status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auth_domain = args[:auth_domain] if args.key?(:auth_domain) + @code_bucket = args[:code_bucket] if args.key?(:code_bucket) + @default_bucket = args[:default_bucket] if args.key?(:default_bucket) + @default_cookie_expiration = args[:default_cookie_expiration] if args.key?(:default_cookie_expiration) + @default_hostname = args[:default_hostname] if args.key?(:default_hostname) + @dispatch_rules = args[:dispatch_rules] if args.key?(:dispatch_rules) + @feature_settings = args[:feature_settings] if args.key?(:feature_settings) + @gcr_domain = args[:gcr_domain] if args.key?(:gcr_domain) + @iap = args[:iap] if args.key?(:iap) + @id = args[:id] if args.key?(:id) + @location_id = args[:location_id] if args.key?(:location_id) + @name = args[:name] if args.key?(:name) + @serving_status = args[:serving_status] if args.key?(:serving_status) + end + end + + # An SSL certificate that a user has been authorized to administer. A user is + # authorized to administer any certificate that applies to one of their + # authorized domains. + class AuthorizedCertificate + include Google::Apis::Core::Hashable + + # An SSL certificate obtained from a certificate authority. + # Corresponds to the JSON property `certificateRawData` + # @return [Google::Apis::AppengineV1beta::CertificateRawData] + attr_accessor :certificate_raw_data + + # The user-specified display name of the certificate. This is not guaranteed to + # be unique. Example: My Certificate. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Aggregate count of the domain mappings with this certificate mapped. This + # count includes domain mappings on applications for which the user does not + # have VIEWER permissions.Only returned by GET or LIST requests when + # specifically requested by the view=FULL_CERTIFICATE option.@OutputOnly + # Corresponds to the JSON property `domainMappingsCount` + # @return [Fixnum] + attr_accessor :domain_mappings_count + + # Topmost applicable domains of this certificate. This certificate applies to + # these domains and their subdomains. Example: example.com.@OutputOnly + # Corresponds to the JSON property `domainNames` + # @return [Array] + attr_accessor :domain_names + + # The time when this certificate expires. To update the renewal time on this + # certificate, upload an SSL certificate with a different expiration time using + # AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly + # Corresponds to the JSON property `expireTime` + # @return [String] + attr_accessor :expire_time + + # Relative name of the certificate. This is a unique value autogenerated on + # AuthorizedCertificate resource creation. Example: 12345.@OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the AuthorizedCertificate resource in the API. Example: apps/ + # myapp/authorizedCertificates/12345.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The full paths to user visible Domain Mapping resources that have this + # certificate mapped. Example: apps/myapp/domainMappings/example.com.This may + # not represent the full list of mapped domain mappings if the user does not + # have VIEWER permissions on all of the applications that have this certificate + # mapped. See domain_mappings_count for a complete count.Only returned by GET or + # LIST requests when specifically requested by the view=FULL_CERTIFICATE option.@ + # OutputOnly + # Corresponds to the JSON property `visibleDomainMappings` + # @return [Array] + attr_accessor :visible_domain_mappings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @certificate_raw_data = args[:certificate_raw_data] if args.key?(:certificate_raw_data) + @display_name = args[:display_name] if args.key?(:display_name) + @domain_mappings_count = args[:domain_mappings_count] if args.key?(:domain_mappings_count) + @domain_names = args[:domain_names] if args.key?(:domain_names) + @expire_time = args[:expire_time] if args.key?(:expire_time) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + @visible_domain_mappings = args[:visible_domain_mappings] if args.key?(:visible_domain_mappings) + end + end + + # A domain that a user has been authorized to administer. To authorize use of a + # domain, verify ownership via Webmaster Central (https://www.google.com/ + # webmasters/verification/home). + class AuthorizedDomain + include Google::Apis::Core::Hashable + + # Fully qualified domain name of the domain authorized for use. Example: example. + # com. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/ + # authorizedDomains/example.com.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + end + end + + # Automatic scaling is based on request rate, response latencies, and other + # application metrics. + class AutomaticScaling + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `coolDownPeriod` + # @return [String] + attr_accessor :cool_down_period + + # Target scaling by CPU usage. + # Corresponds to the JSON property `cpuUtilization` + # @return [Google::Apis::AppengineV1beta::CpuUtilization] + attr_accessor :cpu_utilization + + # Target scaling by disk usage. Only applicable for VM runtimes. + # Corresponds to the JSON property `diskUtilization` + # @return [Google::Apis::AppengineV1beta::DiskUtilization] + attr_accessor :disk_utilization + + # Number of concurrent requests an automatic scaling instance can accept before + # the scheduler spawns a new instance.Defaults to a runtime-specific value. + # Corresponds to the JSON property `maxConcurrentRequests` + # @return [Fixnum] + attr_accessor :max_concurrent_requests + + # Maximum number of idle instances that should be maintained for this version. + # Corresponds to the JSON property `maxIdleInstances` + # @return [Fixnum] + attr_accessor :max_idle_instances + + # Maximum amount of time that a request should wait in the pending queue before + # starting a new instance to handle it. + # Corresponds to the JSON property `maxPendingLatency` + # @return [String] + attr_accessor :max_pending_latency + + # Maximum number of instances that should be started to handle requests. + # Corresponds to the JSON property `maxTotalInstances` + # @return [Fixnum] + attr_accessor :max_total_instances + + # Minimum number of idle instances that should be maintained for this version. + # Only applicable for the default version of a service. + # Corresponds to the JSON property `minIdleInstances` + # @return [Fixnum] + attr_accessor :min_idle_instances + + # Minimum amount of time a request should wait in the pending queue before + # starting a new instance to handle it. + # Corresponds to the JSON property `minPendingLatency` + # @return [String] + attr_accessor :min_pending_latency + + # Minimum number of instances that should be maintained for this version. + # Corresponds to the JSON property `minTotalInstances` + # @return [Fixnum] + attr_accessor :min_total_instances + + # Target scaling by network usage. Only applicable for VM runtimes. + # Corresponds to the JSON property `networkUtilization` + # @return [Google::Apis::AppengineV1beta::NetworkUtilization] + attr_accessor :network_utilization + + # Target scaling by request utilization. Only applicable for VM runtimes. + # Corresponds to the JSON property `requestUtilization` + # @return [Google::Apis::AppengineV1beta::RequestUtilization] + attr_accessor :request_utilization + + # Scheduler settings for standard environment. + # Corresponds to the JSON property `standardSchedulerSettings` + # @return [Google::Apis::AppengineV1beta::StandardSchedulerSettings] + attr_accessor :standard_scheduler_settings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cool_down_period = args[:cool_down_period] if args.key?(:cool_down_period) + @cpu_utilization = args[:cpu_utilization] if args.key?(:cpu_utilization) + @disk_utilization = args[:disk_utilization] if args.key?(:disk_utilization) + @max_concurrent_requests = args[:max_concurrent_requests] if args.key?(:max_concurrent_requests) + @max_idle_instances = args[:max_idle_instances] if args.key?(:max_idle_instances) + @max_pending_latency = args[:max_pending_latency] if args.key?(:max_pending_latency) + @max_total_instances = args[:max_total_instances] if args.key?(:max_total_instances) + @min_idle_instances = args[:min_idle_instances] if args.key?(:min_idle_instances) + @min_pending_latency = args[:min_pending_latency] if args.key?(:min_pending_latency) + @min_total_instances = args[:min_total_instances] if args.key?(:min_total_instances) + @network_utilization = args[:network_utilization] if args.key?(:network_utilization) + @request_utilization = args[:request_utilization] if args.key?(:request_utilization) + @standard_scheduler_settings = args[:standard_scheduler_settings] if args.key?(:standard_scheduler_settings) + end + end + + # 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. + class BasicScaling + include Google::Apis::Core::Hashable + + # Duration of time after the last request that an instance must wait before the + # instance is shut down. + # Corresponds to the JSON property `idleTimeout` + # @return [String] + attr_accessor :idle_timeout + + # Maximum number of instances to create for this version. + # Corresponds to the JSON property `maxInstances` + # @return [Fixnum] + attr_accessor :max_instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout) + @max_instances = args[:max_instances] if args.key?(:max_instances) + end + end + + # Request message for Firewall.BatchUpdateIngressRules. + class BatchUpdateIngressRulesRequest + include Google::Apis::Core::Hashable + + # A list of FirewallRules to replace the existing set. + # Corresponds to the JSON property `ingressRules` + # @return [Array] + attr_accessor :ingress_rules + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ingress_rules = args[:ingress_rules] if args.key?(:ingress_rules) + end + end + + # Response message for Firewall.UpdateAllIngressRules. + class BatchUpdateIngressRulesResponse + include Google::Apis::Core::Hashable + + # The full list of ingress FirewallRules for this application. + # Corresponds to the JSON property `ingressRules` + # @return [Array] + attr_accessor :ingress_rules + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ingress_rules = args[:ingress_rules] if args.key?(:ingress_rules) + end + end + + # Google Cloud Container Builder build information. + class BuildInfo + include Google::Apis::Core::Hashable + + # The Google Cloud Container Builder build id. Example: "f966068f-08b2-42c8-bdfe- + # 74137dff2bf9" + # Corresponds to the JSON property `cloudBuildId` + # @return [String] + attr_accessor :cloud_build_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cloud_build_id = args[:cloud_build_id] if args.key?(:cloud_build_id) + end + end + + # An SSL certificate obtained from a certificate authority. + class CertificateRawData + include Google::Apis::Core::Hashable + + # Unencrypted PEM encoded RSA private key. This field is set once on certificate + # creation and then encrypted. The key size must be 2048 bits or fewer. Must + # include the header and footer. Example:
 -----BEGIN RSA PRIVATE KEY----- <
+        # unencrypted_key_value> -----END RSA PRIVATE KEY----- 
@InputOnly + # Corresponds to the JSON property `privateKey` + # @return [String] + attr_accessor :private_key + + # PEM encoded x.509 public key certificate. This field is set once on + # certificate creation. Must include the header and footer. Example:
 -----
+        # BEGIN CERTIFICATE-----  -----END CERTIFICATE----- 
+ # Corresponds to the JSON property `publicCertificate` + # @return [String] + attr_accessor :public_certificate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @private_key = args[:private_key] if args.key?(:private_key) + @public_certificate = args[:public_certificate] if args.key?(:public_certificate) + end + end + + # Docker image that is used to create a container and start a VM instance for + # the version that you deploy. Only applicable for instances running in the App + # Engine flexible environment. + class ContainerInfo + include Google::Apis::Core::Hashable + + # URI to the hosted container image in Google Container Registry. The URI must + # be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/ + # image:tag" or "gcr.io/my-project/image@digest" + # Corresponds to the JSON property `image` + # @return [String] + attr_accessor :image + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @image = args[:image] if args.key?(:image) + end + end + + # Target scaling by CPU usage. + class CpuUtilization + include Google::Apis::Core::Hashable + + # Period of time over which CPU utilization is calculated. + # Corresponds to the JSON property `aggregationWindowLength` + # @return [String] + attr_accessor :aggregation_window_length + + # Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1. + # Corresponds to the JSON property `targetUtilization` + # @return [Float] + attr_accessor :target_utilization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @aggregation_window_length = args[:aggregation_window_length] if args.key?(:aggregation_window_length) + @target_utilization = args[:target_utilization] if args.key?(:target_utilization) + end + end + + # Request message for Instances.DebugInstance. + class DebugInstanceRequest + include Google::Apis::Core::Hashable + + # Public SSH key to add to the instance. Examples: + # [USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME] + # [USERNAME]:ssh-rsa [KEY_VALUE] google-ssh `"userName":"[USERNAME]","expireOn":" + # [EXPIRE_TIME]"`For more information, see Adding and Removing SSH Keys (https:// + # cloud.google.com/compute/docs/instances/adding-removing-ssh-keys). + # Corresponds to the JSON property `sshKey` + # @return [String] + attr_accessor :ssh_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ssh_key = args[:ssh_key] if args.key?(:ssh_key) + end + end + + # Code and application artifacts used to deploy a version to App Engine. + class Deployment + include Google::Apis::Core::Hashable + + # Google Cloud Container Builder build information. + # Corresponds to the JSON property `build` + # @return [Google::Apis::AppengineV1beta::BuildInfo] + attr_accessor :build + + # Docker image that is used to create a container and start a VM instance for + # the version that you deploy. Only applicable for instances running in the App + # Engine flexible environment. + # Corresponds to the JSON property `container` + # @return [Google::Apis::AppengineV1beta::ContainerInfo] + attr_accessor :container + + # 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. + # Corresponds to the JSON property `files` + # @return [Hash] + attr_accessor :files + + # The zip file information for a zip deployment. + # Corresponds to the JSON property `zip` + # @return [Google::Apis::AppengineV1beta::ZipInfo] + attr_accessor :zip + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @build = args[:build] if args.key?(:build) + @container = args[:container] if args.key?(:container) + @files = args[:files] if args.key?(:files) + @zip = args[:zip] if args.key?(:zip) + end + end + + # Target scaling by disk usage. Only applicable for VM runtimes. + class DiskUtilization + include Google::Apis::Core::Hashable + + # Target bytes read per second. + # Corresponds to the JSON property `targetReadBytesPerSecond` + # @return [Fixnum] + attr_accessor :target_read_bytes_per_second + + # Target ops read per seconds. + # Corresponds to the JSON property `targetReadOpsPerSecond` + # @return [Fixnum] + attr_accessor :target_read_ops_per_second + + # Target bytes written per second. + # Corresponds to the JSON property `targetWriteBytesPerSecond` + # @return [Fixnum] + attr_accessor :target_write_bytes_per_second + + # Target ops written per second. + # Corresponds to the JSON property `targetWriteOpsPerSecond` + # @return [Fixnum] + attr_accessor :target_write_ops_per_second + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_read_bytes_per_second = args[:target_read_bytes_per_second] if args.key?(:target_read_bytes_per_second) + @target_read_ops_per_second = args[:target_read_ops_per_second] if args.key?(:target_read_ops_per_second) + @target_write_bytes_per_second = args[:target_write_bytes_per_second] if args.key?(:target_write_bytes_per_second) + @target_write_ops_per_second = args[:target_write_ops_per_second] if args.key?(:target_write_ops_per_second) + end + end + + # A domain serving an App Engine application. + class DomainMapping + include Google::Apis::Core::Hashable + + # Relative name of the domain serving the application. Example: example.com. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the DomainMapping resource in the API. Example: apps/myapp/ + # domainMapping/example.com.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The resource records required to configure this domain mapping. These records + # must be added to the domain's DNS configuration in order to serve the + # application via this domain mapping.@OutputOnly + # Corresponds to the JSON property `resourceRecords` + # @return [Array] + attr_accessor :resource_records + + # SSL configuration for a DomainMapping resource. + # Corresponds to the JSON property `sslSettings` + # @return [Google::Apis::AppengineV1beta::SslSettings] + attr_accessor :ssl_settings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + @resource_records = args[:resource_records] if args.key?(:resource_records) + @ssl_settings = args[:ssl_settings] if args.key?(:ssl_settings) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated empty + # messages in your APIs. A typical example is to use it as the request or the + # response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for Empty is empty JSON object ``. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The + # Endpoints API Service provides tooling for serving Open API and gRPC endpoints + # via an NGINX proxy.The fields here refer to the name and configuration id of a + # "service" resource in the Service Management API (https://cloud.google.com/ + # service-management/overview). + class EndpointsApiService + include Google::Apis::Core::Hashable + + # Endpoints service configuration id as specified by the Service Management API. + # For example "2016-09-19r1" + # Corresponds to the JSON property `configId` + # @return [String] + attr_accessor :config_id + + # Endpoints service name which is the name of the "service" resource in the + # Service Management API. For example "myapi.endpoints.myproject.cloud.goog" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config_id = args[:config_id] if args.key?(:config_id) + @name = args[:name] if args.key?(:name) + end + end + + # Custom static error page to be served when an error occurs. + class ErrorHandler + include Google::Apis::Core::Hashable + + # Error condition this handler applies to. + # Corresponds to the JSON property `errorCode` + # @return [String] + attr_accessor :error_code + + # MIME type of file. Defaults to text/html. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # Static file content to be served for this error. + # Corresponds to the JSON property `staticFile` + # @return [String] + attr_accessor :static_file + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_code = args[:error_code] if args.key?(:error_code) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @static_file = args[:static_file] if args.key?(:static_file) + end + end + + # The feature specific settings to be used in the application. These define + # behaviors that are user configurable. + class FeatureSettings + include Google::Apis::Core::Hashable + + # Boolean value indicating if split health checks should be used instead of the + # legacy health checks. At an app.yaml level, this means defaulting to ' + # readiness_check' and 'liveness_check' values instead of 'health_check' ones. + # Once the legacy 'health_check' behavior is deprecated, and this value is + # always true, this setting can be removed. + # Corresponds to the JSON property `splitHealthChecks` + # @return [Boolean] + attr_accessor :split_health_checks + alias_method :split_health_checks?, :split_health_checks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @split_health_checks = args[:split_health_checks] if args.key?(:split_health_checks) + end + end + + # Single source file that is part of the version to be deployed. Each source + # file that is deployed must be specified separately. + class FileInfo + include Google::Apis::Core::Hashable + + # The MIME type of the file.Defaults to the value from Google Cloud Storage. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # The SHA1 hash of the file, in hex. + # Corresponds to the JSON property `sha1Sum` + # @return [String] + attr_accessor :sha1_sum + + # 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//'. + # Corresponds to the JSON property `sourceUrl` + # @return [String] + attr_accessor :source_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @sha1_sum = args[:sha1_sum] if args.key?(:sha1_sum) + @source_url = args[:source_url] if args.key?(:source_url) + end + end + + # A single firewall rule that is evaluated against incoming traffic and provides + # an action to take on matched requests. + class FirewallRule + include Google::Apis::Core::Hashable + + # The action to take on matched requests. + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # An optional string description of this rule. This field has a maximum length + # of 100 characters. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # A positive integer between 1, Int32.MaxValue-1 that defines the order of rule + # evaluation. Rules with the lowest priority are evaluated first.A default rule + # at priority Int32.MaxValue matches all IPv4 and IPv6 traffic when no previous + # rule matches. Only the action of this rule can be modified by the user. + # Corresponds to the JSON property `priority` + # @return [Fixnum] + attr_accessor :priority + + # IP address or range, defined using CIDR notation, of requests that this rule + # applies to. You can use the wildcard character "*" to match all IPs equivalent + # to "0/0" and "::/0" together. Examples: 192.168.1.1 or 192.168.0.0/16 or 2001: + # db8::/32 or 2001:0db8:0000:0042:0000:8a2e:0370:7334.

Truncation will be + # silently performed on addresses which are not properly truncated. For example, + # 1.2.3.4/24 is accepted as the same address as 1.2.3.0/24. Similarly, for IPv6, + # 2001:db8::1/32 is accepted as the same address as 2001:db8::/32. + # Corresponds to the JSON property `sourceRange` + # @return [String] + attr_accessor :source_range + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @description = args[:description] if args.key?(:description) + @priority = args[:priority] if args.key?(:priority) + @source_range = args[:source_range] if args.key?(:source_range) + end + end + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. Only applicable for instances in App Engine + # flexible environment. + class HealthCheck + include Google::Apis::Core::Hashable + + # Interval between health checks. + # Corresponds to the JSON property `checkInterval` + # @return [String] + attr_accessor :check_interval + + # Whether to explicitly disable health checks for this instance. + # Corresponds to the JSON property `disableHealthCheck` + # @return [Boolean] + attr_accessor :disable_health_check + alias_method :disable_health_check?, :disable_health_check + + # Number of consecutive successful health checks required before receiving + # traffic. + # Corresponds to the JSON property `healthyThreshold` + # @return [Fixnum] + attr_accessor :healthy_threshold + + # Host header to send when performing an HTTP health check. Example: "myapp. + # appspot.com" + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # Number of consecutive failed health checks required before an instance is + # restarted. + # Corresponds to the JSON property `restartThreshold` + # @return [Fixnum] + attr_accessor :restart_threshold + + # Time before the health check is considered failed. + # Corresponds to the JSON property `timeout` + # @return [String] + attr_accessor :timeout + + # Number of consecutive failed health checks required before removing traffic. + # Corresponds to the JSON property `unhealthyThreshold` + # @return [Fixnum] + attr_accessor :unhealthy_threshold + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval = args[:check_interval] if args.key?(:check_interval) + @disable_health_check = args[:disable_health_check] if args.key?(:disable_health_check) + @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold) + @host = args[:host] if args.key?(:host) + @restart_threshold = args[:restart_threshold] if args.key?(:restart_threshold) + @timeout = args[:timeout] if args.key?(:timeout) + @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold) + end + end + + # Identity-Aware Proxy + class IdentityAwareProxy + include Google::Apis::Core::Hashable + + # Whether the serving infrastructure will authenticate and authorize all + # incoming requests.If true, the oauth2_client_id and oauth2_client_secret + # fields must be non-empty. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # OAuth2 client ID to use for the authentication flow. + # Corresponds to the JSON property `oauth2ClientId` + # @return [String] + attr_accessor :oauth2_client_id + + # OAuth2 client secret to use for the authentication flow.For security reasons, + # this value cannot be retrieved via the API. Instead, the SHA-256 hash of the + # value is returned in the oauth2_client_secret_sha256 field.@InputOnly + # Corresponds to the JSON property `oauth2ClientSecret` + # @return [String] + attr_accessor :oauth2_client_secret + + # Hex-encoded SHA-256 hash of the client secret.@OutputOnly + # Corresponds to the JSON property `oauth2ClientSecretSha256` + # @return [String] + attr_accessor :oauth2_client_secret_sha256 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id) + @oauth2_client_secret = args[:oauth2_client_secret] if args.key?(:oauth2_client_secret) + @oauth2_client_secret_sha256 = args[:oauth2_client_secret_sha256] if args.key?(:oauth2_client_secret_sha256) + end + end + + # An Instance resource is the computing unit that App Engine uses to + # automatically scale an application. + class Instance + include Google::Apis::Core::Hashable + + # App Engine release this instance is running on.@OutputOnly + # Corresponds to the JSON property `appEngineRelease` + # @return [String] + attr_accessor :app_engine_release + + # Availability of the instance.@OutputOnly + # Corresponds to the JSON property `availability` + # @return [String] + attr_accessor :availability + + # Average latency (ms) over the last minute.@OutputOnly + # Corresponds to the JSON property `averageLatency` + # @return [Fixnum] + attr_accessor :average_latency + + # Number of errors since this instance was started.@OutputOnly + # Corresponds to the JSON property `errors` + # @return [Fixnum] + attr_accessor :errors + + # Relative name of the instance within the version. Example: instance-1.@ + # OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Total memory in use (bytes).@OutputOnly + # Corresponds to the JSON property `memoryUsage` + # @return [Fixnum] + attr_accessor :memory_usage + + # Full path to the Instance resource in the API. Example: apps/myapp/services/ + # default/versions/v1/instances/instance-1.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Average queries per second (QPS) over the last minute.@OutputOnly + # Corresponds to the JSON property `qps` + # @return [Float] + attr_accessor :qps + + # Number of requests since this instance was started.@OutputOnly + # Corresponds to the JSON property `requests` + # @return [Fixnum] + attr_accessor :requests + + # Time that this instance was started.@OutputOnly + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Whether this instance is in debug mode. Only applicable for instances in App + # Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmDebugEnabled` + # @return [Boolean] + attr_accessor :vm_debug_enabled + alias_method :vm_debug_enabled?, :vm_debug_enabled + + # Virtual machine ID of this instance. Only applicable for instances in App + # Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmId` + # @return [String] + attr_accessor :vm_id + + # The IP address of this instance. Only applicable for instances in App Engine + # flexible environment.@OutputOnly + # Corresponds to the JSON property `vmIp` + # @return [String] + attr_accessor :vm_ip + + # Name of the virtual machine where this instance lives. Only applicable for + # instances in App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmName` + # @return [String] + attr_accessor :vm_name + + # Status of the virtual machine where this instance lives. Only applicable for + # instances in App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmStatus` + # @return [String] + attr_accessor :vm_status + + # Zone where the virtual machine is located. Only applicable for instances in + # App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmZoneName` + # @return [String] + attr_accessor :vm_zone_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) + @availability = args[:availability] if args.key?(:availability) + @average_latency = args[:average_latency] if args.key?(:average_latency) + @errors = args[:errors] if args.key?(:errors) + @id = args[:id] if args.key?(:id) + @memory_usage = args[:memory_usage] if args.key?(:memory_usage) + @name = args[:name] if args.key?(:name) + @qps = args[:qps] if args.key?(:qps) + @requests = args[:requests] if args.key?(:requests) + @start_time = args[:start_time] if args.key?(:start_time) + @vm_debug_enabled = args[:vm_debug_enabled] if args.key?(:vm_debug_enabled) + @vm_id = args[:vm_id] if args.key?(:vm_id) + @vm_ip = args[:vm_ip] if args.key?(:vm_ip) + @vm_name = args[:vm_name] if args.key?(:vm_name) + @vm_status = args[:vm_status] if args.key?(:vm_status) + @vm_zone_name = args[:vm_zone_name] if args.key?(:vm_zone_name) + end + end + + # Third-party Python runtime library that is required by the application. + class Library + include Google::Apis::Core::Hashable + + # Name of the library. Example: "django". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Version of the library to select, or "latest". + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @version = args[:version] if args.key?(:version) + end + end + + # Response message for AuthorizedCertificates.ListAuthorizedCertificates. + class ListAuthorizedCertificatesResponse + include Google::Apis::Core::Hashable + + # The SSL certificates the user is authorized to administer. + # Corresponds to the JSON property `certificates` + # @return [Array] + attr_accessor :certificates + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @certificates = args[:certificates] if args.key?(:certificates) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for AuthorizedDomains.ListAuthorizedDomains. + class ListAuthorizedDomainsResponse + include Google::Apis::Core::Hashable + + # The authorized domains belonging to the user. + # Corresponds to the JSON property `domains` + # @return [Array] + attr_accessor :domains + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domains = args[:domains] if args.key?(:domains) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for DomainMappings.ListDomainMappings. + class ListDomainMappingsResponse + include Google::Apis::Core::Hashable + + # The domain mappings for the application. + # Corresponds to the JSON property `domainMappings` + # @return [Array] + attr_accessor :domain_mappings + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domain_mappings = args[:domain_mappings] if args.key?(:domain_mappings) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for Firewall.ListIngressRules. + class ListIngressRulesResponse + include Google::Apis::Core::Hashable + + # The ingress FirewallRules for this application. + # Corresponds to the JSON property `ingressRules` + # @return [Array] + attr_accessor :ingress_rules + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ingress_rules = args[:ingress_rules] if args.key?(:ingress_rules) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for Instances.ListInstances. + class ListInstancesResponse + include Google::Apis::Core::Hashable + + # The instances belonging to the requested version. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Locations.ListLocations. + class ListLocationsResponse + include Google::Apis::Core::Hashable + + # A list of locations that matches the specified filter in the request. + # Corresponds to the JSON property `locations` + # @return [Array] + attr_accessor :locations + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locations = args[:locations] if args.key?(:locations) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # Response message for Services.ListServices. + class ListServicesResponse + include Google::Apis::Core::Hashable + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The services belonging to the requested application. + # Corresponds to the JSON property `services` + # @return [Array] + attr_accessor :services + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @services = args[:services] if args.key?(:services) + end + end + + # Response message for Versions.ListVersions. + class ListVersionsResponse + include Google::Apis::Core::Hashable + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The versions belonging to the requested service. + # Corresponds to the JSON property `versions` + # @return [Array] + attr_accessor :versions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @versions = args[:versions] if args.key?(:versions) + end + end + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. + class LivenessCheck + include Google::Apis::Core::Hashable + + # Interval between health checks. + # Corresponds to the JSON property `checkInterval` + # @return [String] + attr_accessor :check_interval + + # Number of consecutive failed checks required before considering the VM + # unhealthy. + # Corresponds to the JSON property `failureThreshold` + # @return [Fixnum] + attr_accessor :failure_threshold + + # Host header to send when performing a HTTP Liveness check. Example: "myapp. + # appspot.com" + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # The initial delay before starting to execute the checks. + # Corresponds to the JSON property `initialDelay` + # @return [String] + attr_accessor :initial_delay + + # The request path. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Number of consecutive successful checks required before considering the VM + # healthy. + # Corresponds to the JSON property `successThreshold` + # @return [Fixnum] + attr_accessor :success_threshold + + # Time before the check is considered failed. + # Corresponds to the JSON property `timeout` + # @return [String] + attr_accessor :timeout + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval = args[:check_interval] if args.key?(:check_interval) + @failure_threshold = args[:failure_threshold] if args.key?(:failure_threshold) + @host = args[:host] if args.key?(:host) + @initial_delay = args[:initial_delay] if args.key?(:initial_delay) + @path = args[:path] if args.key?(:path) + @success_threshold = args[:success_threshold] if args.key?(:success_threshold) + @timeout = args[:timeout] if args.key?(:timeout) + end + end + + # A resource that represents Google Cloud Platform location. + class Location + include Google::Apis::Core::Hashable + + # Cross-service attributes for the location. For example + # `"cloud.googleapis.com/region": "us-east1"` + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The canonical id for this location. For example: "us-east1". + # Corresponds to the JSON property `locationId` + # @return [String] + attr_accessor :location_id + + # Service-specific metadata. For example the available capacity at the given + # location. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Resource name for the location, which may vary between implementations. For + # example: "projects/example-project/locations/us-east1" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @location_id = args[:location_id] if args.key?(:location_id) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + end + end + + # Metadata for the given google.cloud.location.Location. + class LocationMetadata + include Google::Apis::Core::Hashable + + # App Engine Flexible Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `flexibleEnvironmentAvailable` + # @return [Boolean] + attr_accessor :flexible_environment_available + alias_method :flexible_environment_available?, :flexible_environment_available + + # App Engine Standard Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `standardEnvironmentAvailable` + # @return [Boolean] + attr_accessor :standard_environment_available + alias_method :standard_environment_available?, :standard_environment_available + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @flexible_environment_available = args[:flexible_environment_available] if args.key?(:flexible_environment_available) + @standard_environment_available = args[:standard_environment_available] if args.key?(:standard_environment_available) + end + end + + # A service with manual scaling runs continuously, allowing you to perform + # complex initialization and rely on the state of its memory over time. + class ManualScaling + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `instances` + # @return [Fixnum] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # Extra network settings. Only applicable for App Engine flexible environment + # versions + class Network + include Google::Apis::Core::Hashable + + # List of ports, or port pairs, to forward from the virtual machine to the + # application container. Only applicable for App Engine flexible environment + # versions. + # Corresponds to the JSON property `forwardedPorts` + # @return [Array] + attr_accessor :forwarded_ports + + # Tag to apply to the VM instance during creation. Only applicable for for App + # Engine flexible environment versions. + # Corresponds to the JSON property `instanceTag` + # @return [String] + attr_accessor :instance_tag + + # Google Compute Engine network where the virtual machines are created. Specify + # the short name, not the resource path.Defaults to default. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Google Cloud Platform sub-network where the virtual machines are created. + # Specify the short name, not the resource path.If a subnetwork name is + # specified, a network name will also be required unless it is for the default + # network. + # If the network the VM instance is being created in is a Legacy network, then + # the IP address is allocated from the IPv4Range. + # If the network the VM instance is being created in is an auto Subnet Mode + # Network, then only network name should be specified (not the subnetwork_name) + # and the IP address is created from the IPCidrRange of the subnetwork that + # exists in that zone for that network. + # If the network the VM instance is being created in is a custom Subnet Mode + # Network, then the subnetwork_name must be specified and the IP address is + # created from the IPCidrRange of the subnetwork.If specified, the subnetwork + # must exist in the same region as the App Engine flexible environment + # application. + # Corresponds to the JSON property `subnetworkName` + # @return [String] + attr_accessor :subnetwork_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @forwarded_ports = args[:forwarded_ports] if args.key?(:forwarded_ports) + @instance_tag = args[:instance_tag] if args.key?(:instance_tag) + @name = args[:name] if args.key?(:name) + @subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name) + end + end + + # Target scaling by network usage. Only applicable for VM runtimes. + class NetworkUtilization + include Google::Apis::Core::Hashable + + # Target bytes received per second. + # Corresponds to the JSON property `targetReceivedBytesPerSecond` + # @return [Fixnum] + attr_accessor :target_received_bytes_per_second + + # Target packets received per second. + # Corresponds to the JSON property `targetReceivedPacketsPerSecond` + # @return [Fixnum] + attr_accessor :target_received_packets_per_second + + # Target bytes sent per second. + # Corresponds to the JSON property `targetSentBytesPerSecond` + # @return [Fixnum] + attr_accessor :target_sent_bytes_per_second + + # Target packets sent per second. + # Corresponds to the JSON property `targetSentPacketsPerSecond` + # @return [Fixnum] + attr_accessor :target_sent_packets_per_second + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_received_bytes_per_second = args[:target_received_bytes_per_second] if args.key?(:target_received_bytes_per_second) + @target_received_packets_per_second = args[:target_received_packets_per_second] if args.key?(:target_received_packets_per_second) + @target_sent_bytes_per_second = args[:target_sent_bytes_per_second] if args.key?(:target_sent_bytes_per_second) + @target_sent_packets_per_second = args[:target_sent_packets_per_second] if args.key?(:target_sent_packets_per_second) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::AppengineV1beta::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadata + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta4. + # Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Type of this operation. Deprecated, use method field instead. Example: " + # create_version".@OutputOnly + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # modules/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataExperimental + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine. + # experimental.CustomDomains.CreateCustomDomain.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # customDomains/example.com.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1 + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Alpha + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1alpha. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta5 + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method name that initiated this operation. Example: google.appengine. + # v1beta5.Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Readiness checking configuration for VM instances. Unhealthy instances are + # removed from traffic rotation. + class ReadinessCheck + include Google::Apis::Core::Hashable + + # A maximum time limit on application initialization, measured from moment the + # application successfully replies to a healthcheck until it is ready to serve + # traffic. + # Corresponds to the JSON property `appStartTimeout` + # @return [String] + attr_accessor :app_start_timeout + + # Interval between health checks. + # Corresponds to the JSON property `checkInterval` + # @return [String] + attr_accessor :check_interval + + # Number of consecutive failed checks required before removing traffic. + # Corresponds to the JSON property `failureThreshold` + # @return [Fixnum] + attr_accessor :failure_threshold + + # Host header to send when performing a HTTP Readiness check. Example: "myapp. + # appspot.com" + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # The request path. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Number of consecutive successful checks required before receiving traffic. + # Corresponds to the JSON property `successThreshold` + # @return [Fixnum] + attr_accessor :success_threshold + + # Time before the check is considered failed. + # Corresponds to the JSON property `timeout` + # @return [String] + attr_accessor :timeout + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_start_timeout = args[:app_start_timeout] if args.key?(:app_start_timeout) + @check_interval = args[:check_interval] if args.key?(:check_interval) + @failure_threshold = args[:failure_threshold] if args.key?(:failure_threshold) + @host = args[:host] if args.key?(:host) + @path = args[:path] if args.key?(:path) + @success_threshold = args[:success_threshold] if args.key?(:success_threshold) + @timeout = args[:timeout] if args.key?(:timeout) + end + end + + # Request message for 'Applications.RepairApplication'. + class RepairApplicationRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Target scaling by request utilization. Only applicable for VM runtimes. + class RequestUtilization + include Google::Apis::Core::Hashable + + # Target number of concurrent requests. + # Corresponds to the JSON property `targetConcurrentRequests` + # @return [Fixnum] + attr_accessor :target_concurrent_requests + + # Target requests per second. + # Corresponds to the JSON property `targetRequestCountPerSecond` + # @return [Fixnum] + attr_accessor :target_request_count_per_second + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_concurrent_requests = args[:target_concurrent_requests] if args.key?(:target_concurrent_requests) + @target_request_count_per_second = args[:target_request_count_per_second] if args.key?(:target_request_count_per_second) + end + end + + # A DNS resource record. + class ResourceRecord + include Google::Apis::Core::Hashable + + # Relative name of the object affected by this record. Only applicable for CNAME + # records. Example: 'www'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Data for this record. Values vary by record type, as defined in RFC 1035 ( + # section 5) and RFC 1034 (section 3.6.1). + # Corresponds to the JSON property `rrdata` + # @return [String] + attr_accessor :rrdata + + # Resource record type. Example: AAAA. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @rrdata = args[:rrdata] if args.key?(:rrdata) + @type = args[:type] if args.key?(:type) + end + end + + # Machine resources for a version. + class Resources + include Google::Apis::Core::Hashable + + # Number of CPU cores needed. + # Corresponds to the JSON property `cpu` + # @return [Float] + attr_accessor :cpu + + # Disk size (GB) needed. + # Corresponds to the JSON property `diskGb` + # @return [Float] + attr_accessor :disk_gb + + # Memory (GB) needed. + # Corresponds to the JSON property `memoryGb` + # @return [Float] + attr_accessor :memory_gb + + # User specified volumes. + # Corresponds to the JSON property `volumes` + # @return [Array] + attr_accessor :volumes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cpu = args[:cpu] if args.key?(:cpu) + @disk_gb = args[:disk_gb] if args.key?(:disk_gb) + @memory_gb = args[:memory_gb] if args.key?(:memory_gb) + @volumes = args[:volumes] if args.key?(:volumes) + end + end + + # Executes a script to handle the request that matches the URL pattern. + class ScriptHandler + include Google::Apis::Core::Hashable + + # Path to the script from the application root directory. + # Corresponds to the JSON property `scriptPath` + # @return [String] + attr_accessor :script_path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @script_path = args[:script_path] if args.key?(:script_path) + end + end + + # 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. + class Service + include Google::Apis::Core::Hashable + + # Relative name of the service within the application. Example: default.@ + # OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the Service resource in the API. Example: apps/myapp/services/ + # default.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Traffic routing configuration for versions within a single service. Traffic + # splits define how traffic directed to the service is assigned to versions. + # Corresponds to the JSON property `split` + # @return [Google::Apis::AppengineV1beta::TrafficSplit] + attr_accessor :split + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + @split = args[:split] if args.key?(:split) + end + end + + # SSL configuration for a DomainMapping resource. + class SslSettings + include Google::Apis::Core::Hashable + + # ID of the AuthorizedCertificate resource configuring SSL for the application. + # Clearing this field will remove SSL support. Example: 12345. + # Corresponds to the JSON property `certificateId` + # @return [String] + attr_accessor :certificate_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @certificate_id = args[:certificate_id] if args.key?(:certificate_id) + end + end + + # Scheduler settings for standard environment. + class StandardSchedulerSettings + include Google::Apis::Core::Hashable + + # Maximum number of instances for an app version. Set to a non-positive value (0 + # by convention) to disable max_instances configuration. + # Corresponds to the JSON property `maxInstances` + # @return [Fixnum] + attr_accessor :max_instances + + # Minimum number of instances for an app version. Set to a non-positive value (0 + # by convention) to disable min_instances configuration. + # Corresponds to the JSON property `minInstances` + # @return [Fixnum] + attr_accessor :min_instances + + # Target CPU utilization ratio to maintain when scaling. + # Corresponds to the JSON property `targetCpuUtilization` + # @return [Float] + attr_accessor :target_cpu_utilization + + # Target throughput utilization ratio to maintain when scaling + # Corresponds to the JSON property `targetThroughputUtilization` + # @return [Float] + attr_accessor :target_throughput_utilization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_instances = args[:max_instances] if args.key?(:max_instances) + @min_instances = args[:min_instances] if args.key?(:min_instances) + @target_cpu_utilization = args[:target_cpu_utilization] if args.key?(:target_cpu_utilization) + @target_throughput_utilization = args[:target_throughput_utilization] if args.key?(:target_throughput_utilization) + end + end + + # 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. + class StaticFilesHandler + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `applicationReadable` + # @return [Boolean] + attr_accessor :application_readable + alias_method :application_readable?, :application_readable + + # Time a static file served by this handler should be cached by web proxies and + # browsers. + # Corresponds to the JSON property `expiration` + # @return [String] + attr_accessor :expiration + + # HTTP headers to use for all responses from these URLs. + # Corresponds to the JSON property `httpHeaders` + # @return [Hash] + attr_accessor :http_headers + + # 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. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # 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. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Whether this handler should match the request if the file referenced by the + # handler does not exist. + # Corresponds to the JSON property `requireMatchingFile` + # @return [Boolean] + attr_accessor :require_matching_file + alias_method :require_matching_file?, :require_matching_file + + # Regular expression that matches the file paths for all files that should be + # referenced by this handler. + # Corresponds to the JSON property `uploadPathRegex` + # @return [String] + attr_accessor :upload_path_regex + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @application_readable = args[:application_readable] if args.key?(:application_readable) + @expiration = args[:expiration] if args.key?(:expiration) + @http_headers = args[:http_headers] if args.key?(:http_headers) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @path = args[:path] if args.key?(:path) + @require_matching_file = args[:require_matching_file] if args.key?(:require_matching_file) + @upload_path_regex = args[:upload_path_regex] if args.key?(:upload_path_regex) + end + end + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Traffic routing configuration for versions within a single service. Traffic + # splits define how traffic directed to the service is assigned to versions. + class TrafficSplit + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `allocations` + # @return [Hash] + attr_accessor :allocations + + # 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. + # Corresponds to the JSON property `shardBy` + # @return [String] + attr_accessor :shard_by + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allocations = args[:allocations] if args.key?(:allocations) + @shard_by = args[:shard_by] if args.key?(:shard_by) + end + end + + # Rules to match an HTTP request and dispatch that request to a service. + class UrlDispatchRule + include Google::Apis::Core::Hashable + + # Domain name to match against. The wildcard "*" is supported if specified + # before a period: "*.".Defaults to matching all domains: "*". + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # 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. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Resource ID of a service in this application that should serve the matched + # request. The service must already exist. Example: default. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domain = args[:domain] if args.key?(:domain) + @path = args[:path] if args.key?(:path) + @service = args[:service] if args.key?(:service) + end + end + + # 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. + class UrlMap + include Google::Apis::Core::Hashable + + # Uses Google Cloud Endpoints to handle requests. + # Corresponds to the JSON property `apiEndpoint` + # @return [Google::Apis::AppengineV1beta::ApiEndpointHandler] + attr_accessor :api_endpoint + + # Action to take when users access resources that require authentication. + # Defaults to redirect. + # Corresponds to the JSON property `authFailAction` + # @return [String] + attr_accessor :auth_fail_action + + # Level of login required to access this resource. + # Corresponds to the JSON property `login` + # @return [String] + attr_accessor :login + + # 30x code to use when performing redirects for the secure field. Defaults to + # 302. + # Corresponds to the JSON property `redirectHttpResponseCode` + # @return [String] + attr_accessor :redirect_http_response_code + + # Executes a script to handle the request that matches the URL pattern. + # Corresponds to the JSON property `script` + # @return [Google::Apis::AppengineV1beta::ScriptHandler] + attr_accessor :script + + # Security (HTTPS) enforcement for this URL. + # Corresponds to the JSON property `securityLevel` + # @return [String] + attr_accessor :security_level + + # 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. + # Corresponds to the JSON property `staticFiles` + # @return [Google::Apis::AppengineV1beta::StaticFilesHandler] + attr_accessor :static_files + + # 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. + # Corresponds to the JSON property `urlRegex` + # @return [String] + attr_accessor :url_regex + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @api_endpoint = args[:api_endpoint] if args.key?(:api_endpoint) + @auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action) + @login = args[:login] if args.key?(:login) + @redirect_http_response_code = args[:redirect_http_response_code] if args.key?(:redirect_http_response_code) + @script = args[:script] if args.key?(:script) + @security_level = args[:security_level] if args.key?(:security_level) + @static_files = args[:static_files] if args.key?(:static_files) + @url_regex = args[:url_regex] if args.key?(:url_regex) + end + end + + # A Version resource is a specific set of source code and configuration files + # that are deployed into a service. + class Version + include Google::Apis::Core::Hashable + + # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/ + # endpoints/) configuration for API handlers. + # Corresponds to the JSON property `apiConfig` + # @return [Google::Apis::AppengineV1beta::ApiConfigHandler] + attr_accessor :api_config + + # Automatic scaling is based on request rate, response latencies, and other + # application metrics. + # Corresponds to the JSON property `automaticScaling` + # @return [Google::Apis::AppengineV1beta::AutomaticScaling] + attr_accessor :automatic_scaling + + # 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. + # Corresponds to the JSON property `basicScaling` + # @return [Google::Apis::AppengineV1beta::BasicScaling] + attr_accessor :basic_scaling + + # Metadata settings that are supplied to this version to enable beta runtime + # features. + # Corresponds to the JSON property `betaSettings` + # @return [Hash] + attr_accessor :beta_settings + + # Time that this version was created.@OutputOnly + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Email address of the user who created this version.@OutputOnly + # Corresponds to the JSON property `createdBy` + # @return [String] + attr_accessor :created_by + + # Duration that static files should be cached by web proxies and browsers. Only + # applicable if the corresponding StaticFilesHandler (https://cloud.google.com/ + # appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions# + # staticfileshandler) does not specify its own expiration time.Only returned in + # GET requests if view=FULL is set. + # Corresponds to the JSON property `defaultExpiration` + # @return [String] + attr_accessor :default_expiration + + # Code and application artifacts used to deploy a version to App Engine. + # Corresponds to the JSON property `deployment` + # @return [Google::Apis::AppengineV1beta::Deployment] + attr_accessor :deployment + + # Total size in bytes of all the files that are included in this version and + # curerntly hosted on the App Engine disk.@OutputOnly + # Corresponds to the JSON property `diskUsageBytes` + # @return [Fixnum] + attr_accessor :disk_usage_bytes + + # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The + # Endpoints API Service provides tooling for serving Open API and gRPC endpoints + # via an NGINX proxy.The fields here refer to the name and configuration id of a + # "service" resource in the Service Management API (https://cloud.google.com/ + # service-management/overview). + # Corresponds to the JSON property `endpointsApiService` + # @return [Google::Apis::AppengineV1beta::EndpointsApiService] + attr_accessor :endpoints_api_service + + # App Engine execution environment for this version.Defaults to standard. + # Corresponds to the JSON property `env` + # @return [String] + attr_accessor :env + + # Environment variables available to the application.Only returned in GET + # requests if view=FULL is set. + # Corresponds to the JSON property `envVariables` + # @return [Hash] + attr_accessor :env_variables + + # Custom static error pages. Limited to 10KB per page.Only returned in GET + # requests if view=FULL is set. + # Corresponds to the JSON property `errorHandlers` + # @return [Array] + attr_accessor :error_handlers + + # 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. + # Corresponds to the JSON property `handlers` + # @return [Array] + attr_accessor :handlers + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. Only applicable for instances in App Engine + # flexible environment. + # Corresponds to the JSON property `healthCheck` + # @return [Google::Apis::AppengineV1beta::HealthCheck] + attr_accessor :health_check + + # 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-". + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Before an application can receive email or XMPP messages, the application must + # be configured to enable the service. + # Corresponds to the JSON property `inboundServices` + # @return [Array] + attr_accessor :inbound_services + + # 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_1GDefaults to F1 for + # AutomaticScaling and B1 for ManualScaling or BasicScaling. + # Corresponds to the JSON property `instanceClass` + # @return [String] + attr_accessor :instance_class + + # Configuration for third-party Python runtime libraries that are required by + # the application.Only returned in GET requests if view=FULL is set. + # Corresponds to the JSON property `libraries` + # @return [Array] + attr_accessor :libraries + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. + # Corresponds to the JSON property `livenessCheck` + # @return [Google::Apis::AppengineV1beta::LivenessCheck] + attr_accessor :liveness_check + + # A service with manual scaling runs continuously, allowing you to perform + # complex initialization and rely on the state of its memory over time. + # Corresponds to the JSON property `manualScaling` + # @return [Google::Apis::AppengineV1beta::ManualScaling] + attr_accessor :manual_scaling + + # Full path to the Version resource in the API. Example: apps/myapp/services/ + # default/versions/v1.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Extra network settings. Only applicable for App Engine flexible environment + # versions + # Corresponds to the JSON property `network` + # @return [Google::Apis::AppengineV1beta::Network] + attr_accessor :network + + # 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. + # Corresponds to the JSON property `nobuildFilesRegex` + # @return [String] + attr_accessor :nobuild_files_regex + + # Readiness checking configuration for VM instances. Unhealthy instances are + # removed from traffic rotation. + # Corresponds to the JSON property `readinessCheck` + # @return [Google::Apis::AppengineV1beta::ReadinessCheck] + attr_accessor :readiness_check + + # Machine resources for a version. + # Corresponds to the JSON property `resources` + # @return [Google::Apis::AppengineV1beta::Resources] + attr_accessor :resources + + # Desired runtime. Example: python27. + # Corresponds to the JSON property `runtime` + # @return [String] + attr_accessor :runtime + + # The version of the API in the given runtime environment. Please see the app. + # yaml reference for valid values at https://cloud.google.com/appengine/docs/ + # standard//config/appref + # Corresponds to the JSON property `runtimeApiVersion` + # @return [String] + attr_accessor :runtime_api_version + + # 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. + # Corresponds to the JSON property `servingStatus` + # @return [String] + attr_accessor :serving_status + + # Whether multiple requests can be dispatched to this version at once. + # Corresponds to the JSON property `threadsafe` + # @return [Boolean] + attr_accessor :threadsafe + alias_method :threadsafe?, :threadsafe + + # Serving URL for this version. Example: "https://myversion-dot-myservice-dot- + # myapp.appspot.com"@OutputOnly + # Corresponds to the JSON property `versionUrl` + # @return [String] + attr_accessor :version_url + + # Whether to deploy this version in a container on a virtual machine. + # Corresponds to the JSON property `vm` + # @return [Boolean] + attr_accessor :vm + alias_method :vm?, :vm + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @api_config = args[:api_config] if args.key?(:api_config) + @automatic_scaling = args[:automatic_scaling] if args.key?(:automatic_scaling) + @basic_scaling = args[:basic_scaling] if args.key?(:basic_scaling) + @beta_settings = args[:beta_settings] if args.key?(:beta_settings) + @create_time = args[:create_time] if args.key?(:create_time) + @created_by = args[:created_by] if args.key?(:created_by) + @default_expiration = args[:default_expiration] if args.key?(:default_expiration) + @deployment = args[:deployment] if args.key?(:deployment) + @disk_usage_bytes = args[:disk_usage_bytes] if args.key?(:disk_usage_bytes) + @endpoints_api_service = args[:endpoints_api_service] if args.key?(:endpoints_api_service) + @env = args[:env] if args.key?(:env) + @env_variables = args[:env_variables] if args.key?(:env_variables) + @error_handlers = args[:error_handlers] if args.key?(:error_handlers) + @handlers = args[:handlers] if args.key?(:handlers) + @health_check = args[:health_check] if args.key?(:health_check) + @id = args[:id] if args.key?(:id) + @inbound_services = args[:inbound_services] if args.key?(:inbound_services) + @instance_class = args[:instance_class] if args.key?(:instance_class) + @libraries = args[:libraries] if args.key?(:libraries) + @liveness_check = args[:liveness_check] if args.key?(:liveness_check) + @manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @nobuild_files_regex = args[:nobuild_files_regex] if args.key?(:nobuild_files_regex) + @readiness_check = args[:readiness_check] if args.key?(:readiness_check) + @resources = args[:resources] if args.key?(:resources) + @runtime = args[:runtime] if args.key?(:runtime) + @runtime_api_version = args[:runtime_api_version] if args.key?(:runtime_api_version) + @serving_status = args[:serving_status] if args.key?(:serving_status) + @threadsafe = args[:threadsafe] if args.key?(:threadsafe) + @version_url = args[:version_url] if args.key?(:version_url) + @vm = args[:vm] if args.key?(:vm) + end + end + + # Volumes mounted within the app container. Only applicable for VM runtimes. + class Volume + include Google::Apis::Core::Hashable + + # Unique name for the volume. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Volume size in gigabytes. + # Corresponds to the JSON property `sizeGb` + # @return [Float] + attr_accessor :size_gb + + # Underlying volume type, e.g. 'tmpfs'. + # Corresponds to the JSON property `volumeType` + # @return [String] + attr_accessor :volume_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @size_gb = args[:size_gb] if args.key?(:size_gb) + @volume_type = args[:volume_type] if args.key?(:volume_type) + end + end + + # The zip file information for a zip deployment. + class ZipInfo + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `filesCount` + # @return [Fixnum] + attr_accessor :files_count + + # 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//'. + # Corresponds to the JSON property `sourceUrl` + # @return [String] + attr_accessor :source_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @files_count = args[:files_count] if args.key?(:files_count) + @source_url = args[:source_url] if args.key?(:source_url) + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta/representations.rb b/generated/google/apis/appengine_v1beta/representations.rb new file mode 100644 index 000000000..c7d28fcdf --- /dev/null +++ b/generated/google/apis/appengine_v1beta/representations.rb @@ -0,0 +1,1138 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta + + class ApiConfigHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApiEndpointHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Application + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizedCertificate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizedDomain + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutomaticScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BasicScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BatchUpdateIngressRulesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BatchUpdateIngressRulesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BuildInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CertificateRawData + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ContainerInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CpuUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DebugInstanceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Deployment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DomainMapping + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EndpointsApiService + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ErrorHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FeatureSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FileInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FirewallRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IdentityAwareProxy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Instance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Library + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListAuthorizedCertificatesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListAuthorizedDomainsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListDomainMappingsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListIngressRulesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListInstancesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListLocationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListServicesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListVersionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LivenessCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Location + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LocationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManualScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Network + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataExperimental + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Alpha + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta5 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReadinessCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RepairApplicationRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RequestUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceRecord + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Resources + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ScriptHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Service + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StandardSchedulerSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StaticFilesHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TrafficSplit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlDispatchRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMap + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Version + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Volume + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZipInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApiConfigHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auth_fail_action, as: 'authFailAction' + property :login, as: 'login' + property :script, as: 'script' + property :security_level, as: 'securityLevel' + property :url, as: 'url' + end + end + + class ApiEndpointHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :script_path, as: 'scriptPath' + end + end + + class Application + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auth_domain, as: 'authDomain' + property :code_bucket, as: 'codeBucket' + property :default_bucket, as: 'defaultBucket' + property :default_cookie_expiration, as: 'defaultCookieExpiration' + property :default_hostname, as: 'defaultHostname' + collection :dispatch_rules, as: 'dispatchRules', class: Google::Apis::AppengineV1beta::UrlDispatchRule, decorator: Google::Apis::AppengineV1beta::UrlDispatchRule::Representation + + property :feature_settings, as: 'featureSettings', class: Google::Apis::AppengineV1beta::FeatureSettings, decorator: Google::Apis::AppengineV1beta::FeatureSettings::Representation + + property :gcr_domain, as: 'gcrDomain' + property :iap, as: 'iap', class: Google::Apis::AppengineV1beta::IdentityAwareProxy, decorator: Google::Apis::AppengineV1beta::IdentityAwareProxy::Representation + + property :id, as: 'id' + property :location_id, as: 'locationId' + property :name, as: 'name' + property :serving_status, as: 'servingStatus' + end + end + + class AuthorizedCertificate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :certificate_raw_data, as: 'certificateRawData', class: Google::Apis::AppengineV1beta::CertificateRawData, decorator: Google::Apis::AppengineV1beta::CertificateRawData::Representation + + property :display_name, as: 'displayName' + property :domain_mappings_count, as: 'domainMappingsCount' + collection :domain_names, as: 'domainNames' + property :expire_time, as: 'expireTime' + property :id, as: 'id' + property :name, as: 'name' + collection :visible_domain_mappings, as: 'visibleDomainMappings' + end + end + + class AuthorizedDomain + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :name, as: 'name' + end + end + + class AutomaticScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cool_down_period, as: 'coolDownPeriod' + property :cpu_utilization, as: 'cpuUtilization', class: Google::Apis::AppengineV1beta::CpuUtilization, decorator: Google::Apis::AppengineV1beta::CpuUtilization::Representation + + property :disk_utilization, as: 'diskUtilization', class: Google::Apis::AppengineV1beta::DiskUtilization, decorator: Google::Apis::AppengineV1beta::DiskUtilization::Representation + + property :max_concurrent_requests, as: 'maxConcurrentRequests' + property :max_idle_instances, as: 'maxIdleInstances' + property :max_pending_latency, as: 'maxPendingLatency' + property :max_total_instances, as: 'maxTotalInstances' + property :min_idle_instances, as: 'minIdleInstances' + property :min_pending_latency, as: 'minPendingLatency' + property :min_total_instances, as: 'minTotalInstances' + property :network_utilization, as: 'networkUtilization', class: Google::Apis::AppengineV1beta::NetworkUtilization, decorator: Google::Apis::AppengineV1beta::NetworkUtilization::Representation + + property :request_utilization, as: 'requestUtilization', class: Google::Apis::AppengineV1beta::RequestUtilization, decorator: Google::Apis::AppengineV1beta::RequestUtilization::Representation + + property :standard_scheduler_settings, as: 'standardSchedulerSettings', class: Google::Apis::AppengineV1beta::StandardSchedulerSettings, decorator: Google::Apis::AppengineV1beta::StandardSchedulerSettings::Representation + + end + end + + class BasicScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :idle_timeout, as: 'idleTimeout' + property :max_instances, as: 'maxInstances' + end + end + + class BatchUpdateIngressRulesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ingress_rules, as: 'ingressRules', class: Google::Apis::AppengineV1beta::FirewallRule, decorator: Google::Apis::AppengineV1beta::FirewallRule::Representation + + end + end + + class BatchUpdateIngressRulesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ingress_rules, as: 'ingressRules', class: Google::Apis::AppengineV1beta::FirewallRule, decorator: Google::Apis::AppengineV1beta::FirewallRule::Representation + + end + end + + class BuildInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cloud_build_id, as: 'cloudBuildId' + end + end + + class CertificateRawData + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :private_key, as: 'privateKey' + property :public_certificate, as: 'publicCertificate' + end + end + + class ContainerInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :image, as: 'image' + end + end + + class CpuUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :aggregation_window_length, as: 'aggregationWindowLength' + property :target_utilization, as: 'targetUtilization' + end + end + + class DebugInstanceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ssh_key, as: 'sshKey' + end + end + + class Deployment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :build, as: 'build', class: Google::Apis::AppengineV1beta::BuildInfo, decorator: Google::Apis::AppengineV1beta::BuildInfo::Representation + + property :container, as: 'container', class: Google::Apis::AppengineV1beta::ContainerInfo, decorator: Google::Apis::AppengineV1beta::ContainerInfo::Representation + + hash :files, as: 'files', class: Google::Apis::AppengineV1beta::FileInfo, decorator: Google::Apis::AppengineV1beta::FileInfo::Representation + + property :zip, as: 'zip', class: Google::Apis::AppengineV1beta::ZipInfo, decorator: Google::Apis::AppengineV1beta::ZipInfo::Representation + + end + end + + class DiskUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_read_bytes_per_second, as: 'targetReadBytesPerSecond' + property :target_read_ops_per_second, as: 'targetReadOpsPerSecond' + property :target_write_bytes_per_second, as: 'targetWriteBytesPerSecond' + property :target_write_ops_per_second, as: 'targetWriteOpsPerSecond' + end + end + + class DomainMapping + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :name, as: 'name' + collection :resource_records, as: 'resourceRecords', class: Google::Apis::AppengineV1beta::ResourceRecord, decorator: Google::Apis::AppengineV1beta::ResourceRecord::Representation + + property :ssl_settings, as: 'sslSettings', class: Google::Apis::AppengineV1beta::SslSettings, decorator: Google::Apis::AppengineV1beta::SslSettings::Representation + + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class EndpointsApiService + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config_id, as: 'configId' + property :name, as: 'name' + end + end + + class ErrorHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_code, as: 'errorCode' + property :mime_type, as: 'mimeType' + property :static_file, as: 'staticFile' + end + end + + class FeatureSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :split_health_checks, as: 'splitHealthChecks' + end + end + + class FileInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :mime_type, as: 'mimeType' + property :sha1_sum, as: 'sha1Sum' + property :source_url, as: 'sourceUrl' + end + end + + class FirewallRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + property :description, as: 'description' + property :priority, as: 'priority' + property :source_range, as: 'sourceRange' + end + end + + class HealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval, as: 'checkInterval' + property :disable_health_check, as: 'disableHealthCheck' + property :healthy_threshold, as: 'healthyThreshold' + property :host, as: 'host' + property :restart_threshold, as: 'restartThreshold' + property :timeout, as: 'timeout' + property :unhealthy_threshold, as: 'unhealthyThreshold' + end + end + + class IdentityAwareProxy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + property :oauth2_client_id, as: 'oauth2ClientId' + property :oauth2_client_secret, as: 'oauth2ClientSecret' + property :oauth2_client_secret_sha256, as: 'oauth2ClientSecretSha256' + end + end + + class Instance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_engine_release, as: 'appEngineRelease' + property :availability, as: 'availability' + property :average_latency, as: 'averageLatency' + property :errors, as: 'errors' + property :id, as: 'id' + property :memory_usage, :numeric_string => true, as: 'memoryUsage' + property :name, as: 'name' + property :qps, as: 'qps' + property :requests, as: 'requests' + property :start_time, as: 'startTime' + property :vm_debug_enabled, as: 'vmDebugEnabled' + property :vm_id, as: 'vmId' + property :vm_ip, as: 'vmIp' + property :vm_name, as: 'vmName' + property :vm_status, as: 'vmStatus' + property :vm_zone_name, as: 'vmZoneName' + end + end + + class Library + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :version, as: 'version' + end + end + + class ListAuthorizedCertificatesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :certificates, as: 'certificates', class: Google::Apis::AppengineV1beta::AuthorizedCertificate, decorator: Google::Apis::AppengineV1beta::AuthorizedCertificate::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListAuthorizedDomainsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :domains, as: 'domains', class: Google::Apis::AppengineV1beta::AuthorizedDomain, decorator: Google::Apis::AppengineV1beta::AuthorizedDomain::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListDomainMappingsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :domain_mappings, as: 'domainMappings', class: Google::Apis::AppengineV1beta::DomainMapping, decorator: Google::Apis::AppengineV1beta::DomainMapping::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListIngressRulesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ingress_rules, as: 'ingressRules', class: Google::Apis::AppengineV1beta::FirewallRule, decorator: Google::Apis::AppengineV1beta::FirewallRule::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListInstancesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::AppengineV1beta::Instance, decorator: Google::Apis::AppengineV1beta::Instance::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListLocationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :locations, as: 'locations', class: Google::Apis::AppengineV1beta::Location, decorator: Google::Apis::AppengineV1beta::Location::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::AppengineV1beta::Operation, decorator: Google::Apis::AppengineV1beta::Operation::Representation + + end + end + + class ListServicesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :services, as: 'services', class: Google::Apis::AppengineV1beta::Service, decorator: Google::Apis::AppengineV1beta::Service::Representation + + end + end + + class ListVersionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :versions, as: 'versions', class: Google::Apis::AppengineV1beta::Version, decorator: Google::Apis::AppengineV1beta::Version::Representation + + end + end + + class LivenessCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval, as: 'checkInterval' + property :failure_threshold, as: 'failureThreshold' + property :host, as: 'host' + property :initial_delay, as: 'initialDelay' + property :path, as: 'path' + property :success_threshold, as: 'successThreshold' + property :timeout, as: 'timeout' + end + end + + class Location + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + property :location_id, as: 'locationId' + hash :metadata, as: 'metadata' + property :name, as: 'name' + end + end + + class LocationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :flexible_environment_available, as: 'flexibleEnvironmentAvailable' + property :standard_environment_available, as: 'standardEnvironmentAvailable' + end + end + + class ManualScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instances, as: 'instances' + end + end + + class Network + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :forwarded_ports, as: 'forwardedPorts' + property :instance_tag, as: 'instanceTag' + property :name, as: 'name' + property :subnetwork_name, as: 'subnetworkName' + end + end + + class NetworkUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_received_bytes_per_second, as: 'targetReceivedBytesPerSecond' + property :target_received_packets_per_second, as: 'targetReceivedPacketsPerSecond' + property :target_sent_bytes_per_second, as: 'targetSentBytesPerSecond' + property :target_sent_packets_per_second, as: 'targetSentPacketsPerSecond' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::AppengineV1beta::Status, decorator: Google::Apis::AppengineV1beta::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :operation_type, as: 'operationType' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataExperimental + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataV1 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Alpha + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta5 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class ReadinessCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_start_timeout, as: 'appStartTimeout' + property :check_interval, as: 'checkInterval' + property :failure_threshold, as: 'failureThreshold' + property :host, as: 'host' + property :path, as: 'path' + property :success_threshold, as: 'successThreshold' + property :timeout, as: 'timeout' + end + end + + class RepairApplicationRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class RequestUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_concurrent_requests, as: 'targetConcurrentRequests' + property :target_request_count_per_second, as: 'targetRequestCountPerSecond' + end + end + + class ResourceRecord + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :rrdata, as: 'rrdata' + property :type, as: 'type' + end + end + + class Resources + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cpu, as: 'cpu' + property :disk_gb, as: 'diskGb' + property :memory_gb, as: 'memoryGb' + collection :volumes, as: 'volumes', class: Google::Apis::AppengineV1beta::Volume, decorator: Google::Apis::AppengineV1beta::Volume::Representation + + end + end + + class ScriptHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :script_path, as: 'scriptPath' + end + end + + class Service + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :name, as: 'name' + property :split, as: 'split', class: Google::Apis::AppengineV1beta::TrafficSplit, decorator: Google::Apis::AppengineV1beta::TrafficSplit::Representation + + end + end + + class SslSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :certificate_id, as: 'certificateId' + end + end + + class StandardSchedulerSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_instances, as: 'maxInstances' + property :min_instances, as: 'minInstances' + property :target_cpu_utilization, as: 'targetCpuUtilization' + property :target_throughput_utilization, as: 'targetThroughputUtilization' + end + end + + class StaticFilesHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :application_readable, as: 'applicationReadable' + property :expiration, as: 'expiration' + hash :http_headers, as: 'httpHeaders' + property :mime_type, as: 'mimeType' + property :path, as: 'path' + property :require_matching_file, as: 'requireMatchingFile' + property :upload_path_regex, as: 'uploadPathRegex' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TrafficSplit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :allocations, as: 'allocations' + property :shard_by, as: 'shardBy' + end + end + + class UrlDispatchRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :domain, as: 'domain' + property :path, as: 'path' + property :service, as: 'service' + end + end + + class UrlMap + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_endpoint, as: 'apiEndpoint', class: Google::Apis::AppengineV1beta::ApiEndpointHandler, decorator: Google::Apis::AppengineV1beta::ApiEndpointHandler::Representation + + property :auth_fail_action, as: 'authFailAction' + property :login, as: 'login' + property :redirect_http_response_code, as: 'redirectHttpResponseCode' + property :script, as: 'script', class: Google::Apis::AppengineV1beta::ScriptHandler, decorator: Google::Apis::AppengineV1beta::ScriptHandler::Representation + + property :security_level, as: 'securityLevel' + property :static_files, as: 'staticFiles', class: Google::Apis::AppengineV1beta::StaticFilesHandler, decorator: Google::Apis::AppengineV1beta::StaticFilesHandler::Representation + + property :url_regex, as: 'urlRegex' + end + end + + class Version + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_config, as: 'apiConfig', class: Google::Apis::AppengineV1beta::ApiConfigHandler, decorator: Google::Apis::AppengineV1beta::ApiConfigHandler::Representation + + property :automatic_scaling, as: 'automaticScaling', class: Google::Apis::AppengineV1beta::AutomaticScaling, decorator: Google::Apis::AppengineV1beta::AutomaticScaling::Representation + + property :basic_scaling, as: 'basicScaling', class: Google::Apis::AppengineV1beta::BasicScaling, decorator: Google::Apis::AppengineV1beta::BasicScaling::Representation + + hash :beta_settings, as: 'betaSettings' + property :create_time, as: 'createTime' + property :created_by, as: 'createdBy' + property :default_expiration, as: 'defaultExpiration' + property :deployment, as: 'deployment', class: Google::Apis::AppengineV1beta::Deployment, decorator: Google::Apis::AppengineV1beta::Deployment::Representation + + property :disk_usage_bytes, :numeric_string => true, as: 'diskUsageBytes' + property :endpoints_api_service, as: 'endpointsApiService', class: Google::Apis::AppengineV1beta::EndpointsApiService, decorator: Google::Apis::AppengineV1beta::EndpointsApiService::Representation + + property :env, as: 'env' + hash :env_variables, as: 'envVariables' + collection :error_handlers, as: 'errorHandlers', class: Google::Apis::AppengineV1beta::ErrorHandler, decorator: Google::Apis::AppengineV1beta::ErrorHandler::Representation + + collection :handlers, as: 'handlers', class: Google::Apis::AppengineV1beta::UrlMap, decorator: Google::Apis::AppengineV1beta::UrlMap::Representation + + property :health_check, as: 'healthCheck', class: Google::Apis::AppengineV1beta::HealthCheck, decorator: Google::Apis::AppengineV1beta::HealthCheck::Representation + + property :id, as: 'id' + collection :inbound_services, as: 'inboundServices' + property :instance_class, as: 'instanceClass' + collection :libraries, as: 'libraries', class: Google::Apis::AppengineV1beta::Library, decorator: Google::Apis::AppengineV1beta::Library::Representation + + property :liveness_check, as: 'livenessCheck', class: Google::Apis::AppengineV1beta::LivenessCheck, decorator: Google::Apis::AppengineV1beta::LivenessCheck::Representation + + property :manual_scaling, as: 'manualScaling', class: Google::Apis::AppengineV1beta::ManualScaling, decorator: Google::Apis::AppengineV1beta::ManualScaling::Representation + + property :name, as: 'name' + property :network, as: 'network', class: Google::Apis::AppengineV1beta::Network, decorator: Google::Apis::AppengineV1beta::Network::Representation + + property :nobuild_files_regex, as: 'nobuildFilesRegex' + property :readiness_check, as: 'readinessCheck', class: Google::Apis::AppengineV1beta::ReadinessCheck, decorator: Google::Apis::AppengineV1beta::ReadinessCheck::Representation + + property :resources, as: 'resources', class: Google::Apis::AppengineV1beta::Resources, decorator: Google::Apis::AppengineV1beta::Resources::Representation + + property :runtime, as: 'runtime' + property :runtime_api_version, as: 'runtimeApiVersion' + property :serving_status, as: 'servingStatus' + property :threadsafe, as: 'threadsafe' + property :version_url, as: 'versionUrl' + property :vm, as: 'vm' + end + end + + class Volume + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :size_gb, as: 'sizeGb' + property :volume_type, as: 'volumeType' + end + end + + class ZipInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :files_count, as: 'filesCount' + property :source_url, as: 'sourceUrl' + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta/service.rb b/generated/google/apis/appengine_v1beta/service.rb new file mode 100644 index 000000000..9526f591e --- /dev/null +++ b/generated/google/apis/appengine_v1beta/service.rb @@ -0,0 +1,1546 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @example + # require 'google/apis/appengine_v1beta' + # + # Appengine = Google::Apis::AppengineV1beta # Alias the module + # service = Appengine::AppengineService.new + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + class AppengineService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://appengine.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates an App Engine application for a Google Cloud Platform project. + # Required fields: + # id - The ID of the target Cloud Platform project. + # location - The region (https://cloud.google.com/appengine/docs/locations) + # where you want the App Engine application located.For more information about + # App Engine applications, see Managing Projects, Applications, and Billing ( + # https://cloud.google.com/appengine/docs/python/console/). + # @param [Google::Apis::AppengineV1beta::Application] application_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app(application_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps', options) + command.request_representation = Google::Apis::AppengineV1beta::Application::Representation + command.request_object = application_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about an application. + # @param [String] apps_id + # Part of `name`. Name of the Application resource to get. Example: apps/myapp. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Application] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Application] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app(apps_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Application::Representation + command.response_class = Google::Apis::AppengineV1beta::Application + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified Application resource. You can update the following + # fields: + # auth_domain - Google authentication domain for controlling user access to the + # application. + # default_cookie_expiration - Cookie expiration policy for the application. + # @param [String] apps_id + # Part of `name`. Name of the Application resource to update. Example: apps/ + # myapp. + # @param [Google::Apis::AppengineV1beta::Application] application_object + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app(apps_id, application_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta/apps/{appsId}', options) + command.request_representation = Google::Apis::AppengineV1beta::Application::Representation + command.request_object = application_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Recreates the required App Engine features for the specified App Engine + # application, for example a Cloud Storage bucket or App Engine service account. + # Use this method if you receive an error message about a missing feature, for + # example, Error retrieving the App Engine service account. + # @param [String] apps_id + # Part of `name`. Name of the application to repair. Example: apps/myapp + # @param [Google::Apis::AppengineV1beta::RepairApplicationRequest] repair_application_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def repair_application(apps_id, repair_application_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps/{appsId}:repair', options) + command.request_representation = Google::Apis::AppengineV1beta::RepairApplicationRequest::Representation + command.request_object = repair_application_request_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Uploads the specified SSL certificate. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Google::Apis::AppengineV1beta::AuthorizedCertificate] authorized_certificate_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::AuthorizedCertificate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::AuthorizedCertificate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_authorized_certificate(apps_id, authorized_certificate_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps/{appsId}/authorizedCertificates', options) + command.request_representation = Google::Apis::AppengineV1beta::AuthorizedCertificate::Representation + command.request_object = authorized_certificate_object + command.response_representation = Google::Apis::AppengineV1beta::AuthorizedCertificate::Representation + command.response_class = Google::Apis::AppengineV1beta::AuthorizedCertificate + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified SSL certificate. + # @param [String] apps_id + # Part of `name`. Name of the resource to delete. Example: apps/myapp/ + # authorizedCertificates/12345. + # @param [String] authorized_certificates_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_authorized_certificate(apps_id, authorized_certificates_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Empty::Representation + command.response_class = Google::Apis::AppengineV1beta::Empty + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['authorizedCertificatesId'] = authorized_certificates_id unless authorized_certificates_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified SSL certificate. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/ + # authorizedCertificates/12345. + # @param [String] authorized_certificates_id + # Part of `name`. See documentation of `appsId`. + # @param [String] view + # Controls the set of fields returned in the GET response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::AuthorizedCertificate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::AuthorizedCertificate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_authorized_certificate(apps_id, authorized_certificates_id, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::AuthorizedCertificate::Representation + command.response_class = Google::Apis::AppengineV1beta::AuthorizedCertificate + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['authorizedCertificatesId'] = authorized_certificates_id unless authorized_certificates_id.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all SSL certificates the user is authorized to administer. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] view + # Controls the set of fields returned in the LIST response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListAuthorizedCertificatesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListAuthorizedCertificatesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_authorized_certificates(apps_id, page_size: nil, page_token: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/authorizedCertificates', options) + command.response_representation = Google::Apis::AppengineV1beta::ListAuthorizedCertificatesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListAuthorizedCertificatesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified SSL certificate. To renew a certificate and maintain its + # existing domain mappings, update certificate_data with a new certificate. The + # new certificate must be applicable to the same domains as the original + # certificate. The certificate display_name may also be updated. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/ + # authorizedCertificates/12345. + # @param [String] authorized_certificates_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta::AuthorizedCertificate] authorized_certificate_object + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. Updates are only + # supported on the certificate_raw_data and display_name fields. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::AuthorizedCertificate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::AuthorizedCertificate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_authorized_certificate(apps_id, authorized_certificates_id, authorized_certificate_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}', options) + command.request_representation = Google::Apis::AppengineV1beta::AuthorizedCertificate::Representation + command.request_object = authorized_certificate_object + command.response_representation = Google::Apis::AppengineV1beta::AuthorizedCertificate::Representation + command.response_class = Google::Apis::AppengineV1beta::AuthorizedCertificate + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['authorizedCertificatesId'] = authorized_certificates_id unless authorized_certificates_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all domains the user is authorized to administer. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListAuthorizedDomainsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListAuthorizedDomainsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_authorized_domains(apps_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/authorizedDomains', options) + command.response_representation = Google::Apis::AppengineV1beta::ListAuthorizedDomainsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListAuthorizedDomainsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Maps a domain to an application. A user must be authorized to administer a + # domain in order to map it to an application. For a list of available + # authorized domains, see AuthorizedDomains.ListAuthorizedDomains. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Google::Apis::AppengineV1beta::DomainMapping] domain_mapping_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_domain_mapping(apps_id, domain_mapping_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps/{appsId}/domainMappings', options) + command.request_representation = Google::Apis::AppengineV1beta::DomainMapping::Representation + command.request_object = domain_mapping_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified domain mapping. A user must be authorized to administer + # the associated domain in order to delete a DomainMapping resource. + # @param [String] apps_id + # Part of `name`. Name of the resource to delete. Example: apps/myapp/ + # domainMappings/example.com. + # @param [String] domain_mappings_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_domain_mapping(apps_id, domain_mappings_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta/apps/{appsId}/domainMappings/{domainMappingsId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['domainMappingsId'] = domain_mappings_id unless domain_mappings_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified domain mapping. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/ + # domainMappings/example.com. + # @param [String] domain_mappings_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::DomainMapping] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::DomainMapping] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_domain_mapping(apps_id, domain_mappings_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/domainMappings/{domainMappingsId}', options) + command.response_representation = Google::Apis::AppengineV1beta::DomainMapping::Representation + command.response_class = Google::Apis::AppengineV1beta::DomainMapping + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['domainMappingsId'] = domain_mappings_id unless domain_mappings_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the domain mappings on an application. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListDomainMappingsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListDomainMappingsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_domain_mappings(apps_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/domainMappings', options) + command.response_representation = Google::Apis::AppengineV1beta::ListDomainMappingsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListDomainMappingsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified domain mapping. To map an SSL certificate to a domain + # mapping, update certificate_id to point to an AuthorizedCertificate resource. + # A user must be authorized to administer the associated domain in order to + # update a DomainMapping resource. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/ + # domainMappings/example.com. + # @param [String] domain_mappings_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta::DomainMapping] domain_mapping_object + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_domain_mapping(apps_id, domain_mappings_id, domain_mapping_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta/apps/{appsId}/domainMappings/{domainMappingsId}', options) + command.request_representation = Google::Apis::AppengineV1beta::DomainMapping::Representation + command.request_object = domain_mapping_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['domainMappingsId'] = domain_mappings_id unless domain_mappings_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Replaces the entire firewall ruleset in one bulk operation. This overrides and + # replaces the rules of an existing firewall with the new rules.If the final + # rule does not match traffic with the '*' wildcard IP range, then an "allow all" + # rule is explicitly added to the end of the list. + # @param [String] apps_id + # Part of `name`. Name of the Firewall collection to set. Example: apps/myapp/ + # firewall/ingressRules. + # @param [Google::Apis::AppengineV1beta::BatchUpdateIngressRulesRequest] batch_update_ingress_rules_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::BatchUpdateIngressRulesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::BatchUpdateIngressRulesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def batch_update_ingress_rules(apps_id, batch_update_ingress_rules_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate', options) + command.request_representation = Google::Apis::AppengineV1beta::BatchUpdateIngressRulesRequest::Representation + command.request_object = batch_update_ingress_rules_request_object + command.response_representation = Google::Apis::AppengineV1beta::BatchUpdateIngressRulesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::BatchUpdateIngressRulesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a firewall rule for the application. + # @param [String] apps_id + # Part of `parent`. Name of the parent Firewall collection in which to create a + # new rule. Example: apps/myapp/firewall/ingressRules. + # @param [Google::Apis::AppengineV1beta::FirewallRule] firewall_rule_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::FirewallRule] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::FirewallRule] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_firewall_ingress_rule(apps_id, firewall_rule_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps/{appsId}/firewall/ingressRules', options) + command.request_representation = Google::Apis::AppengineV1beta::FirewallRule::Representation + command.request_object = firewall_rule_object + command.response_representation = Google::Apis::AppengineV1beta::FirewallRule::Representation + command.response_class = Google::Apis::AppengineV1beta::FirewallRule + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified firewall rule. + # @param [String] apps_id + # Part of `name`. Name of the Firewall resource to delete. Example: apps/myapp/ + # firewall/ingressRules/100. + # @param [String] ingress_rules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_firewall_ingress_rule(apps_id, ingress_rules_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Empty::Representation + command.response_class = Google::Apis::AppengineV1beta::Empty + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['ingressRulesId'] = ingress_rules_id unless ingress_rules_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified firewall rule. + # @param [String] apps_id + # Part of `name`. Name of the Firewall resource to retrieve. Example: apps/myapp/ + # firewall/ingressRules/100. + # @param [String] ingress_rules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::FirewallRule] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::FirewallRule] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_firewall_ingress_rule(apps_id, ingress_rules_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::FirewallRule::Representation + command.response_class = Google::Apis::AppengineV1beta::FirewallRule + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['ingressRulesId'] = ingress_rules_id unless ingress_rules_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the firewall rules of an application. + # @param [String] apps_id + # Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/ + # myapp/firewall/ingressRules. + # @param [String] matching_address + # A valid IP Address. If set, only rules matching this address will be returned. + # The first returned rule will be the rule that fires on requests from this IP. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListIngressRulesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListIngressRulesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_firewall_ingress_rules(apps_id, matching_address: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/firewall/ingressRules', options) + command.response_representation = Google::Apis::AppengineV1beta::ListIngressRulesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListIngressRulesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['matchingAddress'] = matching_address unless matching_address.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified firewall rule. + # @param [String] apps_id + # Part of `name`. Name of the Firewall resource to update. Example: apps/myapp/ + # firewall/ingressRules/100. + # @param [String] ingress_rules_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta::FirewallRule] firewall_rule_object + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::FirewallRule] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::FirewallRule] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_firewall_ingress_rule(apps_id, ingress_rules_id, firewall_rule_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}', options) + command.request_representation = Google::Apis::AppengineV1beta::FirewallRule::Representation + command.request_object = firewall_rule_object + command.response_representation = Google::Apis::AppengineV1beta::FirewallRule::Representation + command.response_class = Google::Apis::AppengineV1beta::FirewallRule + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['ingressRulesId'] = ingress_rules_id unless ingress_rules_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get information about a location. + # @param [String] apps_id + # Part of `name`. Resource name for the location. + # @param [String] locations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Location] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Location] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_location(apps_id, locations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/locations/{locationsId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Location::Representation + command.response_class = Google::Apis::AppengineV1beta::Location + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['locationsId'] = locations_id unless locations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists information about the supported locations for this service. + # @param [String] apps_id + # Part of `name`. The resource that owns the locations collection, if applicable. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListLocationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListLocationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_locations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/locations', options) + command.response_representation = Google::Apis::AppengineV1beta::ListLocationsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListLocationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. The name of the operation resource. + # @param [String] operations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_operation(apps_id, operations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/operations/{operationsId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['operationsId'] = operations_id unless operations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the server + # doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding + # allows API services to override the binding to use different resource name + # schemes, such as users/*/operations. To override the binding, API services can + # add a binding such as "/v1/`name=users/*`/operations" to their service + # configuration. For backwards compatibility, the default name includes the + # operations collection id, however overriding users must ensure the name + # binding is the parent resource, without the operations collection id. + # @param [String] apps_id + # Part of `name`. The name of the operation's parent resource. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_operations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/operations', options) + command.response_representation = Google::Apis::AppengineV1beta::ListOperationsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListOperationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified service and all enclosed versions. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_service(apps_id, services_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta/apps/{appsId}/services/{servicesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the current configuration of the specified service. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Service] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Service] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_service(apps_id, services_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/services/{servicesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Service::Representation + command.response_class = Google::Apis::AppengineV1beta::Service + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all the services in the application. + # @param [String] apps_id + # Part of `parent`. Name of the parent Application resource. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListServicesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListServicesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_services(apps_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/services', options) + command.response_representation = Google::Apis::AppengineV1beta::ListServicesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListServicesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the configuration of the specified service. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/services/ + # default. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta::Service] service_object + # @param [Boolean] migrate_traffic + # Set to true to gradually shift traffic to one or more versions that you + # specify. By default, traffic is shifted immediately. For gradual traffic + # migration, the target versions must be located within instances that are + # configured for both warmup requests (https://cloud.google.com/appengine/docs/ + # admin-api/reference/rest/v1beta/apps.services.versions#inboundservicetype) and + # automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/ + # rest/v1beta/apps.services.versions#automaticscaling). You must specify the + # shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/ + # v1beta/apps.services#shardby) field in the Service resource. Gradual traffic + # migration is not supported in the App Engine flexible environment. For + # examples, see Migrating and Splitting Traffic (https://cloud.google.com/ + # appengine/docs/admin-api/migrating-splitting-traffic). + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_service(apps_id, services_id, service_object = nil, migrate_traffic: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta/apps/{appsId}/services/{servicesId}', options) + command.request_representation = Google::Apis::AppengineV1beta::Service::Representation + command.request_object = service_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['migrateTraffic'] = migrate_traffic unless migrate_traffic.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deploys code and resource files to a new version. + # @param [String] apps_id + # Part of `parent`. Name of the parent resource to create this version under. + # Example: apps/myapp/services/default. + # @param [String] services_id + # Part of `parent`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta::Version] version_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_service_version(apps_id, services_id, version_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps/{appsId}/services/{servicesId}/versions', options) + command.request_representation = Google::Apis::AppengineV1beta::Version::Representation + command.request_object = version_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an existing Version resource. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_service_version(apps_id, services_id, versions_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified Version resource. By default, only a BASIC_VIEW will be + # returned. Specify the FULL_VIEW parameter to get the full resource. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] view + # Controls the set of fields returned in the Get response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Version] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Version] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_service_version(apps_id, services_id, versions_id, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Version::Representation + command.response_class = Google::Apis::AppengineV1beta::Version + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the versions of a service. + # @param [String] apps_id + # Part of `parent`. Name of the parent Service resource. Example: apps/myapp/ + # services/default. + # @param [String] services_id + # Part of `parent`. See documentation of `appsId`. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] view + # Controls the set of fields returned in the List response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListVersionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListVersionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_service_versions(apps_id, services_id, page_size: nil, page_token: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/services/{servicesId}/versions', options) + command.response_representation = Google::Apis::AppengineV1beta::ListVersionsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListVersionsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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/v1beta/apps.services.versions#Version.FIELDS.serving_status): For + # Version resources that use basic scaling, manual scaling, or run in the App + # Engine flexible environment. + # instance_class (https://cloud.google.com/appengine/docs/admin-api/reference/ + # rest/v1beta/apps.services.versions#Version.FIELDS.instance_class): For + # Version resources that run in the App Engine standard environment. + # automatic_scaling.min_idle_instances (https://cloud.google.com/appengine/docs/ + # admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS. + # automatic_scaling): For Version resources that use automatic scaling and run + # in the App Engine standard environment. + # automatic_scaling.max_idle_instances (https://cloud.google.com/appengine/docs/ + # admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS. + # automatic_scaling): For Version resources that use automatic scaling and run + # in the App Engine standard environment. + # automatic_scaling.min_total_instances (https://cloud.google.com/appengine/docs/ + # admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS. + # automatic_scaling): For Version resources that use automatic scaling and run + # in the App Engine Flexible environment. + # automatic_scaling.max_total_instances (https://cloud.google.com/appengine/docs/ + # admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS. + # automatic_scaling): For Version resources that use automatic scaling and run + # in the App Engine Flexible environment. + # automatic_scaling.cool_down_period_sec (https://cloud.google.com/appengine/ + # docs/admin-api/reference/rest/v1beta/apps.services.versions#Version.FIELDS. + # automatic_scaling): For Version resources that use automatic scaling and run + # in the App Engine Flexible environment. + # automatic_scaling.cpu_utilization.target_utilization (https://cloud.google.com/ + # appengine/docs/admin-api/reference/rest/v1beta/apps.services.versions#Version. + # FIELDS.automatic_scaling): For Version resources that use automatic scaling + # and run in the App Engine Flexible environment. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/services/ + # default/versions/1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta::Version] version_object + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_service_version(apps_id, services_id, versions_id, version_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}', options) + command.request_representation = Google::Apis::AppengineV1beta::Version::Representation + command.request_object = version_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1/instances/instance-1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta::DebugInstanceRequest] debug_instance_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def debug_instance(apps_id, services_id, versions_id, instances_id, debug_instance_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug', options) + command.request_representation = Google::Apis::AppengineV1beta::DebugInstanceRequest::Representation + command.request_object = debug_instance_request_object + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Stops a running instance. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1/instances/instance-1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_service_version_instance(apps_id, services_id, versions_id, instances_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets instance information. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1/instances/instance-1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::Instance] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::Instance] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_service_version_instance(apps_id, services_id, versions_id, instances_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}', options) + command.response_representation = Google::Apis::AppengineV1beta::Instance::Representation + command.response_class = Google::Apis::AppengineV1beta::Instance + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the instances of a version.Tip: To aggregate details about instances + # over time, see the Stackdriver Monitoring API (https://cloud.google.com/ + # monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). + # @param [String] apps_id + # Part of `parent`. Name of the parent Version resource. Example: apps/myapp/ + # services/default/versions/v1. + # @param [String] services_id + # Part of `parent`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `parent`. See documentation of `appsId`. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta::ListInstancesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta::ListInstancesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_service_version_instances(apps_id, services_id, versions_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances', options) + command.response_representation = Google::Apis::AppengineV1beta::ListInstancesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta::ListInstancesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta4.rb b/generated/google/apis/appengine_v1beta4.rb new file mode 100644 index 000000000..b39acbe94 --- /dev/null +++ b/generated/google/apis/appengine_v1beta4.rb @@ -0,0 +1,41 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/appengine_v1beta4/service.rb' +require 'google/apis/appengine_v1beta4/classes.rb' +require 'google/apis/appengine_v1beta4/representations.rb' + +module Google + module Apis + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + module AppengineV1beta4 + VERSION = 'V1beta4' + REVISION = '20170714' + + # View and manage your applications deployed on Google App Engine + AUTH_APPENGINE_ADMIN = 'https://www.googleapis.com/auth/appengine.admin' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + end + end +end diff --git a/generated/google/apis/appengine_v1beta4/classes.rb b/generated/google/apis/appengine_v1beta4/classes.rb new file mode 100644 index 000000000..703eb4364 --- /dev/null +++ b/generated/google/apis/appengine_v1beta4/classes.rb @@ -0,0 +1,2170 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta4 + + # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/ + # endpoints/) configuration for API handlers. + class ApiConfigHandler + include Google::Apis::Core::Hashable + + # Action to take when users access resources that require authentication. + # Defaults to redirect. + # Corresponds to the JSON property `authFailAction` + # @return [String] + attr_accessor :auth_fail_action + + # Level of login required to access this resource. Defaults to optional. + # Corresponds to the JSON property `login` + # @return [String] + attr_accessor :login + + # Path to the script from the application root directory. + # Corresponds to the JSON property `script` + # @return [String] + attr_accessor :script + + # Security (HTTPS) enforcement for this URL. + # Corresponds to the JSON property `securityLevel` + # @return [String] + attr_accessor :security_level + + # URL to serve the endpoint at. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action) + @login = args[:login] if args.key?(:login) + @script = args[:script] if args.key?(:script) + @security_level = args[:security_level] if args.key?(:security_level) + @url = args[:url] if args.key?(:url) + end + end + + # Uses Google Cloud Endpoints to handle requests. + class ApiEndpointHandler + include Google::Apis::Core::Hashable + + # Path to the script from the application root directory. + # Corresponds to the JSON property `scriptPath` + # @return [String] + attr_accessor :script_path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @script_path = args[:script_path] if args.key?(:script_path) + end + end + + # An Application resource contains the top-level configuration of an App Engine + # application. + class Application + include Google::Apis::Core::Hashable + + # Google Apps authentication domain that controls which users can access this + # application.Defaults to open access for any Google Account. + # Corresponds to the JSON property `authDomain` + # @return [String] + attr_accessor :auth_domain + + # 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 + # Corresponds to the JSON property `codeBucket` + # @return [String] + attr_accessor :code_bucket + + # Google Cloud Storage bucket that can be used by this application to store + # content.@OutputOnly + # Corresponds to the JSON property `defaultBucket` + # @return [String] + attr_accessor :default_bucket + + # Cookie expiration policy for this application. + # Corresponds to the JSON property `defaultCookieExpiration` + # @return [String] + attr_accessor :default_cookie_expiration + + # Hostname used to reach the application, as resolved by App Engine.@OutputOnly + # Corresponds to the JSON property `defaultHostname` + # @return [String] + attr_accessor :default_hostname + + # HTTP path dispatch rules for requests to the application that do not + # explicitly target a module or version. Rules are order-dependent.@OutputOnly + # Corresponds to the JSON property `dispatchRules` + # @return [Array] + attr_accessor :dispatch_rules + + # Identity-Aware Proxy + # Corresponds to the JSON property `iap` + # @return [Google::Apis::AppengineV1beta4::IdentityAwareProxy] + attr_accessor :iap + + # 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. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Location from which this application will be run. Application instances will + # run out of data centers in the chosen location, which is also where all of the + # application's end user content is stored.Defaults to us-central.Options are:us- + # central - Central USeurope-west - Western Europeus-east1 - Eastern US + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # Full path to the Application resource in the API. Example: apps/myapp.@ + # OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auth_domain = args[:auth_domain] if args.key?(:auth_domain) + @code_bucket = args[:code_bucket] if args.key?(:code_bucket) + @default_bucket = args[:default_bucket] if args.key?(:default_bucket) + @default_cookie_expiration = args[:default_cookie_expiration] if args.key?(:default_cookie_expiration) + @default_hostname = args[:default_hostname] if args.key?(:default_hostname) + @dispatch_rules = args[:dispatch_rules] if args.key?(:dispatch_rules) + @iap = args[:iap] if args.key?(:iap) + @id = args[:id] if args.key?(:id) + @location = args[:location] if args.key?(:location) + @name = args[:name] if args.key?(:name) + end + end + + # Automatic scaling is based on request rate, response latencies, and other + # application metrics. + class AutomaticScaling + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `coolDownPeriod` + # @return [String] + attr_accessor :cool_down_period + + # Target scaling by CPU usage. + # Corresponds to the JSON property `cpuUtilization` + # @return [Google::Apis::AppengineV1beta4::CpuUtilization] + attr_accessor :cpu_utilization + + # Target scaling by disk usage. Only applicable for VM runtimes. + # Corresponds to the JSON property `diskUtilization` + # @return [Google::Apis::AppengineV1beta4::DiskUtilization] + attr_accessor :disk_utilization + + # Number of concurrent requests an automatic scaling instance can accept before + # the scheduler spawns a new instance.Defaults to a runtime-specific value. + # Corresponds to the JSON property `maxConcurrentRequests` + # @return [Fixnum] + attr_accessor :max_concurrent_requests + + # Maximum number of idle instances that should be maintained for this version. + # Corresponds to the JSON property `maxIdleInstances` + # @return [Fixnum] + attr_accessor :max_idle_instances + + # Maximum amount of time that a request should wait in the pending queue before + # starting a new instance to handle it. + # Corresponds to the JSON property `maxPendingLatency` + # @return [String] + attr_accessor :max_pending_latency + + # Maximum number of instances that should be started to handle requests. + # Corresponds to the JSON property `maxTotalInstances` + # @return [Fixnum] + attr_accessor :max_total_instances + + # Minimum number of idle instances that should be maintained for this version. + # Only applicable for the default version of a module. + # Corresponds to the JSON property `minIdleInstances` + # @return [Fixnum] + attr_accessor :min_idle_instances + + # Minimum amount of time a request should wait in the pending queue before + # starting a new instance to handle it. + # Corresponds to the JSON property `minPendingLatency` + # @return [String] + attr_accessor :min_pending_latency + + # Minimum number of instances that should be maintained for this version. + # Corresponds to the JSON property `minTotalInstances` + # @return [Fixnum] + attr_accessor :min_total_instances + + # Target scaling by network usage. Only applicable for VM runtimes. + # Corresponds to the JSON property `networkUtilization` + # @return [Google::Apis::AppengineV1beta4::NetworkUtilization] + attr_accessor :network_utilization + + # Target scaling by request utilization. Only applicable for VM runtimes. + # Corresponds to the JSON property `requestUtilization` + # @return [Google::Apis::AppengineV1beta4::RequestUtilization] + attr_accessor :request_utilization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cool_down_period = args[:cool_down_period] if args.key?(:cool_down_period) + @cpu_utilization = args[:cpu_utilization] if args.key?(:cpu_utilization) + @disk_utilization = args[:disk_utilization] if args.key?(:disk_utilization) + @max_concurrent_requests = args[:max_concurrent_requests] if args.key?(:max_concurrent_requests) + @max_idle_instances = args[:max_idle_instances] if args.key?(:max_idle_instances) + @max_pending_latency = args[:max_pending_latency] if args.key?(:max_pending_latency) + @max_total_instances = args[:max_total_instances] if args.key?(:max_total_instances) + @min_idle_instances = args[:min_idle_instances] if args.key?(:min_idle_instances) + @min_pending_latency = args[:min_pending_latency] if args.key?(:min_pending_latency) + @min_total_instances = args[:min_total_instances] if args.key?(:min_total_instances) + @network_utilization = args[:network_utilization] if args.key?(:network_utilization) + @request_utilization = args[:request_utilization] if args.key?(:request_utilization) + end + end + + # 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. + class BasicScaling + include Google::Apis::Core::Hashable + + # Duration of time after the last request that an instance must wait before the + # instance is shut down. + # Corresponds to the JSON property `idleTimeout` + # @return [String] + attr_accessor :idle_timeout + + # Maximum number of instances to create for this version. + # Corresponds to the JSON property `maxInstances` + # @return [Fixnum] + attr_accessor :max_instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout) + @max_instances = args[:max_instances] if args.key?(:max_instances) + end + end + + # Docker image that is used to create a container and start a VM instance for + # the version that you deploy. Only applicable for instances running in the App + # Engine flexible environment. + class ContainerInfo + include Google::Apis::Core::Hashable + + # URI to the hosted container image in Google Container Registry. The URI must + # be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/ + # image:tag" or "gcr.io/my-project/image@digest" + # Corresponds to the JSON property `image` + # @return [String] + attr_accessor :image + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @image = args[:image] if args.key?(:image) + end + end + + # Target scaling by CPU usage. + class CpuUtilization + include Google::Apis::Core::Hashable + + # Period of time over which CPU utilization is calculated. + # Corresponds to the JSON property `aggregationWindowLength` + # @return [String] + attr_accessor :aggregation_window_length + + # Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1. + # Corresponds to the JSON property `targetUtilization` + # @return [Float] + attr_accessor :target_utilization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @aggregation_window_length = args[:aggregation_window_length] if args.key?(:aggregation_window_length) + @target_utilization = args[:target_utilization] if args.key?(:target_utilization) + end + end + + # Request message for Instances.DebugInstance. + class DebugInstanceRequest + include Google::Apis::Core::Hashable + + # Public SSH key to add to the instance. Examples: + # [USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME] + # [USERNAME]:ssh-rsa [KEY_VALUE] google-ssh `"userName":"[USERNAME]","expireOn":" + # [EXPIRE_TIME]"`For more information, see Adding and Removing SSH Keys (https:// + # cloud.google.com/compute/docs/instances/adding-removing-ssh-keys). + # Corresponds to the JSON property `sshKey` + # @return [String] + attr_accessor :ssh_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ssh_key = args[:ssh_key] if args.key?(:ssh_key) + end + end + + # Code and application artifacts used to deploy a version to App Engine. + class Deployment + include Google::Apis::Core::Hashable + + # Docker image that is used to create a container and start a VM instance for + # the version that you deploy. Only applicable for instances running in the App + # Engine flexible environment. + # Corresponds to the JSON property `container` + # @return [Google::Apis::AppengineV1beta4::ContainerInfo] + attr_accessor :container + + # 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. + # Corresponds to the JSON property `files` + # @return [Hash] + attr_accessor :files + + # 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. + # Corresponds to the JSON property `sourceReferences` + # @return [Array] + attr_accessor :source_references + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @container = args[:container] if args.key?(:container) + @files = args[:files] if args.key?(:files) + @source_references = args[:source_references] if args.key?(:source_references) + end + end + + # Target scaling by disk usage. Only applicable for VM runtimes. + class DiskUtilization + include Google::Apis::Core::Hashable + + # Target bytes read per second. + # Corresponds to the JSON property `targetReadBytesPerSec` + # @return [Fixnum] + attr_accessor :target_read_bytes_per_sec + + # Target ops read per second. + # Corresponds to the JSON property `targetReadOpsPerSec` + # @return [Fixnum] + attr_accessor :target_read_ops_per_sec + + # Target bytes written per second. + # Corresponds to the JSON property `targetWriteBytesPerSec` + # @return [Fixnum] + attr_accessor :target_write_bytes_per_sec + + # Target ops written per second. + # Corresponds to the JSON property `targetWriteOpsPerSec` + # @return [Fixnum] + attr_accessor :target_write_ops_per_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_read_bytes_per_sec = args[:target_read_bytes_per_sec] if args.key?(:target_read_bytes_per_sec) + @target_read_ops_per_sec = args[:target_read_ops_per_sec] if args.key?(:target_read_ops_per_sec) + @target_write_bytes_per_sec = args[:target_write_bytes_per_sec] if args.key?(:target_write_bytes_per_sec) + @target_write_ops_per_sec = args[:target_write_ops_per_sec] if args.key?(:target_write_ops_per_sec) + end + end + + # Custom static error page to be served when an error occurs. + class ErrorHandler + include Google::Apis::Core::Hashable + + # Error condition this handler applies to. + # Corresponds to the JSON property `errorCode` + # @return [String] + attr_accessor :error_code + + # MIME type of file. Defaults to text/html. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # Static file content to be served for this error. + # Corresponds to the JSON property `staticFile` + # @return [String] + attr_accessor :static_file + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_code = args[:error_code] if args.key?(:error_code) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @static_file = args[:static_file] if args.key?(:static_file) + end + end + + # Single source file that is part of the version to be deployed. Each source + # file that is deployed must be specified separately. + class FileInfo + include Google::Apis::Core::Hashable + + # The MIME type of the file.Defaults to the value from Google Cloud Storage. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # The SHA1 hash of the file, in hex. + # Corresponds to the JSON property `sha1Sum` + # @return [String] + attr_accessor :sha1_sum + + # 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//'. + # Corresponds to the JSON property `sourceUrl` + # @return [String] + attr_accessor :source_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @sha1_sum = args[:sha1_sum] if args.key?(:sha1_sum) + @source_url = args[:source_url] if args.key?(:source_url) + end + end + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. Only applicable for instances in App Engine + # flexible environment. + class HealthCheck + include Google::Apis::Core::Hashable + + # Interval between health checks. + # Corresponds to the JSON property `checkInterval` + # @return [String] + attr_accessor :check_interval + + # Whether to explicitly disable health checks for this instance. + # Corresponds to the JSON property `disableHealthCheck` + # @return [Boolean] + attr_accessor :disable_health_check + alias_method :disable_health_check?, :disable_health_check + + # Number of consecutive successful health checks required before receiving + # traffic. + # Corresponds to the JSON property `healthyThreshold` + # @return [Fixnum] + attr_accessor :healthy_threshold + + # Host header to send when performing an HTTP health check. Example: "myapp. + # appspot.com" + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # Number of consecutive failed health checks required before an instance is + # restarted. + # Corresponds to the JSON property `restartThreshold` + # @return [Fixnum] + attr_accessor :restart_threshold + + # Time before the health check is considered failed. + # Corresponds to the JSON property `timeout` + # @return [String] + attr_accessor :timeout + + # Number of consecutive failed health checks required before removing traffic. + # Corresponds to the JSON property `unhealthyThreshold` + # @return [Fixnum] + attr_accessor :unhealthy_threshold + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval = args[:check_interval] if args.key?(:check_interval) + @disable_health_check = args[:disable_health_check] if args.key?(:disable_health_check) + @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold) + @host = args[:host] if args.key?(:host) + @restart_threshold = args[:restart_threshold] if args.key?(:restart_threshold) + @timeout = args[:timeout] if args.key?(:timeout) + @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold) + end + end + + # Identity-Aware Proxy + class IdentityAwareProxy + include Google::Apis::Core::Hashable + + # Whether the serving infrastructure will authenticate and authorize all + # incoming requests.If true, the oauth2_client_id and oauth2_client_secret + # fields must be non-empty. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # OAuth2 client ID to use for the authentication flow. + # Corresponds to the JSON property `oauth2ClientId` + # @return [String] + attr_accessor :oauth2_client_id + + # For security reasons, this value cannot be retrieved via the API. Instead, the + # SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field. + # @InputOnly + # Corresponds to the JSON property `oauth2ClientSecret` + # @return [String] + attr_accessor :oauth2_client_secret + + # Hex-encoded SHA-256 hash of the client secret.@OutputOnly + # Corresponds to the JSON property `oauth2ClientSecretSha256` + # @return [String] + attr_accessor :oauth2_client_secret_sha256 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id) + @oauth2_client_secret = args[:oauth2_client_secret] if args.key?(:oauth2_client_secret) + @oauth2_client_secret_sha256 = args[:oauth2_client_secret_sha256] if args.key?(:oauth2_client_secret_sha256) + end + end + + # An Instance resource is the computing unit that App Engine uses to + # automatically scale an application. + class Instance + include Google::Apis::Core::Hashable + + # App Engine release this instance is running on.@OutputOnly + # Corresponds to the JSON property `appEngineRelease` + # @return [String] + attr_accessor :app_engine_release + + # Availability of the instance.@OutputOnly + # Corresponds to the JSON property `availability` + # @return [String] + attr_accessor :availability + + # Average latency (ms) over the last minute.@OutputOnly + # Corresponds to the JSON property `averageLatency` + # @return [Fixnum] + attr_accessor :average_latency + + # Number of errors since this instance was started.@OutputOnly + # Corresponds to the JSON property `errors` + # @return [Fixnum] + attr_accessor :errors + + # Relative name of the instance within the version. Example: instance-1.@ + # OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Total memory in use (bytes).@OutputOnly + # Corresponds to the JSON property `memoryUsage` + # @return [Fixnum] + attr_accessor :memory_usage + + # Full path to the Instance resource in the API. Example: apps/myapp/modules/ + # default/versions/v1/instances/instance-1.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Average queries per second (QPS) over the last minute.@OutputOnly + # Corresponds to the JSON property `qps` + # @return [Float] + attr_accessor :qps + + # Number of requests since this instance was started.@OutputOnly + # Corresponds to the JSON property `requests` + # @return [Fixnum] + attr_accessor :requests + + # Time that this instance was started.@OutputOnly + # Corresponds to the JSON property `startTimestamp` + # @return [String] + attr_accessor :start_timestamp + + # Virtual machine ID of this instance. Only applicable for instances in App + # Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmId` + # @return [String] + attr_accessor :vm_id + + # The IP address of this instance. Only applicable for instances in App Engine + # flexible environment.@OutputOnly + # Corresponds to the JSON property `vmIp` + # @return [String] + attr_accessor :vm_ip + + # Name of the virtual machine where this instance lives. Only applicable for + # instances in App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmName` + # @return [String] + attr_accessor :vm_name + + # Status of the virtual machine where this instance lives. Only applicable for + # instances in App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmStatus` + # @return [String] + attr_accessor :vm_status + + # Whether this instance is in debug mode. Only applicable for instances in App + # Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmUnlocked` + # @return [Boolean] + attr_accessor :vm_unlocked + alias_method :vm_unlocked?, :vm_unlocked + + # Zone where the virtual machine is located. Only applicable for instances in + # App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmZoneName` + # @return [String] + attr_accessor :vm_zone_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) + @availability = args[:availability] if args.key?(:availability) + @average_latency = args[:average_latency] if args.key?(:average_latency) + @errors = args[:errors] if args.key?(:errors) + @id = args[:id] if args.key?(:id) + @memory_usage = args[:memory_usage] if args.key?(:memory_usage) + @name = args[:name] if args.key?(:name) + @qps = args[:qps] if args.key?(:qps) + @requests = args[:requests] if args.key?(:requests) + @start_timestamp = args[:start_timestamp] if args.key?(:start_timestamp) + @vm_id = args[:vm_id] if args.key?(:vm_id) + @vm_ip = args[:vm_ip] if args.key?(:vm_ip) + @vm_name = args[:vm_name] if args.key?(:vm_name) + @vm_status = args[:vm_status] if args.key?(:vm_status) + @vm_unlocked = args[:vm_unlocked] if args.key?(:vm_unlocked) + @vm_zone_name = args[:vm_zone_name] if args.key?(:vm_zone_name) + end + end + + # Third-party Python runtime library that is required by the application. + class Library + include Google::Apis::Core::Hashable + + # Name of the library. Example: "django". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Version of the library to select, or "latest". + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @version = args[:version] if args.key?(:version) + end + end + + # Response message for Instances.ListInstances. + class ListInstancesResponse + include Google::Apis::Core::Hashable + + # The instances belonging to the requested version. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Locations.ListLocations. + class ListLocationsResponse + include Google::Apis::Core::Hashable + + # A list of locations that matches the specified filter in the request. + # Corresponds to the JSON property `locations` + # @return [Array] + attr_accessor :locations + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locations = args[:locations] if args.key?(:locations) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for Modules.ListModules. + class ListModulesResponse + include Google::Apis::Core::Hashable + + # The modules belonging to the requested application. + # Corresponds to the JSON property `modules` + # @return [Array] + attr_accessor :modules + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @modules = args[:modules] if args.key?(:modules) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # Response message for Versions.ListVersions. + class ListVersionsResponse + include Google::Apis::Core::Hashable + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The versions belonging to the requested module. + # Corresponds to the JSON property `versions` + # @return [Array] + attr_accessor :versions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @versions = args[:versions] if args.key?(:versions) + end + end + + # A resource that represents Google Cloud Platform location. + class Location + include Google::Apis::Core::Hashable + + # Cross-service attributes for the location. For example + # `"cloud.googleapis.com/region": "us-east1"` + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The canonical id for this location. For example: "us-east1". + # Corresponds to the JSON property `locationId` + # @return [String] + attr_accessor :location_id + + # Service-specific metadata. For example the available capacity at the given + # location. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Resource name for the location, which may vary between implementations. For + # example: "projects/example-project/locations/us-east1" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @location_id = args[:location_id] if args.key?(:location_id) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + end + end + + # Metadata for the given google.cloud.location.Location. + class LocationMetadata + include Google::Apis::Core::Hashable + + # App Engine Flexible Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `flexibleEnvironmentAvailable` + # @return [Boolean] + attr_accessor :flexible_environment_available + alias_method :flexible_environment_available?, :flexible_environment_available + + # App Engine Standard Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `standardEnvironmentAvailable` + # @return [Boolean] + attr_accessor :standard_environment_available + alias_method :standard_environment_available?, :standard_environment_available + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @flexible_environment_available = args[:flexible_environment_available] if args.key?(:flexible_environment_available) + @standard_environment_available = args[:standard_environment_available] if args.key?(:standard_environment_available) + end + end + + # A module with manual scaling runs continuously, allowing you to perform + # complex initialization and rely on the state of its memory over time. + class ManualScaling + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `instances` + # @return [Fixnum] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # 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. + class Module + include Google::Apis::Core::Hashable + + # Relative name of the module within the application. Example: default.@ + # OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the Module resource in the API. Example: apps/myapp/modules/ + # default.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Traffic routing configuration for versions within a single module. Traffic + # splits define how traffic directed to the module is assigned to versions. + # Corresponds to the JSON property `split` + # @return [Google::Apis::AppengineV1beta4::TrafficSplit] + attr_accessor :split + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + @split = args[:split] if args.key?(:split) + end + end + + # Extra network settings. Only applicable for VM runtimes. + class Network + include Google::Apis::Core::Hashable + + # List of ports, or port pairs, to forward from the virtual machine to the + # application container. + # Corresponds to the JSON property `forwardedPorts` + # @return [Array] + attr_accessor :forwarded_ports + + # Tag to apply to the VM instance during creation. + # Corresponds to the JSON property `instanceTag` + # @return [String] + attr_accessor :instance_tag + + # Google Cloud Platform network where the virtual machines are created. Specify + # the short name, not the resource path.Defaults to default. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @forwarded_ports = args[:forwarded_ports] if args.key?(:forwarded_ports) + @instance_tag = args[:instance_tag] if args.key?(:instance_tag) + @name = args[:name] if args.key?(:name) + end + end + + # Target scaling by network usage. Only applicable for VM runtimes. + class NetworkUtilization + include Google::Apis::Core::Hashable + + # Target bytes received per second. + # Corresponds to the JSON property `targetReceivedBytesPerSec` + # @return [Fixnum] + attr_accessor :target_received_bytes_per_sec + + # Target packets received per second. + # Corresponds to the JSON property `targetReceivedPacketsPerSec` + # @return [Fixnum] + attr_accessor :target_received_packets_per_sec + + # Target bytes sent per second. + # Corresponds to the JSON property `targetSentBytesPerSec` + # @return [Fixnum] + attr_accessor :target_sent_bytes_per_sec + + # Target packets sent per second. + # Corresponds to the JSON property `targetSentPacketsPerSec` + # @return [Fixnum] + attr_accessor :target_sent_packets_per_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_received_bytes_per_sec = args[:target_received_bytes_per_sec] if args.key?(:target_received_bytes_per_sec) + @target_received_packets_per_sec = args[:target_received_packets_per_sec] if args.key?(:target_received_packets_per_sec) + @target_sent_bytes_per_sec = args[:target_sent_bytes_per_sec] if args.key?(:target_sent_bytes_per_sec) + @target_sent_packets_per_sec = args[:target_sent_packets_per_sec] if args.key?(:target_sent_packets_per_sec) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::AppengineV1beta4::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadata + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta4. + # Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Type of this operation. Deprecated, use method field instead. Example: " + # create_version".@OutputOnly + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # modules/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataExperimental + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine. + # experimental.CustomDomains.CreateCustomDomain.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # customDomains/example.com.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1 + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Alpha + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1alpha. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta5 + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method name that initiated this operation. Example: google.appengine. + # v1beta5.Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Target scaling by request utilization. Only applicable for VM runtimes. + class RequestUtilization + include Google::Apis::Core::Hashable + + # Target number of concurrent requests. + # Corresponds to the JSON property `targetConcurrentRequests` + # @return [Fixnum] + attr_accessor :target_concurrent_requests + + # Target requests per second. + # Corresponds to the JSON property `targetRequestCountPerSec` + # @return [Fixnum] + attr_accessor :target_request_count_per_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_concurrent_requests = args[:target_concurrent_requests] if args.key?(:target_concurrent_requests) + @target_request_count_per_sec = args[:target_request_count_per_sec] if args.key?(:target_request_count_per_sec) + end + end + + # Machine resources for a version. + class Resources + include Google::Apis::Core::Hashable + + # Number of CPU cores needed. + # Corresponds to the JSON property `cpu` + # @return [Float] + attr_accessor :cpu + + # Disk size (GB) needed. + # Corresponds to the JSON property `diskGb` + # @return [Float] + attr_accessor :disk_gb + + # Memory (GB) needed. + # Corresponds to the JSON property `memoryGb` + # @return [Float] + attr_accessor :memory_gb + + # User specified volumes. + # Corresponds to the JSON property `volumes` + # @return [Array] + attr_accessor :volumes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cpu = args[:cpu] if args.key?(:cpu) + @disk_gb = args[:disk_gb] if args.key?(:disk_gb) + @memory_gb = args[:memory_gb] if args.key?(:memory_gb) + @volumes = args[:volumes] if args.key?(:volumes) + end + end + + # Executes a script to handle the request that matches the URL pattern. + class ScriptHandler + include Google::Apis::Core::Hashable + + # Path to the script from the application root directory. + # Corresponds to the JSON property `scriptPath` + # @return [String] + attr_accessor :script_path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @script_path = args[:script_path] if args.key?(:script_path) + end + end + + # Reference to a particular snapshot of the source tree used to build and deploy + # the application. + class SourceReference + include Google::Apis::Core::Hashable + + # URI string identifying the repository. Example: "https://source.developers. + # google.com/p/app-123/r/default" + # Corresponds to the JSON property `repository` + # @return [String] + attr_accessor :repository + + # The canonical, persistent identifier of the deployed revision. Aliases that + # include tags or branch names are not allowed. Example (git): " + # 2198322f89e0bb2e25021667c2ed489d1fd34e6b" + # Corresponds to the JSON property `revisionId` + # @return [String] + attr_accessor :revision_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @repository = args[:repository] if args.key?(:repository) + @revision_id = args[:revision_id] if args.key?(:revision_id) + end + end + + # 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. + class StaticDirectoryHandler + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `applicationReadable` + # @return [Boolean] + attr_accessor :application_readable + alias_method :application_readable?, :application_readable + + # 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. + # Corresponds to the JSON property `directory` + # @return [String] + attr_accessor :directory + + # Time a static file served by this handler should be cached. + # Corresponds to the JSON property `expiration` + # @return [String] + attr_accessor :expiration + + # HTTP headers to use for all responses from these URLs. + # Corresponds to the JSON property `httpHeaders` + # @return [Hash] + attr_accessor :http_headers + + # 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. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # Whether this handler should match the request if the file referenced by the + # handler does not exist. + # Corresponds to the JSON property `requireMatchingFile` + # @return [Boolean] + attr_accessor :require_matching_file + alias_method :require_matching_file?, :require_matching_file + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @application_readable = args[:application_readable] if args.key?(:application_readable) + @directory = args[:directory] if args.key?(:directory) + @expiration = args[:expiration] if args.key?(:expiration) + @http_headers = args[:http_headers] if args.key?(:http_headers) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @require_matching_file = args[:require_matching_file] if args.key?(:require_matching_file) + end + end + + # 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. + class StaticFilesHandler + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `applicationReadable` + # @return [Boolean] + attr_accessor :application_readable + alias_method :application_readable?, :application_readable + + # Time a static file served by this handler should be cached. + # Corresponds to the JSON property `expiration` + # @return [String] + attr_accessor :expiration + + # HTTP headers to use for all responses from these URLs. + # Corresponds to the JSON property `httpHeaders` + # @return [Hash] + attr_accessor :http_headers + + # 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. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # 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. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Whether this handler should match the request if the file referenced by the + # handler does not exist. + # Corresponds to the JSON property `requireMatchingFile` + # @return [Boolean] + attr_accessor :require_matching_file + alias_method :require_matching_file?, :require_matching_file + + # Regular expression that matches the file paths for all files that should be + # referenced by this handler. + # Corresponds to the JSON property `uploadPathRegex` + # @return [String] + attr_accessor :upload_path_regex + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @application_readable = args[:application_readable] if args.key?(:application_readable) + @expiration = args[:expiration] if args.key?(:expiration) + @http_headers = args[:http_headers] if args.key?(:http_headers) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @path = args[:path] if args.key?(:path) + @require_matching_file = args[:require_matching_file] if args.key?(:require_matching_file) + @upload_path_regex = args[:upload_path_regex] if args.key?(:upload_path_regex) + end + end + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Traffic routing configuration for versions within a single module. Traffic + # splits define how traffic directed to the module is assigned to versions. + class TrafficSplit + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `allocations` + # @return [Hash] + attr_accessor :allocations + + # 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. + # Corresponds to the JSON property `shardBy` + # @return [String] + attr_accessor :shard_by + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allocations = args[:allocations] if args.key?(:allocations) + @shard_by = args[:shard_by] if args.key?(:shard_by) + end + end + + # Rules to match an HTTP request and dispatch that request to a module. + class UrlDispatchRule + include Google::Apis::Core::Hashable + + # Domain name to match against. The wildcard "*" is supported if specified + # before a period: "*.".Defaults to matching all domains: "*". + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # Resource ID of a module in this application that should serve the matched + # request. The module must already exist. Example: default. + # Corresponds to the JSON property `module` + # @return [String] + attr_accessor :module + + # 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. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domain = args[:domain] if args.key?(:domain) + @module = args[:module] if args.key?(:module) + @path = args[:path] if args.key?(:path) + end + end + + # 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. + class UrlMap + include Google::Apis::Core::Hashable + + # Uses Google Cloud Endpoints to handle requests. + # Corresponds to the JSON property `apiEndpoint` + # @return [Google::Apis::AppengineV1beta4::ApiEndpointHandler] + attr_accessor :api_endpoint + + # Action to take when users access resources that require authentication. + # Defaults to redirect. + # Corresponds to the JSON property `authFailAction` + # @return [String] + attr_accessor :auth_fail_action + + # Level of login required to access this resource. + # Corresponds to the JSON property `login` + # @return [String] + attr_accessor :login + + # 30x code to use when performing redirects for the secure field. Defaults to + # 302. + # Corresponds to the JSON property `redirectHttpResponseCode` + # @return [String] + attr_accessor :redirect_http_response_code + + # Executes a script to handle the request that matches the URL pattern. + # Corresponds to the JSON property `script` + # @return [Google::Apis::AppengineV1beta4::ScriptHandler] + attr_accessor :script + + # Security (HTTPS) enforcement for this URL. + # Corresponds to the JSON property `securityLevel` + # @return [String] + attr_accessor :security_level + + # 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. + # Corresponds to the JSON property `staticDirectory` + # @return [Google::Apis::AppengineV1beta4::StaticDirectoryHandler] + attr_accessor :static_directory + + # 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. + # Corresponds to the JSON property `staticFiles` + # @return [Google::Apis::AppengineV1beta4::StaticFilesHandler] + attr_accessor :static_files + + # 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. + # Corresponds to the JSON property `urlRegex` + # @return [String] + attr_accessor :url_regex + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @api_endpoint = args[:api_endpoint] if args.key?(:api_endpoint) + @auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action) + @login = args[:login] if args.key?(:login) + @redirect_http_response_code = args[:redirect_http_response_code] if args.key?(:redirect_http_response_code) + @script = args[:script] if args.key?(:script) + @security_level = args[:security_level] if args.key?(:security_level) + @static_directory = args[:static_directory] if args.key?(:static_directory) + @static_files = args[:static_files] if args.key?(:static_files) + @url_regex = args[:url_regex] if args.key?(:url_regex) + end + end + + # A Version resource is a specific set of source code and configuration files + # that are deployed into a module. + class Version + include Google::Apis::Core::Hashable + + # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/ + # endpoints/) configuration for API handlers. + # Corresponds to the JSON property `apiConfig` + # @return [Google::Apis::AppengineV1beta4::ApiConfigHandler] + attr_accessor :api_config + + # Automatic scaling is based on request rate, response latencies, and other + # application metrics. + # Corresponds to the JSON property `automaticScaling` + # @return [Google::Apis::AppengineV1beta4::AutomaticScaling] + attr_accessor :automatic_scaling + + # 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. + # Corresponds to the JSON property `basicScaling` + # @return [Google::Apis::AppengineV1beta4::BasicScaling] + attr_accessor :basic_scaling + + # Metadata settings that are supplied to this version to enable beta runtime + # features. + # Corresponds to the JSON property `betaSettings` + # @return [Hash] + attr_accessor :beta_settings + + # Time that this version was created.@OutputOnly + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + + # 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. + # Corresponds to the JSON property `defaultExpiration` + # @return [String] + attr_accessor :default_expiration + + # Email address of the user who created this version.@OutputOnly + # Corresponds to the JSON property `deployer` + # @return [String] + attr_accessor :deployer + + # Code and application artifacts used to deploy a version to App Engine. + # Corresponds to the JSON property `deployment` + # @return [Google::Apis::AppengineV1beta4::Deployment] + attr_accessor :deployment + + # App Engine execution environment to use for this version.Defaults to 1. + # Corresponds to the JSON property `env` + # @return [String] + attr_accessor :env + + # Environment variables made available to the application.Only returned in GET + # requests if view=FULL is set. + # Corresponds to the JSON property `envVariables` + # @return [Hash] + attr_accessor :env_variables + + # Custom static error pages. Limited to 10KB per page.Only returned in GET + # requests if view=FULL is set. + # Corresponds to the JSON property `errorHandlers` + # @return [Array] + attr_accessor :error_handlers + + # 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. + # Corresponds to the JSON property `handlers` + # @return [Array] + attr_accessor :handlers + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. Only applicable for instances in App Engine + # flexible environment. + # Corresponds to the JSON property `healthCheck` + # @return [Google::Apis::AppengineV1beta4::HealthCheck] + attr_accessor :health_check + + # 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-". + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Before an application can receive email or XMPP messages, the application must + # be configured to enable the service. + # Corresponds to the JSON property `inboundServices` + # @return [Array] + attr_accessor :inbound_services + + # 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_1GDefaults to F1 for + # AutomaticScaling and B1 for ManualScaling or BasicScaling. + # Corresponds to the JSON property `instanceClass` + # @return [String] + attr_accessor :instance_class + + # Configuration for third-party Python runtime libraries required by the + # application.Only returned in GET requests if view=FULL is set. + # Corresponds to the JSON property `libraries` + # @return [Array] + attr_accessor :libraries + + # A module with manual scaling runs continuously, allowing you to perform + # complex initialization and rely on the state of its memory over time. + # Corresponds to the JSON property `manualScaling` + # @return [Google::Apis::AppengineV1beta4::ManualScaling] + attr_accessor :manual_scaling + + # Full path to the Version resource in the API. Example: apps/myapp/modules/ + # default/versions/v1.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Extra network settings. Only applicable for VM runtimes. + # Corresponds to the JSON property `network` + # @return [Google::Apis::AppengineV1beta4::Network] + attr_accessor :network + + # 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. + # Corresponds to the JSON property `nobuildFilesRegex` + # @return [String] + attr_accessor :nobuild_files_regex + + # Machine resources for a version. + # Corresponds to the JSON property `resources` + # @return [Google::Apis::AppengineV1beta4::Resources] + attr_accessor :resources + + # Desired runtime. Example: python27. + # Corresponds to the JSON property `runtime` + # @return [String] + attr_accessor :runtime + + # The version of the API in the given runtime environment. Please see the app. + # yaml reference for valid values at https://cloud.google.com/appengine/docs/ + # standard//config/appref + # Corresponds to the JSON property `runtimeApiVersion` + # @return [String] + attr_accessor :runtime_api_version + + # 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. + # Corresponds to the JSON property `servingStatus` + # @return [String] + attr_accessor :serving_status + + # Whether multiple requests can be dispatched to this version at once. + # Corresponds to the JSON property `threadsafe` + # @return [Boolean] + attr_accessor :threadsafe + alias_method :threadsafe?, :threadsafe + + # Whether to deploy this version in a container on a virtual machine. + # Corresponds to the JSON property `vm` + # @return [Boolean] + attr_accessor :vm + alias_method :vm?, :vm + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @api_config = args[:api_config] if args.key?(:api_config) + @automatic_scaling = args[:automatic_scaling] if args.key?(:automatic_scaling) + @basic_scaling = args[:basic_scaling] if args.key?(:basic_scaling) + @beta_settings = args[:beta_settings] if args.key?(:beta_settings) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @default_expiration = args[:default_expiration] if args.key?(:default_expiration) + @deployer = args[:deployer] if args.key?(:deployer) + @deployment = args[:deployment] if args.key?(:deployment) + @env = args[:env] if args.key?(:env) + @env_variables = args[:env_variables] if args.key?(:env_variables) + @error_handlers = args[:error_handlers] if args.key?(:error_handlers) + @handlers = args[:handlers] if args.key?(:handlers) + @health_check = args[:health_check] if args.key?(:health_check) + @id = args[:id] if args.key?(:id) + @inbound_services = args[:inbound_services] if args.key?(:inbound_services) + @instance_class = args[:instance_class] if args.key?(:instance_class) + @libraries = args[:libraries] if args.key?(:libraries) + @manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @nobuild_files_regex = args[:nobuild_files_regex] if args.key?(:nobuild_files_regex) + @resources = args[:resources] if args.key?(:resources) + @runtime = args[:runtime] if args.key?(:runtime) + @runtime_api_version = args[:runtime_api_version] if args.key?(:runtime_api_version) + @serving_status = args[:serving_status] if args.key?(:serving_status) + @threadsafe = args[:threadsafe] if args.key?(:threadsafe) + @vm = args[:vm] if args.key?(:vm) + end + end + + # Volumes mounted within the app container. Only applicable for VM runtimes. + class Volume + include Google::Apis::Core::Hashable + + # Unique name for the volume. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Volume size in gigabytes. + # Corresponds to the JSON property `sizeGb` + # @return [Float] + attr_accessor :size_gb + + # Underlying volume type, e.g. 'tmpfs'. + # Corresponds to the JSON property `volumeType` + # @return [String] + attr_accessor :volume_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @size_gb = args[:size_gb] if args.key?(:size_gb) + @volume_type = args[:volume_type] if args.key?(:volume_type) + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta4/representations.rb b/generated/google/apis/appengine_v1beta4/representations.rb new file mode 100644 index 000000000..88b102ee5 --- /dev/null +++ b/generated/google/apis/appengine_v1beta4/representations.rb @@ -0,0 +1,824 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta4 + + class ApiConfigHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApiEndpointHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Application + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutomaticScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BasicScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ContainerInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CpuUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DebugInstanceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Deployment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ErrorHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FileInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IdentityAwareProxy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Instance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Library + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListInstancesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListLocationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListModulesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListVersionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Location + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LocationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManualScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Module + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Network + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataExperimental + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Alpha + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta5 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RequestUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Resources + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ScriptHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StaticDirectoryHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StaticFilesHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TrafficSplit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlDispatchRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMap + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Version + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Volume + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApiConfigHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auth_fail_action, as: 'authFailAction' + property :login, as: 'login' + property :script, as: 'script' + property :security_level, as: 'securityLevel' + property :url, as: 'url' + end + end + + class ApiEndpointHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :script_path, as: 'scriptPath' + end + end + + class Application + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auth_domain, as: 'authDomain' + property :code_bucket, as: 'codeBucket' + property :default_bucket, as: 'defaultBucket' + property :default_cookie_expiration, as: 'defaultCookieExpiration' + property :default_hostname, as: 'defaultHostname' + collection :dispatch_rules, as: 'dispatchRules', class: Google::Apis::AppengineV1beta4::UrlDispatchRule, decorator: Google::Apis::AppengineV1beta4::UrlDispatchRule::Representation + + property :iap, as: 'iap', class: Google::Apis::AppengineV1beta4::IdentityAwareProxy, decorator: Google::Apis::AppengineV1beta4::IdentityAwareProxy::Representation + + property :id, as: 'id' + property :location, as: 'location' + property :name, as: 'name' + end + end + + class AutomaticScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cool_down_period, as: 'coolDownPeriod' + property :cpu_utilization, as: 'cpuUtilization', class: Google::Apis::AppengineV1beta4::CpuUtilization, decorator: Google::Apis::AppengineV1beta4::CpuUtilization::Representation + + property :disk_utilization, as: 'diskUtilization', class: Google::Apis::AppengineV1beta4::DiskUtilization, decorator: Google::Apis::AppengineV1beta4::DiskUtilization::Representation + + property :max_concurrent_requests, as: 'maxConcurrentRequests' + property :max_idle_instances, as: 'maxIdleInstances' + property :max_pending_latency, as: 'maxPendingLatency' + property :max_total_instances, as: 'maxTotalInstances' + property :min_idle_instances, as: 'minIdleInstances' + property :min_pending_latency, as: 'minPendingLatency' + property :min_total_instances, as: 'minTotalInstances' + property :network_utilization, as: 'networkUtilization', class: Google::Apis::AppengineV1beta4::NetworkUtilization, decorator: Google::Apis::AppengineV1beta4::NetworkUtilization::Representation + + property :request_utilization, as: 'requestUtilization', class: Google::Apis::AppengineV1beta4::RequestUtilization, decorator: Google::Apis::AppengineV1beta4::RequestUtilization::Representation + + end + end + + class BasicScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :idle_timeout, as: 'idleTimeout' + property :max_instances, as: 'maxInstances' + end + end + + class ContainerInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :image, as: 'image' + end + end + + class CpuUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :aggregation_window_length, as: 'aggregationWindowLength' + property :target_utilization, as: 'targetUtilization' + end + end + + class DebugInstanceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ssh_key, as: 'sshKey' + end + end + + class Deployment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :container, as: 'container', class: Google::Apis::AppengineV1beta4::ContainerInfo, decorator: Google::Apis::AppengineV1beta4::ContainerInfo::Representation + + hash :files, as: 'files', class: Google::Apis::AppengineV1beta4::FileInfo, decorator: Google::Apis::AppengineV1beta4::FileInfo::Representation + + collection :source_references, as: 'sourceReferences', class: Google::Apis::AppengineV1beta4::SourceReference, decorator: Google::Apis::AppengineV1beta4::SourceReference::Representation + + end + end + + class DiskUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_read_bytes_per_sec, as: 'targetReadBytesPerSec' + property :target_read_ops_per_sec, as: 'targetReadOpsPerSec' + property :target_write_bytes_per_sec, as: 'targetWriteBytesPerSec' + property :target_write_ops_per_sec, as: 'targetWriteOpsPerSec' + end + end + + class ErrorHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_code, as: 'errorCode' + property :mime_type, as: 'mimeType' + property :static_file, as: 'staticFile' + end + end + + class FileInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :mime_type, as: 'mimeType' + property :sha1_sum, as: 'sha1Sum' + property :source_url, as: 'sourceUrl' + end + end + + class HealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval, as: 'checkInterval' + property :disable_health_check, as: 'disableHealthCheck' + property :healthy_threshold, as: 'healthyThreshold' + property :host, as: 'host' + property :restart_threshold, as: 'restartThreshold' + property :timeout, as: 'timeout' + property :unhealthy_threshold, as: 'unhealthyThreshold' + end + end + + class IdentityAwareProxy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + property :oauth2_client_id, as: 'oauth2ClientId' + property :oauth2_client_secret, as: 'oauth2ClientSecret' + property :oauth2_client_secret_sha256, as: 'oauth2ClientSecretSha256' + end + end + + class Instance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_engine_release, as: 'appEngineRelease' + property :availability, as: 'availability' + property :average_latency, as: 'averageLatency' + property :errors, as: 'errors' + property :id, as: 'id' + property :memory_usage, :numeric_string => true, as: 'memoryUsage' + property :name, as: 'name' + property :qps, as: 'qps' + property :requests, as: 'requests' + property :start_timestamp, as: 'startTimestamp' + property :vm_id, as: 'vmId' + property :vm_ip, as: 'vmIp' + property :vm_name, as: 'vmName' + property :vm_status, as: 'vmStatus' + property :vm_unlocked, as: 'vmUnlocked' + property :vm_zone_name, as: 'vmZoneName' + end + end + + class Library + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :version, as: 'version' + end + end + + class ListInstancesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::AppengineV1beta4::Instance, decorator: Google::Apis::AppengineV1beta4::Instance::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListLocationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :locations, as: 'locations', class: Google::Apis::AppengineV1beta4::Location, decorator: Google::Apis::AppengineV1beta4::Location::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListModulesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :modules, as: 'modules', class: Google::Apis::AppengineV1beta4::Module, decorator: Google::Apis::AppengineV1beta4::Module::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::AppengineV1beta4::Operation, decorator: Google::Apis::AppengineV1beta4::Operation::Representation + + end + end + + class ListVersionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :versions, as: 'versions', class: Google::Apis::AppengineV1beta4::Version, decorator: Google::Apis::AppengineV1beta4::Version::Representation + + end + end + + class Location + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + property :location_id, as: 'locationId' + hash :metadata, as: 'metadata' + property :name, as: 'name' + end + end + + class LocationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :flexible_environment_available, as: 'flexibleEnvironmentAvailable' + property :standard_environment_available, as: 'standardEnvironmentAvailable' + end + end + + class ManualScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instances, as: 'instances' + end + end + + class Module + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :name, as: 'name' + property :split, as: 'split', class: Google::Apis::AppengineV1beta4::TrafficSplit, decorator: Google::Apis::AppengineV1beta4::TrafficSplit::Representation + + end + end + + class Network + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :forwarded_ports, as: 'forwardedPorts' + property :instance_tag, as: 'instanceTag' + property :name, as: 'name' + end + end + + class NetworkUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_received_bytes_per_sec, as: 'targetReceivedBytesPerSec' + property :target_received_packets_per_sec, as: 'targetReceivedPacketsPerSec' + property :target_sent_bytes_per_sec, as: 'targetSentBytesPerSec' + property :target_sent_packets_per_sec, as: 'targetSentPacketsPerSec' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::AppengineV1beta4::Status, decorator: Google::Apis::AppengineV1beta4::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :operation_type, as: 'operationType' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataExperimental + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataV1 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Alpha + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta5 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class RequestUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_concurrent_requests, as: 'targetConcurrentRequests' + property :target_request_count_per_sec, as: 'targetRequestCountPerSec' + end + end + + class Resources + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cpu, as: 'cpu' + property :disk_gb, as: 'diskGb' + property :memory_gb, as: 'memoryGb' + collection :volumes, as: 'volumes', class: Google::Apis::AppengineV1beta4::Volume, decorator: Google::Apis::AppengineV1beta4::Volume::Representation + + end + end + + class ScriptHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :script_path, as: 'scriptPath' + end + end + + class SourceReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :repository, as: 'repository' + property :revision_id, as: 'revisionId' + end + end + + class StaticDirectoryHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :application_readable, as: 'applicationReadable' + property :directory, as: 'directory' + property :expiration, as: 'expiration' + hash :http_headers, as: 'httpHeaders' + property :mime_type, as: 'mimeType' + property :require_matching_file, as: 'requireMatchingFile' + end + end + + class StaticFilesHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :application_readable, as: 'applicationReadable' + property :expiration, as: 'expiration' + hash :http_headers, as: 'httpHeaders' + property :mime_type, as: 'mimeType' + property :path, as: 'path' + property :require_matching_file, as: 'requireMatchingFile' + property :upload_path_regex, as: 'uploadPathRegex' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TrafficSplit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :allocations, as: 'allocations' + property :shard_by, as: 'shardBy' + end + end + + class UrlDispatchRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :domain, as: 'domain' + property :module, as: 'module' + property :path, as: 'path' + end + end + + class UrlMap + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_endpoint, as: 'apiEndpoint', class: Google::Apis::AppengineV1beta4::ApiEndpointHandler, decorator: Google::Apis::AppengineV1beta4::ApiEndpointHandler::Representation + + property :auth_fail_action, as: 'authFailAction' + property :login, as: 'login' + property :redirect_http_response_code, as: 'redirectHttpResponseCode' + property :script, as: 'script', class: Google::Apis::AppengineV1beta4::ScriptHandler, decorator: Google::Apis::AppengineV1beta4::ScriptHandler::Representation + + property :security_level, as: 'securityLevel' + property :static_directory, as: 'staticDirectory', class: Google::Apis::AppengineV1beta4::StaticDirectoryHandler, decorator: Google::Apis::AppengineV1beta4::StaticDirectoryHandler::Representation + + property :static_files, as: 'staticFiles', class: Google::Apis::AppengineV1beta4::StaticFilesHandler, decorator: Google::Apis::AppengineV1beta4::StaticFilesHandler::Representation + + property :url_regex, as: 'urlRegex' + end + end + + class Version + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_config, as: 'apiConfig', class: Google::Apis::AppengineV1beta4::ApiConfigHandler, decorator: Google::Apis::AppengineV1beta4::ApiConfigHandler::Representation + + property :automatic_scaling, as: 'automaticScaling', class: Google::Apis::AppengineV1beta4::AutomaticScaling, decorator: Google::Apis::AppengineV1beta4::AutomaticScaling::Representation + + property :basic_scaling, as: 'basicScaling', class: Google::Apis::AppengineV1beta4::BasicScaling, decorator: Google::Apis::AppengineV1beta4::BasicScaling::Representation + + hash :beta_settings, as: 'betaSettings' + property :creation_time, as: 'creationTime' + property :default_expiration, as: 'defaultExpiration' + property :deployer, as: 'deployer' + property :deployment, as: 'deployment', class: Google::Apis::AppengineV1beta4::Deployment, decorator: Google::Apis::AppengineV1beta4::Deployment::Representation + + property :env, as: 'env' + hash :env_variables, as: 'envVariables' + collection :error_handlers, as: 'errorHandlers', class: Google::Apis::AppengineV1beta4::ErrorHandler, decorator: Google::Apis::AppengineV1beta4::ErrorHandler::Representation + + collection :handlers, as: 'handlers', class: Google::Apis::AppengineV1beta4::UrlMap, decorator: Google::Apis::AppengineV1beta4::UrlMap::Representation + + property :health_check, as: 'healthCheck', class: Google::Apis::AppengineV1beta4::HealthCheck, decorator: Google::Apis::AppengineV1beta4::HealthCheck::Representation + + property :id, as: 'id' + collection :inbound_services, as: 'inboundServices' + property :instance_class, as: 'instanceClass' + collection :libraries, as: 'libraries', class: Google::Apis::AppengineV1beta4::Library, decorator: Google::Apis::AppengineV1beta4::Library::Representation + + property :manual_scaling, as: 'manualScaling', class: Google::Apis::AppengineV1beta4::ManualScaling, decorator: Google::Apis::AppengineV1beta4::ManualScaling::Representation + + property :name, as: 'name' + property :network, as: 'network', class: Google::Apis::AppengineV1beta4::Network, decorator: Google::Apis::AppengineV1beta4::Network::Representation + + property :nobuild_files_regex, as: 'nobuildFilesRegex' + property :resources, as: 'resources', class: Google::Apis::AppengineV1beta4::Resources, decorator: Google::Apis::AppengineV1beta4::Resources::Representation + + property :runtime, as: 'runtime' + property :runtime_api_version, as: 'runtimeApiVersion' + property :serving_status, as: 'servingStatus' + property :threadsafe, as: 'threadsafe' + property :vm, as: 'vm' + end + end + + class Volume + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :size_gb, as: 'sizeGb' + property :volume_type, as: 'volumeType' + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta4/service.rb b/generated/google/apis/appengine_v1beta4/service.rb new file mode 100644 index 000000000..9705238a1 --- /dev/null +++ b/generated/google/apis/appengine_v1beta4/service.rb @@ -0,0 +1,876 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta4 + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @example + # require 'google/apis/appengine_v1beta4' + # + # Appengine = Google::Apis::AppengineV1beta4 # Alias the module + # service = Appengine::AppengineService.new + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + class AppengineService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://appengine.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates an App Engine application for a Google Cloud Platform project. + # Required fields: + # id - The ID of the target Cloud Platform project. + # location - The region (https://cloud.google.com/appengine/docs/locations) + # where you want the App Engine application located.For more information about + # App Engine applications, see Managing Projects, Applications, and Billing ( + # https://cloud.google.com/appengine/docs/python/console/). + # @param [Google::Apis::AppengineV1beta4::Application] application_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app(application_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta4/apps', options) + command.request_representation = Google::Apis::AppengineV1beta4::Application::Representation + command.request_object = application_object + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about an application. + # @param [String] apps_id + # Part of `name`. Name of the application to get. Example: apps/myapp. + # @param [Boolean] ensure_resources_exist + # Certain resources associated with an application are created on-demand. + # Controls whether these resources should be created when performing the GET + # operation. If specified and any resources could not be created, the request + # will fail with an error code. Additionally, this parameter can cause the + # request to take longer to complete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Application] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Application] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app(apps_id, ensure_resources_exist: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Application::Representation + command.response_class = Google::Apis::AppengineV1beta4::Application + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['ensureResourcesExist'] = ensure_resources_exist unless ensure_resources_exist.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified Application resource. You can update the following + # fields: + # auth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/ + # v1beta4/apps#Application.FIELDS.auth_domain) + # default_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/ + # reference/rest/v1beta4/apps#Application.FIELDS.default_cookie_expiration) + # @param [String] apps_id + # Part of `name`. Name of the Application resource to update. Example: apps/ + # myapp. + # @param [Google::Apis::AppengineV1beta4::Application] application_object + # @param [String] mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app(apps_id, application_object = nil, mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta4/apps/{appsId}', options) + command.request_representation = Google::Apis::AppengineV1beta4::Application::Representation + command.request_object = application_object + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['mask'] = mask unless mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get information about a location. + # @param [String] apps_id + # Part of `name`. Resource name for the location. + # @param [String] locations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Location] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Location] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_location(apps_id, locations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/locations/{locationsId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Location::Representation + command.response_class = Google::Apis::AppengineV1beta4::Location + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['locationsId'] = locations_id unless locations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists information about the supported locations for this service. + # @param [String] apps_id + # Part of `name`. The resource that owns the locations collection, if applicable. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::ListLocationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::ListLocationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_locations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/locations', options) + command.response_representation = Google::Apis::AppengineV1beta4::ListLocationsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta4::ListLocationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified module and all enclosed versions. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_module(apps_id, modules_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta4/apps/{appsId}/modules/{modulesId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the current configuration of the specified module. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Module] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Module] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_module(apps_id, modules_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/modules/{modulesId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Module::Representation + command.response_class = Google::Apis::AppengineV1beta4::Module + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all the modules in the application. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::ListModulesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::ListModulesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_modules(apps_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/modules', options) + command.response_representation = Google::Apis::AppengineV1beta4::ListModulesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta4::ListModulesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the configuration of the specified module. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/modules/ + # default. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta4::Module] module_object + # @param [String] mask + # Standard field mask for the set of fields to be updated. + # @param [Boolean] migrate_traffic + # Set to true to gradually shift traffic to one or more versions that you + # specify. By default, traffic is shifted immediately. For gradual traffic + # migration, the target versions must be located within instances that are + # configured for both warmup requests (https://cloud.google.com/appengine/docs/ + # admin-api/reference/rest/v1beta4/apps.modules.versions#inboundservicetype) and + # automatic scaling (https://cloud.google.com/appengine/docs/admin-api/reference/ + # rest/v1beta4/apps.modules.versions#automaticscaling). You must specify the + # shardBy (https://cloud.google.com/appengine/docs/admin-api/reference/rest/ + # v1beta4/apps.modules#shardby) field in the Module resource. Gradual traffic + # migration is not supported in the App Engine flexible environment. For + # examples, see Migrating and Splitting Traffic (https://cloud.google.com/ + # appengine/docs/admin-api/migrating-splitting-traffic). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_module(apps_id, modules_id, module_object = nil, mask: nil, migrate_traffic: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta4/apps/{appsId}/modules/{modulesId}', options) + command.request_representation = Google::Apis::AppengineV1beta4::Module::Representation + command.request_object = module_object + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.query['mask'] = mask unless mask.nil? + command.query['migrateTraffic'] = migrate_traffic unless migrate_traffic.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deploys code and resource files to a new version. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/modules/ + # default. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta4::Version] version_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_module_version(apps_id, modules_id, version_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions', options) + command.request_representation = Google::Apis::AppengineV1beta4::Version::Representation + command.request_object = version_object + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an existing version. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default/versions/v1. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_module_version(apps_id, modules_id, versions_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified Version resource. By default, only a BASIC_VIEW will be + # returned. Specify the FULL_VIEW parameter to get the full resource. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default/versions/v1. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] view + # Controls the set of fields returned in the Get response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Version] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Version] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_module_version(apps_id, modules_id, versions_id, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Version::Representation + command.response_class = Google::Apis::AppengineV1beta4::Version + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the versions of a module. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] view + # Controls the set of fields returned in the List response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::ListVersionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::ListVersionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_module_versions(apps_id, modules_id, page_size: nil, page_token: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions', options) + command.response_representation = Google::Apis::AppengineV1beta4::ListVersionsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta4::ListVersionsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/modules/ + # default/versions/1. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta4::Version] version_object + # @param [String] mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_module_version(apps_id, modules_id, versions_id, version_object = nil, mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}', options) + command.request_representation = Google::Apis::AppengineV1beta4::Version::Representation + command.request_object = version_object + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['mask'] = mask unless mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default/versions/v1/instances/instance-1. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta4::DebugInstanceRequest] debug_instance_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def debug_instance(apps_id, modules_id, versions_id, instances_id, debug_instance_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}:debug', options) + command.request_representation = Google::Apis::AppengineV1beta4::DebugInstanceRequest::Representation + command.request_object = debug_instance_request_object + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Stops a running instance. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default/versions/v1/instances/instance-1. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_module_version_instance(apps_id, modules_id, versions_id, instances_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets instance information. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default/versions/v1/instances/instance-1. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Instance] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Instance] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_module_version_instance(apps_id, modules_id, versions_id, instances_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Instance::Representation + command.response_class = Google::Apis::AppengineV1beta4::Instance + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the instances of a version.Tip: To aggregate details about instances + # over time, see the Stackdriver Monitoring API (https://cloud.google.com/ + # monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/modules/ + # default/versions/v1. + # @param [String] modules_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::ListInstancesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::ListInstancesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_module_version_instances(apps_id, modules_id, versions_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances', options) + command.response_representation = Google::Apis::AppengineV1beta4::ListInstancesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta4::ListInstancesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['modulesId'] = modules_id unless modules_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. The name of the operation resource. + # @param [String] operations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_operation(apps_id, operations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/operations/{operationsId}', options) + command.response_representation = Google::Apis::AppengineV1beta4::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta4::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['operationsId'] = operations_id unless operations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the server + # doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding + # allows API services to override the binding to use different resource name + # schemes, such as users/*/operations. To override the binding, API services can + # add a binding such as "/v1/`name=users/*`/operations" to their service + # configuration. For backwards compatibility, the default name includes the + # operations collection id, however overriding users must ensure the name + # binding is the parent resource, without the operations collection id. + # @param [String] apps_id + # Part of `name`. The name of the operation's parent resource. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta4::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta4::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_operations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta4/apps/{appsId}/operations', options) + command.response_representation = Google::Apis::AppengineV1beta4::ListOperationsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta4::ListOperationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta5.rb b/generated/google/apis/appengine_v1beta5.rb new file mode 100644 index 000000000..6ddd10b99 --- /dev/null +++ b/generated/google/apis/appengine_v1beta5.rb @@ -0,0 +1,41 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/appengine_v1beta5/service.rb' +require 'google/apis/appengine_v1beta5/classes.rb' +require 'google/apis/appengine_v1beta5/representations.rb' + +module Google + module Apis + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + module AppengineV1beta5 + VERSION = 'V1beta5' + REVISION = '20170714' + + # View and manage your applications deployed on Google App Engine + AUTH_APPENGINE_ADMIN = 'https://www.googleapis.com/auth/appengine.admin' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + end + end +end diff --git a/generated/google/apis/appengine_v1beta5/classes.rb b/generated/google/apis/appengine_v1beta5/classes.rb new file mode 100644 index 000000000..2a58f4d9b --- /dev/null +++ b/generated/google/apis/appengine_v1beta5/classes.rb @@ -0,0 +1,2168 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta5 + + # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/ + # endpoints/) configuration for API handlers. + class ApiConfigHandler + include Google::Apis::Core::Hashable + + # Action to take when users access resources that require authentication. + # Defaults to redirect. + # Corresponds to the JSON property `authFailAction` + # @return [String] + attr_accessor :auth_fail_action + + # Level of login required to access this resource. Defaults to optional. + # Corresponds to the JSON property `login` + # @return [String] + attr_accessor :login + + # Path to the script from the application root directory. + # Corresponds to the JSON property `script` + # @return [String] + attr_accessor :script + + # Security (HTTPS) enforcement for this URL. + # Corresponds to the JSON property `securityLevel` + # @return [String] + attr_accessor :security_level + + # URL to serve the endpoint at. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action) + @login = args[:login] if args.key?(:login) + @script = args[:script] if args.key?(:script) + @security_level = args[:security_level] if args.key?(:security_level) + @url = args[:url] if args.key?(:url) + end + end + + # Uses Google Cloud Endpoints to handle requests. + class ApiEndpointHandler + include Google::Apis::Core::Hashable + + # Path to the script from the application root directory. + # Corresponds to the JSON property `scriptPath` + # @return [String] + attr_accessor :script_path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @script_path = args[:script_path] if args.key?(:script_path) + end + end + + # An Application resource contains the top-level configuration of an App Engine + # application. + class Application + include Google::Apis::Core::Hashable + + # Google Apps authentication domain that controls which users can access this + # application.Defaults to open access for any Google Account. + # Corresponds to the JSON property `authDomain` + # @return [String] + attr_accessor :auth_domain + + # 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 + # Corresponds to the JSON property `codeBucket` + # @return [String] + attr_accessor :code_bucket + + # A Google Cloud Storage bucket that can be used by the application to store + # content.@OutputOnly + # Corresponds to the JSON property `defaultBucket` + # @return [String] + attr_accessor :default_bucket + + # Cookie expiration policy for this application. + # Corresponds to the JSON property `defaultCookieExpiration` + # @return [String] + attr_accessor :default_cookie_expiration + + # Hostname used to reach the application, as resolved by App Engine.@OutputOnly + # Corresponds to the JSON property `defaultHostname` + # @return [String] + attr_accessor :default_hostname + + # HTTP path dispatch rules for requests to the application that do not + # explicitly target a service or version. Rules are order-dependent.@OutputOnly + # Corresponds to the JSON property `dispatchRules` + # @return [Array] + attr_accessor :dispatch_rules + + # Identity-Aware Proxy + # Corresponds to the JSON property `iap` + # @return [Google::Apis::AppengineV1beta5::IdentityAwareProxy] + attr_accessor :iap + + # 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. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Location from which this application will be run. Application instances will + # run out of data centers in the chosen location, which is also where all of the + # application's end user content is stored.Defaults to us-central.Options are:us- + # central - Central USeurope-west - Western Europeus-east1 - Eastern US + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # Full path to the Application resource in the API. Example: apps/myapp.@ + # OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auth_domain = args[:auth_domain] if args.key?(:auth_domain) + @code_bucket = args[:code_bucket] if args.key?(:code_bucket) + @default_bucket = args[:default_bucket] if args.key?(:default_bucket) + @default_cookie_expiration = args[:default_cookie_expiration] if args.key?(:default_cookie_expiration) + @default_hostname = args[:default_hostname] if args.key?(:default_hostname) + @dispatch_rules = args[:dispatch_rules] if args.key?(:dispatch_rules) + @iap = args[:iap] if args.key?(:iap) + @id = args[:id] if args.key?(:id) + @location = args[:location] if args.key?(:location) + @name = args[:name] if args.key?(:name) + end + end + + # Automatic scaling is based on request rate, response latencies, and other + # application metrics. + class AutomaticScaling + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `coolDownPeriod` + # @return [String] + attr_accessor :cool_down_period + + # Target scaling by CPU usage. + # Corresponds to the JSON property `cpuUtilization` + # @return [Google::Apis::AppengineV1beta5::CpuUtilization] + attr_accessor :cpu_utilization + + # Target scaling by disk usage. Only applicable for VM runtimes. + # Corresponds to the JSON property `diskUtilization` + # @return [Google::Apis::AppengineV1beta5::DiskUtilization] + attr_accessor :disk_utilization + + # Number of concurrent requests an automatic scaling instance can accept before + # the scheduler spawns a new instance.Defaults to a runtime-specific value. + # Corresponds to the JSON property `maxConcurrentRequests` + # @return [Fixnum] + attr_accessor :max_concurrent_requests + + # Maximum number of idle instances that should be maintained for this version. + # Corresponds to the JSON property `maxIdleInstances` + # @return [Fixnum] + attr_accessor :max_idle_instances + + # Maximum amount of time that a request should wait in the pending queue before + # starting a new instance to handle it. + # Corresponds to the JSON property `maxPendingLatency` + # @return [String] + attr_accessor :max_pending_latency + + # Maximum number of instances that should be started to handle requests. + # Corresponds to the JSON property `maxTotalInstances` + # @return [Fixnum] + attr_accessor :max_total_instances + + # Minimum number of idle instances that should be maintained for this version. + # Only applicable for the default version of a module. + # Corresponds to the JSON property `minIdleInstances` + # @return [Fixnum] + attr_accessor :min_idle_instances + + # Minimum amount of time a request should wait in the pending queue before + # starting a new instance to handle it. + # Corresponds to the JSON property `minPendingLatency` + # @return [String] + attr_accessor :min_pending_latency + + # Minimum number of instances that should be maintained for this version. + # Corresponds to the JSON property `minTotalInstances` + # @return [Fixnum] + attr_accessor :min_total_instances + + # Target scaling by network usage. Only applicable for VM runtimes. + # Corresponds to the JSON property `networkUtilization` + # @return [Google::Apis::AppengineV1beta5::NetworkUtilization] + attr_accessor :network_utilization + + # Target scaling by request utilization. Only applicable for VM runtimes. + # Corresponds to the JSON property `requestUtilization` + # @return [Google::Apis::AppengineV1beta5::RequestUtilization] + attr_accessor :request_utilization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cool_down_period = args[:cool_down_period] if args.key?(:cool_down_period) + @cpu_utilization = args[:cpu_utilization] if args.key?(:cpu_utilization) + @disk_utilization = args[:disk_utilization] if args.key?(:disk_utilization) + @max_concurrent_requests = args[:max_concurrent_requests] if args.key?(:max_concurrent_requests) + @max_idle_instances = args[:max_idle_instances] if args.key?(:max_idle_instances) + @max_pending_latency = args[:max_pending_latency] if args.key?(:max_pending_latency) + @max_total_instances = args[:max_total_instances] if args.key?(:max_total_instances) + @min_idle_instances = args[:min_idle_instances] if args.key?(:min_idle_instances) + @min_pending_latency = args[:min_pending_latency] if args.key?(:min_pending_latency) + @min_total_instances = args[:min_total_instances] if args.key?(:min_total_instances) + @network_utilization = args[:network_utilization] if args.key?(:network_utilization) + @request_utilization = args[:request_utilization] if args.key?(:request_utilization) + end + end + + # 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. + class BasicScaling + include Google::Apis::Core::Hashable + + # Duration of time after the last request that an instance must wait before the + # instance is shut down. + # Corresponds to the JSON property `idleTimeout` + # @return [String] + attr_accessor :idle_timeout + + # Maximum number of instances to create for this version. + # Corresponds to the JSON property `maxInstances` + # @return [Fixnum] + attr_accessor :max_instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout) + @max_instances = args[:max_instances] if args.key?(:max_instances) + end + end + + # Docker image that is used to create a container and start a VM instance for + # the version that you deploy. Only applicable for instances running in the App + # Engine flexible environment. + class ContainerInfo + include Google::Apis::Core::Hashable + + # URI to the hosted container image in Google Container Registry. The URI must + # be fully qualified and include a tag or digest. Examples: "gcr.io/my-project/ + # image:tag" or "gcr.io/my-project/image@digest" + # Corresponds to the JSON property `image` + # @return [String] + attr_accessor :image + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @image = args[:image] if args.key?(:image) + end + end + + # Target scaling by CPU usage. + class CpuUtilization + include Google::Apis::Core::Hashable + + # Period of time over which CPU utilization is calculated. + # Corresponds to the JSON property `aggregationWindowLength` + # @return [String] + attr_accessor :aggregation_window_length + + # Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1. + # Corresponds to the JSON property `targetUtilization` + # @return [Float] + attr_accessor :target_utilization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @aggregation_window_length = args[:aggregation_window_length] if args.key?(:aggregation_window_length) + @target_utilization = args[:target_utilization] if args.key?(:target_utilization) + end + end + + # Request message for Instances.DebugInstance. + class DebugInstanceRequest + include Google::Apis::Core::Hashable + + # Public SSH key to add to the instance. Examples: + # [USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME] + # [USERNAME]:ssh-rsa [KEY_VALUE] google-ssh `"userName":"[USERNAME]","expireOn":" + # [EXPIRE_TIME]"`For more information, see Adding and Removing SSH Keys (https:// + # cloud.google.com/compute/docs/instances/adding-removing-ssh-keys). + # Corresponds to the JSON property `sshKey` + # @return [String] + attr_accessor :ssh_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ssh_key = args[:ssh_key] if args.key?(:ssh_key) + end + end + + # Code and application artifacts used to deploy a version to App Engine. + class Deployment + include Google::Apis::Core::Hashable + + # Docker image that is used to create a container and start a VM instance for + # the version that you deploy. Only applicable for instances running in the App + # Engine flexible environment. + # Corresponds to the JSON property `container` + # @return [Google::Apis::AppengineV1beta5::ContainerInfo] + attr_accessor :container + + # 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. + # Corresponds to the JSON property `files` + # @return [Hash] + attr_accessor :files + + # 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. + # Corresponds to the JSON property `sourceReferences` + # @return [Array] + attr_accessor :source_references + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @container = args[:container] if args.key?(:container) + @files = args[:files] if args.key?(:files) + @source_references = args[:source_references] if args.key?(:source_references) + end + end + + # Target scaling by disk usage. Only applicable for VM runtimes. + class DiskUtilization + include Google::Apis::Core::Hashable + + # Target bytes read per second. + # Corresponds to the JSON property `targetReadBytesPerSec` + # @return [Fixnum] + attr_accessor :target_read_bytes_per_sec + + # Target ops read per second. + # Corresponds to the JSON property `targetReadOpsPerSec` + # @return [Fixnum] + attr_accessor :target_read_ops_per_sec + + # Target bytes written per second. + # Corresponds to the JSON property `targetWriteBytesPerSec` + # @return [Fixnum] + attr_accessor :target_write_bytes_per_sec + + # Target ops written per second. + # Corresponds to the JSON property `targetWriteOpsPerSec` + # @return [Fixnum] + attr_accessor :target_write_ops_per_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_read_bytes_per_sec = args[:target_read_bytes_per_sec] if args.key?(:target_read_bytes_per_sec) + @target_read_ops_per_sec = args[:target_read_ops_per_sec] if args.key?(:target_read_ops_per_sec) + @target_write_bytes_per_sec = args[:target_write_bytes_per_sec] if args.key?(:target_write_bytes_per_sec) + @target_write_ops_per_sec = args[:target_write_ops_per_sec] if args.key?(:target_write_ops_per_sec) + end + end + + # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The + # Endpoints API Service provides tooling for serving Open API and gRPC endpoints + # via an NGINX proxy.The fields here refer to the name and configuration id of a + # "service" resource in the Service Management API (https://cloud.google.com/ + # service-management/overview). + class EndpointsApiService + include Google::Apis::Core::Hashable + + # Endpoints service configuration id as specified by the Service Management API. + # For example "2016-09-19r1" + # Corresponds to the JSON property `configId` + # @return [String] + attr_accessor :config_id + + # Endpoints service name which is the name of the "service" resource in the + # Service Management API. For example "myapi.endpoints.myproject.cloud.goog" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config_id = args[:config_id] if args.key?(:config_id) + @name = args[:name] if args.key?(:name) + end + end + + # Custom static error page to be served when an error occurs. + class ErrorHandler + include Google::Apis::Core::Hashable + + # Error condition this handler applies to. + # Corresponds to the JSON property `errorCode` + # @return [String] + attr_accessor :error_code + + # MIME type of file. Defaults to text/html. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # Static file content to be served for this error. + # Corresponds to the JSON property `staticFile` + # @return [String] + attr_accessor :static_file + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_code = args[:error_code] if args.key?(:error_code) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @static_file = args[:static_file] if args.key?(:static_file) + end + end + + # Single source file that is part of the version to be deployed. Each source + # file that is deployed must be specified separately. + class FileInfo + include Google::Apis::Core::Hashable + + # The MIME type of the file.Defaults to the value from Google Cloud Storage. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # The SHA1 hash of the file, in hex. + # Corresponds to the JSON property `sha1Sum` + # @return [String] + attr_accessor :sha1_sum + + # 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//'. + # Corresponds to the JSON property `sourceUrl` + # @return [String] + attr_accessor :source_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @sha1_sum = args[:sha1_sum] if args.key?(:sha1_sum) + @source_url = args[:source_url] if args.key?(:source_url) + end + end + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. Only applicable for instances in App Engine + # flexible environment. + class HealthCheck + include Google::Apis::Core::Hashable + + # Interval between health checks. + # Corresponds to the JSON property `checkInterval` + # @return [String] + attr_accessor :check_interval + + # Whether to explicitly disable health checks for this instance. + # Corresponds to the JSON property `disableHealthCheck` + # @return [Boolean] + attr_accessor :disable_health_check + alias_method :disable_health_check?, :disable_health_check + + # Number of consecutive successful health checks required before receiving + # traffic. + # Corresponds to the JSON property `healthyThreshold` + # @return [Fixnum] + attr_accessor :healthy_threshold + + # Host header to send when performing an HTTP health check. Example: "myapp. + # appspot.com" + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # Number of consecutive failed health checks required before an instance is + # restarted. + # Corresponds to the JSON property `restartThreshold` + # @return [Fixnum] + attr_accessor :restart_threshold + + # Time before the health check is considered failed. + # Corresponds to the JSON property `timeout` + # @return [String] + attr_accessor :timeout + + # Number of consecutive failed health checks required before removing traffic. + # Corresponds to the JSON property `unhealthyThreshold` + # @return [Fixnum] + attr_accessor :unhealthy_threshold + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval = args[:check_interval] if args.key?(:check_interval) + @disable_health_check = args[:disable_health_check] if args.key?(:disable_health_check) + @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold) + @host = args[:host] if args.key?(:host) + @restart_threshold = args[:restart_threshold] if args.key?(:restart_threshold) + @timeout = args[:timeout] if args.key?(:timeout) + @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold) + end + end + + # Identity-Aware Proxy + class IdentityAwareProxy + include Google::Apis::Core::Hashable + + # Whether the serving infrastructure will authenticate and authorize all + # incoming requests.If true, the oauth2_client_id and oauth2_client_secret + # fields must be non-empty. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # OAuth2 client ID to use for the authentication flow. + # Corresponds to the JSON property `oauth2ClientId` + # @return [String] + attr_accessor :oauth2_client_id + + # For security reasons, this value cannot be retrieved via the API. Instead, the + # SHA-256 hash of the value is returned in the oauth2_client_secret_sha256 field. + # @InputOnly + # Corresponds to the JSON property `oauth2ClientSecret` + # @return [String] + attr_accessor :oauth2_client_secret + + # Hex-encoded SHA-256 hash of the client secret.@OutputOnly + # Corresponds to the JSON property `oauth2ClientSecretSha256` + # @return [String] + attr_accessor :oauth2_client_secret_sha256 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id) + @oauth2_client_secret = args[:oauth2_client_secret] if args.key?(:oauth2_client_secret) + @oauth2_client_secret_sha256 = args[:oauth2_client_secret_sha256] if args.key?(:oauth2_client_secret_sha256) + end + end + + # An Instance resource is the computing unit that App Engine uses to + # automatically scale an application. + class Instance + include Google::Apis::Core::Hashable + + # App Engine release this instance is running on.@OutputOnly + # Corresponds to the JSON property `appEngineRelease` + # @return [String] + attr_accessor :app_engine_release + + # Availability of the instance.@OutputOnly + # Corresponds to the JSON property `availability` + # @return [String] + attr_accessor :availability + + # Average latency (ms) over the last minute.@OutputOnly + # Corresponds to the JSON property `averageLatency` + # @return [Fixnum] + attr_accessor :average_latency + + # Number of errors since this instance was started.@OutputOnly + # Corresponds to the JSON property `errors` + # @return [Fixnum] + attr_accessor :errors + + # Relative name of the instance within the version. Example: instance-1.@ + # OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Total memory in use (bytes).@OutputOnly + # Corresponds to the JSON property `memoryUsage` + # @return [Fixnum] + attr_accessor :memory_usage + + # Full path to the Instance resource in the API. Example: apps/myapp/services/ + # default/versions/v1/instances/instance-1.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Average queries per second (QPS) over the last minute.@OutputOnly + # Corresponds to the JSON property `qps` + # @return [Float] + attr_accessor :qps + + # Number of requests since this instance was started.@OutputOnly + # Corresponds to the JSON property `requests` + # @return [Fixnum] + attr_accessor :requests + + # Time that this instance was started.@OutputOnly + # Corresponds to the JSON property `startTimestamp` + # @return [String] + attr_accessor :start_timestamp + + # Virtual machine ID of this instance. Only applicable for instances in App + # Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmId` + # @return [String] + attr_accessor :vm_id + + # The IP address of this instance. Only applicable for instances in App Engine + # flexible environment.@OutputOnly + # Corresponds to the JSON property `vmIp` + # @return [String] + attr_accessor :vm_ip + + # Name of the virtual machine where this instance lives. Only applicable for + # instances in App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmName` + # @return [String] + attr_accessor :vm_name + + # Status of the virtual machine where this instance lives. Only applicable for + # instances in App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmStatus` + # @return [String] + attr_accessor :vm_status + + # Whether this instance is in debug mode. Only applicable for instances in App + # Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmUnlocked` + # @return [Boolean] + attr_accessor :vm_unlocked + alias_method :vm_unlocked?, :vm_unlocked + + # Zone where the virtual machine is located. Only applicable for instances in + # App Engine flexible environment.@OutputOnly + # Corresponds to the JSON property `vmZoneName` + # @return [String] + attr_accessor :vm_zone_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) + @availability = args[:availability] if args.key?(:availability) + @average_latency = args[:average_latency] if args.key?(:average_latency) + @errors = args[:errors] if args.key?(:errors) + @id = args[:id] if args.key?(:id) + @memory_usage = args[:memory_usage] if args.key?(:memory_usage) + @name = args[:name] if args.key?(:name) + @qps = args[:qps] if args.key?(:qps) + @requests = args[:requests] if args.key?(:requests) + @start_timestamp = args[:start_timestamp] if args.key?(:start_timestamp) + @vm_id = args[:vm_id] if args.key?(:vm_id) + @vm_ip = args[:vm_ip] if args.key?(:vm_ip) + @vm_name = args[:vm_name] if args.key?(:vm_name) + @vm_status = args[:vm_status] if args.key?(:vm_status) + @vm_unlocked = args[:vm_unlocked] if args.key?(:vm_unlocked) + @vm_zone_name = args[:vm_zone_name] if args.key?(:vm_zone_name) + end + end + + # Third-party Python runtime library that is required by the application. + class Library + include Google::Apis::Core::Hashable + + # Name of the library. Example: "django". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Version of the library to select, or "latest". + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @version = args[:version] if args.key?(:version) + end + end + + # Response message for Instances.ListInstances. + class ListInstancesResponse + include Google::Apis::Core::Hashable + + # The instances belonging to the requested version. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Locations.ListLocations. + class ListLocationsResponse + include Google::Apis::Core::Hashable + + # A list of locations that matches the specified filter in the request. + # Corresponds to the JSON property `locations` + # @return [Array] + attr_accessor :locations + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locations = args[:locations] if args.key?(:locations) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # Response message for Services.ListServices. + class ListServicesResponse + include Google::Apis::Core::Hashable + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The services belonging to the requested application. + # Corresponds to the JSON property `services` + # @return [Array] + attr_accessor :services + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @services = args[:services] if args.key?(:services) + end + end + + # Response message for Versions.ListVersions. + class ListVersionsResponse + include Google::Apis::Core::Hashable + + # Continuation token for fetching the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The versions belonging to the requested service. + # Corresponds to the JSON property `versions` + # @return [Array] + attr_accessor :versions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @versions = args[:versions] if args.key?(:versions) + end + end + + # A resource that represents Google Cloud Platform location. + class Location + include Google::Apis::Core::Hashable + + # Cross-service attributes for the location. For example + # `"cloud.googleapis.com/region": "us-east1"` + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The canonical id for this location. For example: "us-east1". + # Corresponds to the JSON property `locationId` + # @return [String] + attr_accessor :location_id + + # Service-specific metadata. For example the available capacity at the given + # location. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Resource name for the location, which may vary between implementations. For + # example: "projects/example-project/locations/us-east1" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @location_id = args[:location_id] if args.key?(:location_id) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + end + end + + # Metadata for the given google.cloud.location.Location. + class LocationMetadata + include Google::Apis::Core::Hashable + + # App Engine Flexible Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `flexibleEnvironmentAvailable` + # @return [Boolean] + attr_accessor :flexible_environment_available + alias_method :flexible_environment_available?, :flexible_environment_available + + # App Engine Standard Environment is available in the given location.@OutputOnly + # Corresponds to the JSON property `standardEnvironmentAvailable` + # @return [Boolean] + attr_accessor :standard_environment_available + alias_method :standard_environment_available?, :standard_environment_available + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @flexible_environment_available = args[:flexible_environment_available] if args.key?(:flexible_environment_available) + @standard_environment_available = args[:standard_environment_available] if args.key?(:standard_environment_available) + end + end + + # A service with manual scaling runs continuously, allowing you to perform + # complex initialization and rely on the state of its memory over time. + class ManualScaling + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `instances` + # @return [Fixnum] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # Extra network settings. Only applicable for VM runtimes. + class Network + include Google::Apis::Core::Hashable + + # List of ports, or port pairs, to forward from the virtual machine to the + # application container. + # Corresponds to the JSON property `forwardedPorts` + # @return [Array] + attr_accessor :forwarded_ports + + # Tag to apply to the VM instance during creation. + # Corresponds to the JSON property `instanceTag` + # @return [String] + attr_accessor :instance_tag + + # Google Cloud Platform network where the virtual machines are created. Specify + # the short name, not the resource path.Defaults to default. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Google Cloud Platform sub-network where the virtual machines are created. + # Specify the short name, not the resource path.If a subnetwork name is + # specified, a network name will also be required unless it is for the default + # network. + # If the network the VM instance is being created in is a Legacy network, then + # the IP address is allocated from the IPv4Range. + # If the network the VM instance is being created in is an auto Subnet Mode + # Network, then only network name should be specified (not the subnetwork_name) + # and the IP address is created from the IPCidrRange of the subnetwork that + # exists in that zone for that network. + # If the network the VM instance is being created in is a custom Subnet Mode + # Network, then the subnetwork_name must be specified and the IP address is + # created from the IPCidrRange of the subnetwork.If specified, the subnetwork + # must exist in the same region as the Flex app. + # Corresponds to the JSON property `subnetworkName` + # @return [String] + attr_accessor :subnetwork_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @forwarded_ports = args[:forwarded_ports] if args.key?(:forwarded_ports) + @instance_tag = args[:instance_tag] if args.key?(:instance_tag) + @name = args[:name] if args.key?(:name) + @subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name) + end + end + + # Target scaling by network usage. Only applicable for VM runtimes. + class NetworkUtilization + include Google::Apis::Core::Hashable + + # Target bytes received per second. + # Corresponds to the JSON property `targetReceivedBytesPerSec` + # @return [Fixnum] + attr_accessor :target_received_bytes_per_sec + + # Target packets received per second. + # Corresponds to the JSON property `targetReceivedPacketsPerSec` + # @return [Fixnum] + attr_accessor :target_received_packets_per_sec + + # Target bytes sent per second. + # Corresponds to the JSON property `targetSentBytesPerSec` + # @return [Fixnum] + attr_accessor :target_sent_bytes_per_sec + + # Target packets sent per second. + # Corresponds to the JSON property `targetSentPacketsPerSec` + # @return [Fixnum] + attr_accessor :target_sent_packets_per_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_received_bytes_per_sec = args[:target_received_bytes_per_sec] if args.key?(:target_received_bytes_per_sec) + @target_received_packets_per_sec = args[:target_received_packets_per_sec] if args.key?(:target_received_packets_per_sec) + @target_sent_bytes_per_sec = args[:target_sent_bytes_per_sec] if args.key?(:target_sent_bytes_per_sec) + @target_sent_packets_per_sec = args[:target_sent_packets_per_sec] if args.key?(:target_sent_packets_per_sec) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::AppengineV1beta5::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadata + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta4. + # Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Type of this operation. Deprecated, use method field instead. Example: " + # create_version".@OutputOnly + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # modules/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataExperimental + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine. + # experimental.CustomDomains.CreateCustomDomain.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # customDomains/example.com.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1 + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Alpha + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1alpha. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta + include Google::Apis::Core::Hashable + + # Time that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Ephemeral message that may change every time the operation is polled. @ + # OutputOnly + # Corresponds to the JSON property `ephemeralMessage` + # @return [String] + attr_accessor :ephemeral_message + + # Time that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method that initiated this operation. Example: google.appengine.v1beta. + # Versions.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Durable messages that persist on every operation poll. @OutputOnly + # Corresponds to the JSON property `warning` + # @return [Array] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @ephemeral_message = args[:ephemeral_message] if args.key?(:ephemeral_message) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + @warning = args[:warning] if args.key?(:warning) + end + end + + # Metadata for the given google.longrunning.Operation. + class OperationMetadataV1Beta5 + include Google::Apis::Core::Hashable + + # Timestamp that this operation completed.@OutputOnly + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Timestamp that this operation was created.@OutputOnly + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # API method name that initiated this operation. Example: google.appengine. + # v1beta5.Version.CreateVersion.@OutputOnly + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Name of the resource that this operation is acting on. Example: apps/myapp/ + # services/default.@OutputOnly + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # User who requested this operation.@OutputOnly + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @target = args[:target] if args.key?(:target) + @user = args[:user] if args.key?(:user) + end + end + + # Target scaling by request utilization. Only applicable for VM runtimes. + class RequestUtilization + include Google::Apis::Core::Hashable + + # Target number of concurrent requests. + # Corresponds to the JSON property `targetConcurrentRequests` + # @return [Fixnum] + attr_accessor :target_concurrent_requests + + # Target requests per second. + # Corresponds to the JSON property `targetRequestCountPerSec` + # @return [Fixnum] + attr_accessor :target_request_count_per_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_concurrent_requests = args[:target_concurrent_requests] if args.key?(:target_concurrent_requests) + @target_request_count_per_sec = args[:target_request_count_per_sec] if args.key?(:target_request_count_per_sec) + end + end + + # Machine resources for a version. + class Resources + include Google::Apis::Core::Hashable + + # Number of CPU cores needed. + # Corresponds to the JSON property `cpu` + # @return [Float] + attr_accessor :cpu + + # Disk size (GB) needed. + # Corresponds to the JSON property `diskGb` + # @return [Float] + attr_accessor :disk_gb + + # Memory (GB) needed. + # Corresponds to the JSON property `memoryGb` + # @return [Float] + attr_accessor :memory_gb + + # Volumes mounted within the app container. + # Corresponds to the JSON property `volumes` + # @return [Array] + attr_accessor :volumes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cpu = args[:cpu] if args.key?(:cpu) + @disk_gb = args[:disk_gb] if args.key?(:disk_gb) + @memory_gb = args[:memory_gb] if args.key?(:memory_gb) + @volumes = args[:volumes] if args.key?(:volumes) + end + end + + # Executes a script to handle the request that matches the URL pattern. + class ScriptHandler + include Google::Apis::Core::Hashable + + # Path to the script from the application root directory. + # Corresponds to the JSON property `scriptPath` + # @return [String] + attr_accessor :script_path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @script_path = args[:script_path] if args.key?(:script_path) + end + end + + # 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. + class Service + include Google::Apis::Core::Hashable + + # Relative name of the service within the application. Example: default.@ + # OutputOnly + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Full path to the Service resource in the API. Example: apps/myapp/services/ + # default.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Traffic routing configuration for versions within a single service. Traffic + # splits define how traffic directed to the service is assigned to versions. + # Corresponds to the JSON property `split` + # @return [Google::Apis::AppengineV1beta5::TrafficSplit] + attr_accessor :split + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + @split = args[:split] if args.key?(:split) + end + end + + # Reference to a particular snapshot of the source tree used to build and deploy + # the application. + class SourceReference + include Google::Apis::Core::Hashable + + # URI string identifying the repository. Example: "https://source.developers. + # google.com/p/app-123/r/default" + # Corresponds to the JSON property `repository` + # @return [String] + attr_accessor :repository + + # The canonical, persistent identifier of the deployed revision. Aliases that + # include tags or branch names are not allowed. Example (git): " + # 2198322f89e0bb2e25021667c2ed489d1fd34e6b" + # Corresponds to the JSON property `revisionId` + # @return [String] + attr_accessor :revision_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @repository = args[:repository] if args.key?(:repository) + @revision_id = args[:revision_id] if args.key?(:revision_id) + end + end + + # 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. + class StaticFilesHandler + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `applicationReadable` + # @return [Boolean] + attr_accessor :application_readable + alias_method :application_readable?, :application_readable + + # Time a static file served by this handler should be cached. + # Corresponds to the JSON property `expiration` + # @return [String] + attr_accessor :expiration + + # HTTP headers to use for all responses from these URLs. + # Corresponds to the JSON property `httpHeaders` + # @return [Hash] + attr_accessor :http_headers + + # 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. + # Corresponds to the JSON property `mimeType` + # @return [String] + attr_accessor :mime_type + + # 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. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Whether this handler should match the request if the file referenced by the + # handler does not exist. + # Corresponds to the JSON property `requireMatchingFile` + # @return [Boolean] + attr_accessor :require_matching_file + alias_method :require_matching_file?, :require_matching_file + + # Regular expression that matches the file paths for all files that should be + # referenced by this handler. + # Corresponds to the JSON property `uploadPathRegex` + # @return [String] + attr_accessor :upload_path_regex + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @application_readable = args[:application_readable] if args.key?(:application_readable) + @expiration = args[:expiration] if args.key?(:expiration) + @http_headers = args[:http_headers] if args.key?(:http_headers) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @path = args[:path] if args.key?(:path) + @require_matching_file = args[:require_matching_file] if args.key?(:require_matching_file) + @upload_path_regex = args[:upload_path_regex] if args.key?(:upload_path_regex) + end + end + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Traffic routing configuration for versions within a single service. Traffic + # splits define how traffic directed to the service is assigned to versions. + class TrafficSplit + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `allocations` + # @return [Hash] + attr_accessor :allocations + + # 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. + # Corresponds to the JSON property `shardBy` + # @return [String] + attr_accessor :shard_by + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allocations = args[:allocations] if args.key?(:allocations) + @shard_by = args[:shard_by] if args.key?(:shard_by) + end + end + + # Rules to match an HTTP request and dispatch that request to a service. + class UrlDispatchRule + include Google::Apis::Core::Hashable + + # Domain name to match against. The wildcard "*" is supported if specified + # before a period: "*.".Defaults to matching all domains: "*". + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # 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. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Resource id of a service in this application that should serve the matched + # request. The service must already exist. Example: default. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domain = args[:domain] if args.key?(:domain) + @path = args[:path] if args.key?(:path) + @service = args[:service] if args.key?(:service) + end + end + + # 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. + class UrlMap + include Google::Apis::Core::Hashable + + # Uses Google Cloud Endpoints to handle requests. + # Corresponds to the JSON property `apiEndpoint` + # @return [Google::Apis::AppengineV1beta5::ApiEndpointHandler] + attr_accessor :api_endpoint + + # Action to take when users access resources that require authentication. + # Defaults to redirect. + # Corresponds to the JSON property `authFailAction` + # @return [String] + attr_accessor :auth_fail_action + + # Level of login required to access this resource. + # Corresponds to the JSON property `login` + # @return [String] + attr_accessor :login + + # 30x code to use when performing redirects for the secure field. Defaults to + # 302. + # Corresponds to the JSON property `redirectHttpResponseCode` + # @return [String] + attr_accessor :redirect_http_response_code + + # Executes a script to handle the request that matches the URL pattern. + # Corresponds to the JSON property `script` + # @return [Google::Apis::AppengineV1beta5::ScriptHandler] + attr_accessor :script + + # Security (HTTPS) enforcement for this URL. + # Corresponds to the JSON property `securityLevel` + # @return [String] + attr_accessor :security_level + + # 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. + # Corresponds to the JSON property `staticFiles` + # @return [Google::Apis::AppengineV1beta5::StaticFilesHandler] + attr_accessor :static_files + + # 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. + # Corresponds to the JSON property `urlRegex` + # @return [String] + attr_accessor :url_regex + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @api_endpoint = args[:api_endpoint] if args.key?(:api_endpoint) + @auth_fail_action = args[:auth_fail_action] if args.key?(:auth_fail_action) + @login = args[:login] if args.key?(:login) + @redirect_http_response_code = args[:redirect_http_response_code] if args.key?(:redirect_http_response_code) + @script = args[:script] if args.key?(:script) + @security_level = args[:security_level] if args.key?(:security_level) + @static_files = args[:static_files] if args.key?(:static_files) + @url_regex = args[:url_regex] if args.key?(:url_regex) + end + end + + # A Version resource is a specific set of source code and configuration files + # that are deployed into a service. + class Version + include Google::Apis::Core::Hashable + + # Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/ + # endpoints/) configuration for API handlers. + # Corresponds to the JSON property `apiConfig` + # @return [Google::Apis::AppengineV1beta5::ApiConfigHandler] + attr_accessor :api_config + + # Automatic scaling is based on request rate, response latencies, and other + # application metrics. + # Corresponds to the JSON property `automaticScaling` + # @return [Google::Apis::AppengineV1beta5::AutomaticScaling] + attr_accessor :automatic_scaling + + # 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. + # Corresponds to the JSON property `basicScaling` + # @return [Google::Apis::AppengineV1beta5::BasicScaling] + attr_accessor :basic_scaling + + # Metadata settings that are supplied to this version to enable beta runtime + # features. + # Corresponds to the JSON property `betaSettings` + # @return [Hash] + attr_accessor :beta_settings + + # Time that this version was created.@OutputOnly + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + + # 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. + # Corresponds to the JSON property `defaultExpiration` + # @return [String] + attr_accessor :default_expiration + + # Email address of the user who created this version.@OutputOnly + # Corresponds to the JSON property `deployer` + # @return [String] + attr_accessor :deployer + + # Code and application artifacts used to deploy a version to App Engine. + # Corresponds to the JSON property `deployment` + # @return [Google::Apis::AppengineV1beta5::Deployment] + attr_accessor :deployment + + # Total size of version files hosted on App Engine disk in bytes.@OutputOnly + # Corresponds to the JSON property `diskUsageBytes` + # @return [Fixnum] + attr_accessor :disk_usage_bytes + + # Cloud Endpoints (https://cloud.google.com/endpoints) configuration. The + # Endpoints API Service provides tooling for serving Open API and gRPC endpoints + # via an NGINX proxy.The fields here refer to the name and configuration id of a + # "service" resource in the Service Management API (https://cloud.google.com/ + # service-management/overview). + # Corresponds to the JSON property `endpointsApiService` + # @return [Google::Apis::AppengineV1beta5::EndpointsApiService] + attr_accessor :endpoints_api_service + + # App Engine execution environment to use for this version.Defaults to 1. + # Corresponds to the JSON property `env` + # @return [String] + attr_accessor :env + + # Environment variables made available to the application.Only returned in GET + # requests if view=FULL is set. + # Corresponds to the JSON property `envVariables` + # @return [Hash] + attr_accessor :env_variables + + # Custom static error pages. Limited to 10KB per page.Only returned in GET + # requests if view=FULL is set. + # Corresponds to the JSON property `errorHandlers` + # @return [Array] + attr_accessor :error_handlers + + # 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. + # Corresponds to the JSON property `handlers` + # @return [Array] + attr_accessor :handlers + + # Health checking configuration for VM instances. Unhealthy instances are killed + # and replaced with new instances. Only applicable for instances in App Engine + # flexible environment. + # Corresponds to the JSON property `healthCheck` + # @return [Google::Apis::AppengineV1beta5::HealthCheck] + attr_accessor :health_check + + # 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-". + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Before an application can receive email or XMPP messages, the application must + # be configured to enable the service. + # Corresponds to the JSON property `inboundServices` + # @return [Array] + attr_accessor :inbound_services + + # 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_1GDefaults to F1 for + # AutomaticScaling and B1 for ManualScaling or BasicScaling. + # Corresponds to the JSON property `instanceClass` + # @return [String] + attr_accessor :instance_class + + # Configuration for third-party Python runtime libraries required by the + # application.Only returned in GET requests if view=FULL is set. + # Corresponds to the JSON property `libraries` + # @return [Array] + attr_accessor :libraries + + # A service with manual scaling runs continuously, allowing you to perform + # complex initialization and rely on the state of its memory over time. + # Corresponds to the JSON property `manualScaling` + # @return [Google::Apis::AppengineV1beta5::ManualScaling] + attr_accessor :manual_scaling + + # Full path to the Version resource in the API. Example: apps/myapp/services/ + # default/versions/v1.@OutputOnly + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Extra network settings. Only applicable for VM runtimes. + # Corresponds to the JSON property `network` + # @return [Google::Apis::AppengineV1beta5::Network] + attr_accessor :network + + # 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. + # Corresponds to the JSON property `nobuildFilesRegex` + # @return [String] + attr_accessor :nobuild_files_regex + + # Machine resources for a version. + # Corresponds to the JSON property `resources` + # @return [Google::Apis::AppengineV1beta5::Resources] + attr_accessor :resources + + # Desired runtime. Example: python27. + # Corresponds to the JSON property `runtime` + # @return [String] + attr_accessor :runtime + + # The version of the API in the given runtime environment. Please see the app. + # yaml reference for valid values at https://cloud.google.com/appengine/docs/ + # standard//config/appref + # Corresponds to the JSON property `runtimeApiVersion` + # @return [String] + attr_accessor :runtime_api_version + + # 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. + # Corresponds to the JSON property `servingStatus` + # @return [String] + attr_accessor :serving_status + + # Whether multiple requests can be dispatched to this version at once. + # Corresponds to the JSON property `threadsafe` + # @return [Boolean] + attr_accessor :threadsafe + alias_method :threadsafe?, :threadsafe + + # Whether to deploy this version in a container on a virtual machine. + # Corresponds to the JSON property `vm` + # @return [Boolean] + attr_accessor :vm + alias_method :vm?, :vm + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @api_config = args[:api_config] if args.key?(:api_config) + @automatic_scaling = args[:automatic_scaling] if args.key?(:automatic_scaling) + @basic_scaling = args[:basic_scaling] if args.key?(:basic_scaling) + @beta_settings = args[:beta_settings] if args.key?(:beta_settings) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @default_expiration = args[:default_expiration] if args.key?(:default_expiration) + @deployer = args[:deployer] if args.key?(:deployer) + @deployment = args[:deployment] if args.key?(:deployment) + @disk_usage_bytes = args[:disk_usage_bytes] if args.key?(:disk_usage_bytes) + @endpoints_api_service = args[:endpoints_api_service] if args.key?(:endpoints_api_service) + @env = args[:env] if args.key?(:env) + @env_variables = args[:env_variables] if args.key?(:env_variables) + @error_handlers = args[:error_handlers] if args.key?(:error_handlers) + @handlers = args[:handlers] if args.key?(:handlers) + @health_check = args[:health_check] if args.key?(:health_check) + @id = args[:id] if args.key?(:id) + @inbound_services = args[:inbound_services] if args.key?(:inbound_services) + @instance_class = args[:instance_class] if args.key?(:instance_class) + @libraries = args[:libraries] if args.key?(:libraries) + @manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @nobuild_files_regex = args[:nobuild_files_regex] if args.key?(:nobuild_files_regex) + @resources = args[:resources] if args.key?(:resources) + @runtime = args[:runtime] if args.key?(:runtime) + @runtime_api_version = args[:runtime_api_version] if args.key?(:runtime_api_version) + @serving_status = args[:serving_status] if args.key?(:serving_status) + @threadsafe = args[:threadsafe] if args.key?(:threadsafe) + @vm = args[:vm] if args.key?(:vm) + end + end + + # Volumes mounted within the app container. Only applicable for VM runtimes. + class Volume + include Google::Apis::Core::Hashable + + # Unique name for the volume. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Volume size in gigabytes. + # Corresponds to the JSON property `sizeGb` + # @return [Float] + attr_accessor :size_gb + + # Underlying volume type, e.g. 'tmpfs'. + # Corresponds to the JSON property `volumeType` + # @return [String] + attr_accessor :volume_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @size_gb = args[:size_gb] if args.key?(:size_gb) + @volume_type = args[:volume_type] if args.key?(:volume_type) + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta5/representations.rb b/generated/google/apis/appengine_v1beta5/representations.rb new file mode 100644 index 000000000..03e408a8f --- /dev/null +++ b/generated/google/apis/appengine_v1beta5/representations.rb @@ -0,0 +1,822 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta5 + + class ApiConfigHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApiEndpointHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Application + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutomaticScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BasicScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ContainerInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CpuUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DebugInstanceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Deployment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EndpointsApiService + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ErrorHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FileInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IdentityAwareProxy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Instance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Library + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListInstancesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListLocationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListServicesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListVersionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Location + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LocationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManualScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Network + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataExperimental + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Alpha + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta5 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RequestUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Resources + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ScriptHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Service + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StaticFilesHandler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TrafficSplit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlDispatchRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMap + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Version + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Volume + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApiConfigHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auth_fail_action, as: 'authFailAction' + property :login, as: 'login' + property :script, as: 'script' + property :security_level, as: 'securityLevel' + property :url, as: 'url' + end + end + + class ApiEndpointHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :script_path, as: 'scriptPath' + end + end + + class Application + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auth_domain, as: 'authDomain' + property :code_bucket, as: 'codeBucket' + property :default_bucket, as: 'defaultBucket' + property :default_cookie_expiration, as: 'defaultCookieExpiration' + property :default_hostname, as: 'defaultHostname' + collection :dispatch_rules, as: 'dispatchRules', class: Google::Apis::AppengineV1beta5::UrlDispatchRule, decorator: Google::Apis::AppengineV1beta5::UrlDispatchRule::Representation + + property :iap, as: 'iap', class: Google::Apis::AppengineV1beta5::IdentityAwareProxy, decorator: Google::Apis::AppengineV1beta5::IdentityAwareProxy::Representation + + property :id, as: 'id' + property :location, as: 'location' + property :name, as: 'name' + end + end + + class AutomaticScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cool_down_period, as: 'coolDownPeriod' + property :cpu_utilization, as: 'cpuUtilization', class: Google::Apis::AppengineV1beta5::CpuUtilization, decorator: Google::Apis::AppengineV1beta5::CpuUtilization::Representation + + property :disk_utilization, as: 'diskUtilization', class: Google::Apis::AppengineV1beta5::DiskUtilization, decorator: Google::Apis::AppengineV1beta5::DiskUtilization::Representation + + property :max_concurrent_requests, as: 'maxConcurrentRequests' + property :max_idle_instances, as: 'maxIdleInstances' + property :max_pending_latency, as: 'maxPendingLatency' + property :max_total_instances, as: 'maxTotalInstances' + property :min_idle_instances, as: 'minIdleInstances' + property :min_pending_latency, as: 'minPendingLatency' + property :min_total_instances, as: 'minTotalInstances' + property :network_utilization, as: 'networkUtilization', class: Google::Apis::AppengineV1beta5::NetworkUtilization, decorator: Google::Apis::AppengineV1beta5::NetworkUtilization::Representation + + property :request_utilization, as: 'requestUtilization', class: Google::Apis::AppengineV1beta5::RequestUtilization, decorator: Google::Apis::AppengineV1beta5::RequestUtilization::Representation + + end + end + + class BasicScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :idle_timeout, as: 'idleTimeout' + property :max_instances, as: 'maxInstances' + end + end + + class ContainerInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :image, as: 'image' + end + end + + class CpuUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :aggregation_window_length, as: 'aggregationWindowLength' + property :target_utilization, as: 'targetUtilization' + end + end + + class DebugInstanceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ssh_key, as: 'sshKey' + end + end + + class Deployment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :container, as: 'container', class: Google::Apis::AppengineV1beta5::ContainerInfo, decorator: Google::Apis::AppengineV1beta5::ContainerInfo::Representation + + hash :files, as: 'files', class: Google::Apis::AppengineV1beta5::FileInfo, decorator: Google::Apis::AppengineV1beta5::FileInfo::Representation + + collection :source_references, as: 'sourceReferences', class: Google::Apis::AppengineV1beta5::SourceReference, decorator: Google::Apis::AppengineV1beta5::SourceReference::Representation + + end + end + + class DiskUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_read_bytes_per_sec, as: 'targetReadBytesPerSec' + property :target_read_ops_per_sec, as: 'targetReadOpsPerSec' + property :target_write_bytes_per_sec, as: 'targetWriteBytesPerSec' + property :target_write_ops_per_sec, as: 'targetWriteOpsPerSec' + end + end + + class EndpointsApiService + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config_id, as: 'configId' + property :name, as: 'name' + end + end + + class ErrorHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_code, as: 'errorCode' + property :mime_type, as: 'mimeType' + property :static_file, as: 'staticFile' + end + end + + class FileInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :mime_type, as: 'mimeType' + property :sha1_sum, as: 'sha1Sum' + property :source_url, as: 'sourceUrl' + end + end + + class HealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval, as: 'checkInterval' + property :disable_health_check, as: 'disableHealthCheck' + property :healthy_threshold, as: 'healthyThreshold' + property :host, as: 'host' + property :restart_threshold, as: 'restartThreshold' + property :timeout, as: 'timeout' + property :unhealthy_threshold, as: 'unhealthyThreshold' + end + end + + class IdentityAwareProxy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + property :oauth2_client_id, as: 'oauth2ClientId' + property :oauth2_client_secret, as: 'oauth2ClientSecret' + property :oauth2_client_secret_sha256, as: 'oauth2ClientSecretSha256' + end + end + + class Instance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_engine_release, as: 'appEngineRelease' + property :availability, as: 'availability' + property :average_latency, as: 'averageLatency' + property :errors, as: 'errors' + property :id, as: 'id' + property :memory_usage, :numeric_string => true, as: 'memoryUsage' + property :name, as: 'name' + property :qps, as: 'qps' + property :requests, as: 'requests' + property :start_timestamp, as: 'startTimestamp' + property :vm_id, as: 'vmId' + property :vm_ip, as: 'vmIp' + property :vm_name, as: 'vmName' + property :vm_status, as: 'vmStatus' + property :vm_unlocked, as: 'vmUnlocked' + property :vm_zone_name, as: 'vmZoneName' + end + end + + class Library + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :version, as: 'version' + end + end + + class ListInstancesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::AppengineV1beta5::Instance, decorator: Google::Apis::AppengineV1beta5::Instance::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListLocationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :locations, as: 'locations', class: Google::Apis::AppengineV1beta5::Location, decorator: Google::Apis::AppengineV1beta5::Location::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::AppengineV1beta5::Operation, decorator: Google::Apis::AppengineV1beta5::Operation::Representation + + end + end + + class ListServicesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :services, as: 'services', class: Google::Apis::AppengineV1beta5::Service, decorator: Google::Apis::AppengineV1beta5::Service::Representation + + end + end + + class ListVersionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :versions, as: 'versions', class: Google::Apis::AppengineV1beta5::Version, decorator: Google::Apis::AppengineV1beta5::Version::Representation + + end + end + + class Location + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + property :location_id, as: 'locationId' + hash :metadata, as: 'metadata' + property :name, as: 'name' + end + end + + class LocationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :flexible_environment_available, as: 'flexibleEnvironmentAvailable' + property :standard_environment_available, as: 'standardEnvironmentAvailable' + end + end + + class ManualScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instances, as: 'instances' + end + end + + class Network + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :forwarded_ports, as: 'forwardedPorts' + property :instance_tag, as: 'instanceTag' + property :name, as: 'name' + property :subnetwork_name, as: 'subnetworkName' + end + end + + class NetworkUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_received_bytes_per_sec, as: 'targetReceivedBytesPerSec' + property :target_received_packets_per_sec, as: 'targetReceivedPacketsPerSec' + property :target_sent_bytes_per_sec, as: 'targetSentBytesPerSec' + property :target_sent_packets_per_sec, as: 'targetSentPacketsPerSec' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::AppengineV1beta5::Status, decorator: Google::Apis::AppengineV1beta5::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :operation_type, as: 'operationType' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataExperimental + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class OperationMetadataV1 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Alpha + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :ephemeral_message, as: 'ephemeralMessage' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + collection :warning, as: 'warning' + end + end + + class OperationMetadataV1Beta5 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :insert_time, as: 'insertTime' + property :method_prop, as: 'method' + property :target, as: 'target' + property :user, as: 'user' + end + end + + class RequestUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target_concurrent_requests, as: 'targetConcurrentRequests' + property :target_request_count_per_sec, as: 'targetRequestCountPerSec' + end + end + + class Resources + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cpu, as: 'cpu' + property :disk_gb, as: 'diskGb' + property :memory_gb, as: 'memoryGb' + collection :volumes, as: 'volumes', class: Google::Apis::AppengineV1beta5::Volume, decorator: Google::Apis::AppengineV1beta5::Volume::Representation + + end + end + + class ScriptHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :script_path, as: 'scriptPath' + end + end + + class Service + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :name, as: 'name' + property :split, as: 'split', class: Google::Apis::AppengineV1beta5::TrafficSplit, decorator: Google::Apis::AppengineV1beta5::TrafficSplit::Representation + + end + end + + class SourceReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :repository, as: 'repository' + property :revision_id, as: 'revisionId' + end + end + + class StaticFilesHandler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :application_readable, as: 'applicationReadable' + property :expiration, as: 'expiration' + hash :http_headers, as: 'httpHeaders' + property :mime_type, as: 'mimeType' + property :path, as: 'path' + property :require_matching_file, as: 'requireMatchingFile' + property :upload_path_regex, as: 'uploadPathRegex' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TrafficSplit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :allocations, as: 'allocations' + property :shard_by, as: 'shardBy' + end + end + + class UrlDispatchRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :domain, as: 'domain' + property :path, as: 'path' + property :service, as: 'service' + end + end + + class UrlMap + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_endpoint, as: 'apiEndpoint', class: Google::Apis::AppengineV1beta5::ApiEndpointHandler, decorator: Google::Apis::AppengineV1beta5::ApiEndpointHandler::Representation + + property :auth_fail_action, as: 'authFailAction' + property :login, as: 'login' + property :redirect_http_response_code, as: 'redirectHttpResponseCode' + property :script, as: 'script', class: Google::Apis::AppengineV1beta5::ScriptHandler, decorator: Google::Apis::AppengineV1beta5::ScriptHandler::Representation + + property :security_level, as: 'securityLevel' + property :static_files, as: 'staticFiles', class: Google::Apis::AppengineV1beta5::StaticFilesHandler, decorator: Google::Apis::AppengineV1beta5::StaticFilesHandler::Representation + + property :url_regex, as: 'urlRegex' + end + end + + class Version + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_config, as: 'apiConfig', class: Google::Apis::AppengineV1beta5::ApiConfigHandler, decorator: Google::Apis::AppengineV1beta5::ApiConfigHandler::Representation + + property :automatic_scaling, as: 'automaticScaling', class: Google::Apis::AppengineV1beta5::AutomaticScaling, decorator: Google::Apis::AppengineV1beta5::AutomaticScaling::Representation + + property :basic_scaling, as: 'basicScaling', class: Google::Apis::AppengineV1beta5::BasicScaling, decorator: Google::Apis::AppengineV1beta5::BasicScaling::Representation + + hash :beta_settings, as: 'betaSettings' + property :creation_time, as: 'creationTime' + property :default_expiration, as: 'defaultExpiration' + property :deployer, as: 'deployer' + property :deployment, as: 'deployment', class: Google::Apis::AppengineV1beta5::Deployment, decorator: Google::Apis::AppengineV1beta5::Deployment::Representation + + property :disk_usage_bytes, :numeric_string => true, as: 'diskUsageBytes' + property :endpoints_api_service, as: 'endpointsApiService', class: Google::Apis::AppengineV1beta5::EndpointsApiService, decorator: Google::Apis::AppengineV1beta5::EndpointsApiService::Representation + + property :env, as: 'env' + hash :env_variables, as: 'envVariables' + collection :error_handlers, as: 'errorHandlers', class: Google::Apis::AppengineV1beta5::ErrorHandler, decorator: Google::Apis::AppengineV1beta5::ErrorHandler::Representation + + collection :handlers, as: 'handlers', class: Google::Apis::AppengineV1beta5::UrlMap, decorator: Google::Apis::AppengineV1beta5::UrlMap::Representation + + property :health_check, as: 'healthCheck', class: Google::Apis::AppengineV1beta5::HealthCheck, decorator: Google::Apis::AppengineV1beta5::HealthCheck::Representation + + property :id, as: 'id' + collection :inbound_services, as: 'inboundServices' + property :instance_class, as: 'instanceClass' + collection :libraries, as: 'libraries', class: Google::Apis::AppengineV1beta5::Library, decorator: Google::Apis::AppengineV1beta5::Library::Representation + + property :manual_scaling, as: 'manualScaling', class: Google::Apis::AppengineV1beta5::ManualScaling, decorator: Google::Apis::AppengineV1beta5::ManualScaling::Representation + + property :name, as: 'name' + property :network, as: 'network', class: Google::Apis::AppengineV1beta5::Network, decorator: Google::Apis::AppengineV1beta5::Network::Representation + + property :nobuild_files_regex, as: 'nobuildFilesRegex' + property :resources, as: 'resources', class: Google::Apis::AppengineV1beta5::Resources, decorator: Google::Apis::AppengineV1beta5::Resources::Representation + + property :runtime, as: 'runtime' + property :runtime_api_version, as: 'runtimeApiVersion' + property :serving_status, as: 'servingStatus' + property :threadsafe, as: 'threadsafe' + property :vm, as: 'vm' + end + end + + class Volume + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :size_gb, as: 'sizeGb' + property :volume_type, as: 'volumeType' + end + end + end + end +end diff --git a/generated/google/apis/appengine_v1beta5/service.rb b/generated/google/apis/appengine_v1beta5/service.rb new file mode 100644 index 000000000..3ab4b9fbf --- /dev/null +++ b/generated/google/apis/appengine_v1beta5/service.rb @@ -0,0 +1,877 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module AppengineV1beta5 + # Google App Engine Admin API + # + # The App Engine Admin API enables developers to provision and manage their App + # Engine applications. + # + # @example + # require 'google/apis/appengine_v1beta5' + # + # Appengine = Google::Apis::AppengineV1beta5 # Alias the module + # service = Appengine::AppengineService.new + # + # @see https://cloud.google.com/appengine/docs/admin-api/ + class AppengineService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://appengine.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates an App Engine application for a Google Cloud Platform project. + # Required fields: + # id - The ID of the target Cloud Platform project. + # location - The region (https://cloud.google.com/appengine/docs/locations) + # where you want the App Engine application located.For more information about + # App Engine applications, see Managing Projects, Applications, and Billing ( + # https://cloud.google.com/appengine/docs/python/console/). + # @param [Google::Apis::AppengineV1beta5::Application] application_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app(application_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta5/apps', options) + command.request_representation = Google::Apis::AppengineV1beta5::Application::Representation + command.request_object = application_object + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about an application. + # @param [String] apps_id + # Part of `name`. Name of the application to get. Example: apps/myapp. + # @param [Boolean] ensure_resources_exist + # Certain resources associated with an application are created on-demand. + # Controls whether these resources should be created when performing the GET + # operation. If specified and any resources could not be created, the request + # will fail with an error code. Additionally, this parameter can cause the + # request to take longer to complete. Note: This parameter will be deprecated in + # a future version of the API. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Application] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Application] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app(apps_id, ensure_resources_exist: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Application::Representation + command.response_class = Google::Apis::AppengineV1beta5::Application + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['ensureResourcesExist'] = ensure_resources_exist unless ensure_resources_exist.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified Application resource. You can update the following + # fields: + # auth_domain (https://cloud.google.com/appengine/docs/admin-api/reference/rest/ + # v1beta5/apps#Application.FIELDS.auth_domain) + # default_cookie_expiration (https://cloud.google.com/appengine/docs/admin-api/ + # reference/rest/v1beta5/apps#Application.FIELDS.default_cookie_expiration) + # @param [String] apps_id + # Part of `name`. Name of the Application resource to update. Example: apps/ + # myapp. + # @param [Google::Apis::AppengineV1beta5::Application] application_object + # @param [String] mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app(apps_id, application_object = nil, mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta5/apps/{appsId}', options) + command.request_representation = Google::Apis::AppengineV1beta5::Application::Representation + command.request_object = application_object + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['mask'] = mask unless mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get information about a location. + # @param [String] apps_id + # Part of `name`. Resource name for the location. + # @param [String] locations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Location] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Location] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_location(apps_id, locations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/locations/{locationsId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Location::Representation + command.response_class = Google::Apis::AppengineV1beta5::Location + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['locationsId'] = locations_id unless locations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists information about the supported locations for this service. + # @param [String] apps_id + # Part of `name`. The resource that owns the locations collection, if applicable. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::ListLocationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::ListLocationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_locations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/locations', options) + command.response_representation = Google::Apis::AppengineV1beta5::ListLocationsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta5::ListLocationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. The name of the operation resource. + # @param [String] operations_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_operation(apps_id, operations_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/operations/{operationsId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['operationsId'] = operations_id unless operations_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the server + # doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding + # allows API services to override the binding to use different resource name + # schemes, such as users/*/operations. To override the binding, API services can + # add a binding such as "/v1/`name=users/*`/operations" to their service + # configuration. For backwards compatibility, the default name includes the + # operations collection id, however overriding users must ensure the name + # binding is the parent resource, without the operations collection id. + # @param [String] apps_id + # Part of `name`. The name of the operation's parent resource. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_operations(apps_id, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/operations', options) + command.response_representation = Google::Apis::AppengineV1beta5::ListOperationsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta5::ListOperationsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified service and all enclosed versions. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_service(apps_id, services_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta5/apps/{appsId}/services/{servicesId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the current configuration of the specified service. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Service] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Service] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_service(apps_id, services_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/services/{servicesId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Service::Representation + command.response_class = Google::Apis::AppengineV1beta5::Service + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all the services in the application. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::ListServicesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::ListServicesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_services(apps_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/services', options) + command.response_representation = Google::Apis::AppengineV1beta5::ListServicesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta5::ListServicesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the configuration of the specified service. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/services/ + # default. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta5::Service] service_object + # @param [String] mask + # Standard field mask for the set of fields to be updated. + # @param [Boolean] migrate_traffic + # Set to true to gradually shift traffic to one or more versions that you + # specify. By default, traffic is shifted immediately. For gradual traffic + # migration, the target versions must be located within instances that are + # configured for both warmup requests (https://cloud.google.com/appengine/docs/ + # admin-api/reference/rest/v1beta5/apps.services.versions#inboundservicetype) + # and automatic scaling (https://cloud.google.com/appengine/docs/admin-api/ + # reference/rest/v1beta5/apps.services.versions#automaticscaling). You must + # specify the shardBy (https://cloud.google.com/appengine/docs/admin-api/ + # reference/rest/v1beta5/apps.services#shardby) field in the Service resource. + # Gradual traffic migration is not supported in the App Engine flexible + # environment. For examples, see Migrating and Splitting Traffic (https://cloud. + # google.com/appengine/docs/admin-api/migrating-splitting-traffic). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_service(apps_id, services_id, service_object = nil, mask: nil, migrate_traffic: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta5/apps/{appsId}/services/{servicesId}', options) + command.request_representation = Google::Apis::AppengineV1beta5::Service::Representation + command.request_object = service_object + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['mask'] = mask unless mask.nil? + command.query['migrateTraffic'] = migrate_traffic unless migrate_traffic.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deploys new code and resource files to a new version. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. For example: "apps/myapp/ + # services/default". + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta5::Version] version_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_app_service_version(apps_id, services_id, version_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta5/apps/{appsId}/services/{servicesId}/versions', options) + command.request_representation = Google::Apis::AppengineV1beta5::Version::Representation + command.request_object = version_object + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an existing version. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_service_version(apps_id, services_id, versions_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified Version resource. By default, only a BASIC_VIEW will be + # returned. Specify the FULL_VIEW parameter to get the full resource. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] view + # Controls the set of fields returned in the Get response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Version] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Version] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_service_version(apps_id, services_id, versions_id, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Version::Representation + command.response_class = Google::Apis::AppengineV1beta5::Version + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the versions of a service. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] view + # Controls the set of fields returned in the List response. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::ListVersionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::ListVersionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_service_versions(apps_id, services_id, page_size: nil, page_token: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/services/{servicesId}/versions', options) + command.response_representation = Google::Apis::AppengineV1beta5::ListVersionsResponse::Representation + command.response_class = Google::Apis::AppengineV1beta5::ListVersionsResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['view'] = view unless view.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. Name of the resource to update. Example: apps/myapp/services/ + # default/versions/1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta5::Version] version_object + # @param [String] mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_app_service_version(apps_id, services_id, versions_id, version_object = nil, mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}', options) + command.request_representation = Google::Apis::AppengineV1beta5::Version::Representation + command.request_object = version_object + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['mask'] = mask unless mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1/instances/instance-1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [Google::Apis::AppengineV1beta5::DebugInstanceRequest] debug_instance_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def debug_instance(apps_id, services_id, versions_id, instances_id, debug_instance_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug', options) + command.request_representation = Google::Apis::AppengineV1beta5::DebugInstanceRequest::Representation + command.request_object = debug_instance_request_object + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Stops a running instance. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. For example: "apps/myapp/ + # services/default/versions/v1/instances/instance-1". + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_app_service_version_instance(apps_id, services_id, versions_id, instances_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Operation::Representation + command.response_class = Google::Apis::AppengineV1beta5::Operation + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets instance information. + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1/instances/instance-1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [String] instances_id + # Part of `name`. See documentation of `appsId`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::Instance] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::Instance] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_app_service_version_instance(apps_id, services_id, versions_id, instances_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}', options) + command.response_representation = Google::Apis::AppengineV1beta5::Instance::Representation + command.response_class = Google::Apis::AppengineV1beta5::Instance + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.params['instancesId'] = instances_id unless instances_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the instances of a version.Tip: To aggregate details about instances + # over time, see the Stackdriver Monitoring API (https://cloud.google.com/ + # monitoring/api/ref_v3/rest/v3/projects.timeSeries/list). + # @param [String] apps_id + # Part of `name`. Name of the resource requested. Example: apps/myapp/services/ + # default/versions/v1. + # @param [String] services_id + # Part of `name`. See documentation of `appsId`. + # @param [String] versions_id + # Part of `name`. See documentation of `appsId`. + # @param [Fixnum] page_size + # Maximum results to return per page. + # @param [String] page_token + # Continuation token for fetching the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AppengineV1beta5::ListInstancesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AppengineV1beta5::ListInstancesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_app_service_version_instances(apps_id, services_id, versions_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances', options) + command.response_representation = Google::Apis::AppengineV1beta5::ListInstancesResponse::Representation + command.response_class = Google::Apis::AppengineV1beta5::ListInstancesResponse + command.params['appsId'] = apps_id unless apps_id.nil? + command.params['servicesId'] = services_id unless services_id.nil? + command.params['versionsId'] = versions_id unless versions_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/blogger_v2.rb b/generated/google/apis/blogger_v2.rb new file mode 100644 index 000000000..8d1368598 --- /dev/null +++ b/generated/google/apis/blogger_v2.rb @@ -0,0 +1,34 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/blogger_v2/service.rb' +require 'google/apis/blogger_v2/classes.rb' +require 'google/apis/blogger_v2/representations.rb' + +module Google + module Apis + # Blogger API + # + # API for access to the data within Blogger. + # + # @see https://developers.google.com/blogger/docs/2.0/json/getting_started + module BloggerV2 + VERSION = 'V2' + REVISION = '20150422' + + # Manage your Blogger account + AUTH_BLOGGER = 'https://www.googleapis.com/auth/blogger' + end + end +end diff --git a/generated/google/apis/blogger_v2/classes.rb b/generated/google/apis/blogger_v2/classes.rb new file mode 100644 index 000000000..8efa49c32 --- /dev/null +++ b/generated/google/apis/blogger_v2/classes.rb @@ -0,0 +1,947 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module BloggerV2 + + # + class Blog + include Google::Apis::Core::Hashable + + # The description of this blog. This is displayed underneath the title. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The identifier for this resource. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The kind of this entry. Always blogger#blog + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The locale this Blog is set to. + # Corresponds to the JSON property `locale` + # @return [Google::Apis::BloggerV2::Blog::Locale] + attr_accessor :locale + + # The name of this blog. This is displayed as the title. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The container of pages in this blog. + # Corresponds to the JSON property `pages` + # @return [Google::Apis::BloggerV2::Blog::Pages] + attr_accessor :pages + + # The container of posts in this blog. + # Corresponds to the JSON property `posts` + # @return [Google::Apis::BloggerV2::Blog::Posts] + attr_accessor :posts + + # RFC 3339 date-time when this blog was published. + # Corresponds to the JSON property `published` + # @return [DateTime] + attr_accessor :published + + # The API REST URL to fetch this resource from. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # RFC 3339 date-time when this blog was last updated. + # Corresponds to the JSON property `updated` + # @return [DateTime] + attr_accessor :updated + + # The URL where this blog is published. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @locale = args[:locale] if args.key?(:locale) + @name = args[:name] if args.key?(:name) + @pages = args[:pages] if args.key?(:pages) + @posts = args[:posts] if args.key?(:posts) + @published = args[:published] if args.key?(:published) + @self_link = args[:self_link] if args.key?(:self_link) + @updated = args[:updated] if args.key?(:updated) + @url = args[:url] if args.key?(:url) + end + + # The locale this Blog is set to. + class Locale + include Google::Apis::Core::Hashable + + # The country this blog's locale is set to. + # Corresponds to the JSON property `country` + # @return [String] + attr_accessor :country + + # The language this blog is authored in. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # The language variant this blog is authored in. + # Corresponds to the JSON property `variant` + # @return [String] + attr_accessor :variant + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @country = args[:country] if args.key?(:country) + @language = args[:language] if args.key?(:language) + @variant = args[:variant] if args.key?(:variant) + end + end + + # The container of pages in this blog. + class Pages + include Google::Apis::Core::Hashable + + # The URL of the container for pages in this blog. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The count of pages in this blog. + # Corresponds to the JSON property `totalItems` + # @return [Fixnum] + attr_accessor :total_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @self_link = args[:self_link] if args.key?(:self_link) + @total_items = args[:total_items] if args.key?(:total_items) + end + end + + # The container of posts in this blog. + class Posts + include Google::Apis::Core::Hashable + + # The URL of the container for posts in this blog. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The count of posts in this blog. + # Corresponds to the JSON property `totalItems` + # @return [Fixnum] + attr_accessor :total_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @self_link = args[:self_link] if args.key?(:self_link) + @total_items = args[:total_items] if args.key?(:total_items) + end + end + end + + # + class BlogList + include Google::Apis::Core::Hashable + + # The list of Blogs this user has Authorship or Admin rights over. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of this entity. Always blogger#blogList + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class Comment + include Google::Apis::Core::Hashable + + # The author of this Comment. + # Corresponds to the JSON property `author` + # @return [Google::Apis::BloggerV2::Comment::Author] + attr_accessor :author + + # Data about the blog containing this comment. + # Corresponds to the JSON property `blog` + # @return [Google::Apis::BloggerV2::Comment::Blog] + attr_accessor :blog + + # The actual content of the comment. May include HTML markup. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + # The identifier for this resource. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Data about the comment this is in reply to. + # Corresponds to the JSON property `inReplyTo` + # @return [Google::Apis::BloggerV2::Comment::InReplyTo] + attr_accessor :in_reply_to + + # The kind of this entry. Always blogger#comment + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Data about the post containing this comment. + # Corresponds to the JSON property `post` + # @return [Google::Apis::BloggerV2::Comment::Post] + attr_accessor :post + + # RFC 3339 date-time when this comment was published. + # Corresponds to the JSON property `published` + # @return [DateTime] + attr_accessor :published + + # The API REST URL to fetch this resource from. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # RFC 3339 date-time when this comment was last updated. + # Corresponds to the JSON property `updated` + # @return [DateTime] + attr_accessor :updated + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @author = args[:author] if args.key?(:author) + @blog = args[:blog] if args.key?(:blog) + @content = args[:content] if args.key?(:content) + @id = args[:id] if args.key?(:id) + @in_reply_to = args[:in_reply_to] if args.key?(:in_reply_to) + @kind = args[:kind] if args.key?(:kind) + @post = args[:post] if args.key?(:post) + @published = args[:published] if args.key?(:published) + @self_link = args[:self_link] if args.key?(:self_link) + @updated = args[:updated] if args.key?(:updated) + end + + # The author of this Comment. + class Author + include Google::Apis::Core::Hashable + + # The display name. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The identifier of the Comment creator. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The comment creator's avatar. + # Corresponds to the JSON property `image` + # @return [Google::Apis::BloggerV2::Comment::Author::Image] + attr_accessor :image + + # The URL of the Comment creator's Profile page. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @id = args[:id] if args.key?(:id) + @image = args[:image] if args.key?(:image) + @url = args[:url] if args.key?(:url) + end + + # The comment creator's avatar. + class Image + include Google::Apis::Core::Hashable + + # The comment creator's avatar URL. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @url = args[:url] if args.key?(:url) + end + end + end + + # Data about the blog containing this comment. + class Blog + include Google::Apis::Core::Hashable + + # The identifier of the blog containing this comment. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + end + end + + # Data about the comment this is in reply to. + class InReplyTo + include Google::Apis::Core::Hashable + + # The identified of the parent of this comment. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + end + end + + # Data about the post containing this comment. + class Post + include Google::Apis::Core::Hashable + + # The identifier of the post containing this comment. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + end + end + end + + # + class CommentList + include Google::Apis::Core::Hashable + + # The List of Comments for a Post. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of this entry. Always blogger#commentList + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Pagination token to fetch the next page, if one exists. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Pagination token to fetch the previous page, if one exists. + # Corresponds to the JSON property `prevPageToken` + # @return [String] + attr_accessor :prev_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @prev_page_token = args[:prev_page_token] if args.key?(:prev_page_token) + end + end + + # + class Page + include Google::Apis::Core::Hashable + + # The author of this Page. + # Corresponds to the JSON property `author` + # @return [Google::Apis::BloggerV2::Page::Author] + attr_accessor :author + + # Data about the blog containing this Page. + # Corresponds to the JSON property `blog` + # @return [Google::Apis::BloggerV2::Page::Blog] + attr_accessor :blog + + # The body content of this Page, in HTML. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + # The identifier for this resource. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The kind of this entity. Always blogger#page + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # RFC 3339 date-time when this Page was published. + # Corresponds to the JSON property `published` + # @return [DateTime] + attr_accessor :published + + # The API REST URL to fetch this resource from. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The title of this entity. This is the name displayed in the Admin user + # interface. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + # RFC 3339 date-time when this Page was last updated. + # Corresponds to the JSON property `updated` + # @return [DateTime] + attr_accessor :updated + + # The URL that this Page is displayed at. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @author = args[:author] if args.key?(:author) + @blog = args[:blog] if args.key?(:blog) + @content = args[:content] if args.key?(:content) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @published = args[:published] if args.key?(:published) + @self_link = args[:self_link] if args.key?(:self_link) + @title = args[:title] if args.key?(:title) + @updated = args[:updated] if args.key?(:updated) + @url = args[:url] if args.key?(:url) + end + + # The author of this Page. + class Author + include Google::Apis::Core::Hashable + + # The display name. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The identifier of the Page creator. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The page author's avatar. + # Corresponds to the JSON property `image` + # @return [Google::Apis::BloggerV2::Page::Author::Image] + attr_accessor :image + + # The URL of the Page creator's Profile page. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @id = args[:id] if args.key?(:id) + @image = args[:image] if args.key?(:image) + @url = args[:url] if args.key?(:url) + end + + # The page author's avatar. + class Image + include Google::Apis::Core::Hashable + + # The page author's avatar URL. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @url = args[:url] if args.key?(:url) + end + end + end + + # Data about the blog containing this Page. + class Blog + include Google::Apis::Core::Hashable + + # The identifier of the blog containing this page. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + end + end + end + + # + class PageList + include Google::Apis::Core::Hashable + + # The list of Pages for a Blog. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of this entity. Always blogger#pageList + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class Post + include Google::Apis::Core::Hashable + + # The author of this Post. + # Corresponds to the JSON property `author` + # @return [Google::Apis::BloggerV2::Post::Author] + attr_accessor :author + + # Data about the blog containing this Post. + # Corresponds to the JSON property `blog` + # @return [Google::Apis::BloggerV2::Post::Blog] + attr_accessor :blog + + # The content of the Post. May contain HTML markup. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + # The identifier of this Post. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The kind of this entity. Always blogger#post + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The list of labels this Post was tagged with. + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # RFC 3339 date-time when this Post was published. + # Corresponds to the JSON property `published` + # @return [DateTime] + attr_accessor :published + + # The container of comments on this Post. + # Corresponds to the JSON property `replies` + # @return [Google::Apis::BloggerV2::Post::Replies] + attr_accessor :replies + + # The API REST URL to fetch this resource from. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The title of the Post. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + # RFC 3339 date-time when this Post was last updated. + # Corresponds to the JSON property `updated` + # @return [DateTime] + attr_accessor :updated + + # The URL where this Post is displayed. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @author = args[:author] if args.key?(:author) + @blog = args[:blog] if args.key?(:blog) + @content = args[:content] if args.key?(:content) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @labels = args[:labels] if args.key?(:labels) + @published = args[:published] if args.key?(:published) + @replies = args[:replies] if args.key?(:replies) + @self_link = args[:self_link] if args.key?(:self_link) + @title = args[:title] if args.key?(:title) + @updated = args[:updated] if args.key?(:updated) + @url = args[:url] if args.key?(:url) + end + + # The author of this Post. + class Author + include Google::Apis::Core::Hashable + + # The display name. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The identifier of the Post creator. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The Post author's avatar. + # Corresponds to the JSON property `image` + # @return [Google::Apis::BloggerV2::Post::Author::Image] + attr_accessor :image + + # The URL of the Post creator's Profile page. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @id = args[:id] if args.key?(:id) + @image = args[:image] if args.key?(:image) + @url = args[:url] if args.key?(:url) + end + + # The Post author's avatar. + class Image + include Google::Apis::Core::Hashable + + # The Post author's avatar URL. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @url = args[:url] if args.key?(:url) + end + end + end + + # Data about the blog containing this Post. + class Blog + include Google::Apis::Core::Hashable + + # The identifier of the Blog that contains this Post. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + end + end + + # The container of comments on this Post. + class Replies + include Google::Apis::Core::Hashable + + # The URL of the comments on this post. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The count of comments on this post. + # Corresponds to the JSON property `totalItems` + # @return [Fixnum] + attr_accessor :total_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @self_link = args[:self_link] if args.key?(:self_link) + @total_items = args[:total_items] if args.key?(:total_items) + end + end + end + + # + class PostList + include Google::Apis::Core::Hashable + + # The list of Posts for this Blog. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of this entity. Always blogger#postList + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Pagination token to fetch the next page, if one exists. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Pagination token to fetch the previous page, if one exists. + # Corresponds to the JSON property `prevPageToken` + # @return [String] + attr_accessor :prev_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @prev_page_token = args[:prev_page_token] if args.key?(:prev_page_token) + end + end + + # + class User + include Google::Apis::Core::Hashable + + # Profile summary information. + # Corresponds to the JSON property `about` + # @return [String] + attr_accessor :about + + # The container of blogs for this user. + # Corresponds to the JSON property `blogs` + # @return [Google::Apis::BloggerV2::User::Blogs] + attr_accessor :blogs + + # The timestamp of when this profile was created, in seconds since epoch. + # Corresponds to the JSON property `created` + # @return [DateTime] + attr_accessor :created + + # The display name. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The identifier for this User. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of this entity. Always blogger#user + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # This user's locale + # Corresponds to the JSON property `locale` + # @return [Google::Apis::BloggerV2::User::Locale] + attr_accessor :locale + + # The API REST URL to fetch this resource from. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The user's profile page. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @about = args[:about] if args.key?(:about) + @blogs = args[:blogs] if args.key?(:blogs) + @created = args[:created] if args.key?(:created) + @display_name = args[:display_name] if args.key?(:display_name) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @locale = args[:locale] if args.key?(:locale) + @self_link = args[:self_link] if args.key?(:self_link) + @url = args[:url] if args.key?(:url) + end + + # The container of blogs for this user. + class Blogs + include Google::Apis::Core::Hashable + + # The URL of the Blogs for this user. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # This user's locale + class Locale + include Google::Apis::Core::Hashable + + # The user's country setting. + # Corresponds to the JSON property `country` + # @return [String] + attr_accessor :country + + # The user's language setting. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # The user's language variant setting. + # Corresponds to the JSON property `variant` + # @return [String] + attr_accessor :variant + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @country = args[:country] if args.key?(:country) + @language = args[:language] if args.key?(:language) + @variant = args[:variant] if args.key?(:variant) + end + end + end + end + end +end diff --git a/generated/google/apis/blogger_v2/representations.rb b/generated/google/apis/blogger_v2/representations.rb new file mode 100644 index 000000000..eb98009a3 --- /dev/null +++ b/generated/google/apis/blogger_v2/representations.rb @@ -0,0 +1,465 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module BloggerV2 + + class Blog + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Locale + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Pages + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Posts + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class BlogList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Comment + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Author + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Image + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Blog + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InReplyTo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Post + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class CommentList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Page + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Author + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Image + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Blog + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class PageList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Post + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Author + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Image + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Blog + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Replies + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class PostList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class User + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Blogs + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Locale + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Blog + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :locale, as: 'locale', class: Google::Apis::BloggerV2::Blog::Locale, decorator: Google::Apis::BloggerV2::Blog::Locale::Representation + + property :name, as: 'name' + property :pages, as: 'pages', class: Google::Apis::BloggerV2::Blog::Pages, decorator: Google::Apis::BloggerV2::Blog::Pages::Representation + + property :posts, as: 'posts', class: Google::Apis::BloggerV2::Blog::Posts, decorator: Google::Apis::BloggerV2::Blog::Posts::Representation + + property :published, as: 'published', type: DateTime + + property :self_link, as: 'selfLink' + property :updated, as: 'updated', type: DateTime + + property :url, as: 'url' + end + + class Locale + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :country, as: 'country' + property :language, as: 'language' + property :variant, as: 'variant' + end + end + + class Pages + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :self_link, as: 'selfLink' + property :total_items, as: 'totalItems' + end + end + + class Posts + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :self_link, as: 'selfLink' + property :total_items, as: 'totalItems' + end + end + end + + class BlogList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::BloggerV2::Blog, decorator: Google::Apis::BloggerV2::Blog::Representation + + property :kind, as: 'kind' + end + end + + class Comment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :author, as: 'author', class: Google::Apis::BloggerV2::Comment::Author, decorator: Google::Apis::BloggerV2::Comment::Author::Representation + + property :blog, as: 'blog', class: Google::Apis::BloggerV2::Comment::Blog, decorator: Google::Apis::BloggerV2::Comment::Blog::Representation + + property :content, as: 'content' + property :id, :numeric_string => true, as: 'id' + property :in_reply_to, as: 'inReplyTo', class: Google::Apis::BloggerV2::Comment::InReplyTo, decorator: Google::Apis::BloggerV2::Comment::InReplyTo::Representation + + property :kind, as: 'kind' + property :post, as: 'post', class: Google::Apis::BloggerV2::Comment::Post, decorator: Google::Apis::BloggerV2::Comment::Post::Representation + + property :published, as: 'published', type: DateTime + + property :self_link, as: 'selfLink' + property :updated, as: 'updated', type: DateTime + + end + + class Author + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :id, as: 'id' + property :image, as: 'image', class: Google::Apis::BloggerV2::Comment::Author::Image, decorator: Google::Apis::BloggerV2::Comment::Author::Image::Representation + + property :url, as: 'url' + end + + class Image + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :url, as: 'url' + end + end + end + + class Blog + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, :numeric_string => true, as: 'id' + end + end + + class InReplyTo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, :numeric_string => true, as: 'id' + end + end + + class Post + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, :numeric_string => true, as: 'id' + end + end + end + + class CommentList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::BloggerV2::Comment, decorator: Google::Apis::BloggerV2::Comment::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :prev_page_token, as: 'prevPageToken' + end + end + + class Page + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :author, as: 'author', class: Google::Apis::BloggerV2::Page::Author, decorator: Google::Apis::BloggerV2::Page::Author::Representation + + property :blog, as: 'blog', class: Google::Apis::BloggerV2::Page::Blog, decorator: Google::Apis::BloggerV2::Page::Blog::Representation + + property :content, as: 'content' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :published, as: 'published', type: DateTime + + property :self_link, as: 'selfLink' + property :title, as: 'title' + property :updated, as: 'updated', type: DateTime + + property :url, as: 'url' + end + + class Author + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :id, as: 'id' + property :image, as: 'image', class: Google::Apis::BloggerV2::Page::Author::Image, decorator: Google::Apis::BloggerV2::Page::Author::Image::Representation + + property :url, as: 'url' + end + + class Image + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :url, as: 'url' + end + end + end + + class Blog + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, :numeric_string => true, as: 'id' + end + end + end + + class PageList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::BloggerV2::Page, decorator: Google::Apis::BloggerV2::Page::Representation + + property :kind, as: 'kind' + end + end + + class Post + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :author, as: 'author', class: Google::Apis::BloggerV2::Post::Author, decorator: Google::Apis::BloggerV2::Post::Author::Representation + + property :blog, as: 'blog', class: Google::Apis::BloggerV2::Post::Blog, decorator: Google::Apis::BloggerV2::Post::Blog::Representation + + property :content, as: 'content' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + collection :labels, as: 'labels' + property :published, as: 'published', type: DateTime + + property :replies, as: 'replies', class: Google::Apis::BloggerV2::Post::Replies, decorator: Google::Apis::BloggerV2::Post::Replies::Representation + + property :self_link, as: 'selfLink' + property :title, as: 'title' + property :updated, as: 'updated', type: DateTime + + property :url, as: 'url' + end + + class Author + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :id, as: 'id' + property :image, as: 'image', class: Google::Apis::BloggerV2::Post::Author::Image, decorator: Google::Apis::BloggerV2::Post::Author::Image::Representation + + property :url, as: 'url' + end + + class Image + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :url, as: 'url' + end + end + end + + class Blog + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, :numeric_string => true, as: 'id' + end + end + + class Replies + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :self_link, as: 'selfLink' + property :total_items, :numeric_string => true, as: 'totalItems' + end + end + end + + class PostList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::BloggerV2::Post, decorator: Google::Apis::BloggerV2::Post::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :prev_page_token, as: 'prevPageToken' + end + end + + class User + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :about, as: 'about' + property :blogs, as: 'blogs', class: Google::Apis::BloggerV2::User::Blogs, decorator: Google::Apis::BloggerV2::User::Blogs::Representation + + property :created, as: 'created', type: DateTime + + property :display_name, as: 'displayName' + property :id, as: 'id' + property :kind, as: 'kind' + property :locale, as: 'locale', class: Google::Apis::BloggerV2::User::Locale, decorator: Google::Apis::BloggerV2::User::Locale::Representation + + property :self_link, as: 'selfLink' + property :url, as: 'url' + end + + class Blogs + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :self_link, as: 'selfLink' + end + end + + class Locale + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :country, as: 'country' + property :language, as: 'language' + property :variant, as: 'variant' + end + end + end + end + end +end diff --git a/generated/google/apis/blogger_v2/service.rb b/generated/google/apis/blogger_v2/service.rb new file mode 100644 index 000000000..9e4bc56a5 --- /dev/null +++ b/generated/google/apis/blogger_v2/service.rb @@ -0,0 +1,424 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module BloggerV2 + # Blogger API + # + # API for access to the data within Blogger. + # + # @example + # require 'google/apis/blogger_v2' + # + # Blogger = Google::Apis::BloggerV2 # Alias the module + # service = Blogger::BloggerService.new + # + # @see https://developers.google.com/blogger/docs/2.0/json/getting_started + class BloggerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'blogger/v2/') + @batch_path = 'batch' + end + + # Gets one blog by id. + # @param [String] blog_id + # The ID of the blog to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::Blog] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::Blog] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_blog(blog_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'blogs/{blogId}', options) + command.response_representation = Google::Apis::BloggerV2::Blog::Representation + command.response_class = Google::Apis::BloggerV2::Blog + command.params['blogId'] = blog_id unless blog_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets one comment by id. + # @param [String] blog_id + # ID of the blog to containing the comment. + # @param [String] post_id + # ID of the post to fetch posts from. + # @param [String] comment_id + # The ID of the comment to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::Comment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::Comment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_comment(blog_id, post_id, comment_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'blogs/{blogId}/posts/{postId}/comments/{commentId}', options) + command.response_representation = Google::Apis::BloggerV2::Comment::Representation + command.response_class = Google::Apis::BloggerV2::Comment + command.params['blogId'] = blog_id unless blog_id.nil? + command.params['postId'] = post_id unless post_id.nil? + command.params['commentId'] = comment_id unless comment_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the comments for a blog, possibly filtered. + # @param [String] blog_id + # ID of the blog to fetch comments from. + # @param [String] post_id + # ID of the post to fetch posts from. + # @param [Boolean] fetch_bodies + # Whether the body content of the comments is included. + # @param [Fixnum] max_results + # Maximum number of comments to include in the result. + # @param [String] page_token + # Continuation token if request is paged. + # @param [DateTime] start_date + # Earliest date of comment to fetch, a date-time with RFC 3339 formatting. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::CommentList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::CommentList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_comments(blog_id, post_id, fetch_bodies: nil, max_results: nil, page_token: nil, start_date: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'blogs/{blogId}/posts/{postId}/comments', options) + command.response_representation = Google::Apis::BloggerV2::CommentList::Representation + command.response_class = Google::Apis::BloggerV2::CommentList + command.params['blogId'] = blog_id unless blog_id.nil? + command.params['postId'] = post_id unless post_id.nil? + command.query['fetchBodies'] = fetch_bodies unless fetch_bodies.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['startDate'] = start_date unless start_date.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets one blog page by id. + # @param [String] blog_id + # ID of the blog containing the page. + # @param [String] page_id + # The ID of the page to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::Page] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::Page] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_page(blog_id, page_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'blogs/{blogId}/pages/{pageId}', options) + command.response_representation = Google::Apis::BloggerV2::Page::Representation + command.response_class = Google::Apis::BloggerV2::Page + command.params['blogId'] = blog_id unless blog_id.nil? + command.params['pageId'] = page_id unless page_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves pages for a blog, possibly filtered. + # @param [String] blog_id + # ID of the blog to fetch pages from. + # @param [Boolean] fetch_bodies + # Whether to retrieve the Page bodies. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::PageList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::PageList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_pages(blog_id, fetch_bodies: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'blogs/{blogId}/pages', options) + command.response_representation = Google::Apis::BloggerV2::PageList::Representation + command.response_class = Google::Apis::BloggerV2::PageList + command.params['blogId'] = blog_id unless blog_id.nil? + command.query['fetchBodies'] = fetch_bodies unless fetch_bodies.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get a post by id. + # @param [String] blog_id + # ID of the blog to fetch the post from. + # @param [String] post_id + # The ID of the post + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::Post] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::Post] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_post(blog_id, post_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'blogs/{blogId}/posts/{postId}', options) + command.response_representation = Google::Apis::BloggerV2::Post::Representation + command.response_class = Google::Apis::BloggerV2::Post + command.params['blogId'] = blog_id unless blog_id.nil? + command.params['postId'] = post_id unless post_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of posts, possibly filtered. + # @param [String] blog_id + # ID of the blog to fetch posts from. + # @param [Boolean] fetch_bodies + # Whether the body content of posts is included. + # @param [Fixnum] max_results + # Maximum number of posts to fetch. + # @param [String] page_token + # Continuation token if the request is paged. + # @param [DateTime] start_date + # Earliest post date to fetch, a date-time with RFC 3339 formatting. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::PostList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::PostList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_posts(blog_id, fetch_bodies: nil, max_results: nil, page_token: nil, start_date: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'blogs/{blogId}/posts', options) + command.response_representation = Google::Apis::BloggerV2::PostList::Representation + command.response_class = Google::Apis::BloggerV2::PostList + command.params['blogId'] = blog_id unless blog_id.nil? + command.query['fetchBodies'] = fetch_bodies unless fetch_bodies.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['startDate'] = start_date unless start_date.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets one user by id. + # @param [String] user_id + # The ID of the user to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::User] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::User] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_user(user_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'users/{userId}', options) + command.response_representation = Google::Apis::BloggerV2::User::Representation + command.response_class = Google::Apis::BloggerV2::User + command.params['userId'] = user_id unless user_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of blogs, possibly filtered. + # @param [String] user_id + # ID of the user whose blogs are to be fetched. Either the word 'self' (sans + # quote marks) or the user's profile identifier. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BloggerV2::BlogList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BloggerV2::BlogList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_user_blogs(user_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'users/{userId}/blogs', options) + command.response_representation = Google::Apis::BloggerV2::BlogList::Representation + command.response_class = Google::Apis::BloggerV2::BlogList + command.params['userId'] = user_id unless user_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/cloudfunctions_v1beta2.rb b/generated/google/apis/cloudfunctions_v1beta2.rb new file mode 100644 index 000000000..27f2a8bf9 --- /dev/null +++ b/generated/google/apis/cloudfunctions_v1beta2.rb @@ -0,0 +1,35 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/cloudfunctions_v1beta2/service.rb' +require 'google/apis/cloudfunctions_v1beta2/classes.rb' +require 'google/apis/cloudfunctions_v1beta2/representations.rb' + +module Google + module Apis + # Google Cloud Functions API + # + # API for managing lightweight user-provided functions executed in response to + # events. + # + # @see https://cloud.google.com/functions + module CloudfunctionsV1beta2 + VERSION = 'V1beta2' + REVISION = '20170822' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + end + end +end diff --git a/generated/google/apis/cloudfunctions_v1beta2/classes.rb b/generated/google/apis/cloudfunctions_v1beta2/classes.rb new file mode 100644 index 000000000..6a8bcc3aa --- /dev/null +++ b/generated/google/apis/cloudfunctions_v1beta2/classes.rb @@ -0,0 +1,678 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudfunctionsV1beta2 + + # Request for the `CallFunction` method. + class CallFunctionRequest + include Google::Apis::Core::Hashable + + # Input to be passed to the function. + # Corresponds to the JSON property `data` + # @return [String] + attr_accessor :data + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data = args[:data] if args.key?(:data) + end + end + + # Response of `CallFunction` method. + class CallFunctionResponse + include Google::Apis::Core::Hashable + + # Either system or user-function generated error. Set if execution + # was not successful. + # Corresponds to the JSON property `error` + # @return [String] + attr_accessor :error + + # Execution id of function invocation. + # Corresponds to the JSON property `executionId` + # @return [String] + attr_accessor :execution_id + + # Result populated for successful execution of synchronous function. Will + # not be populated if function does not return a result through context. + # Corresponds to the JSON property `result` + # @return [String] + attr_accessor :result + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error = args[:error] if args.key?(:error) + @execution_id = args[:execution_id] if args.key?(:execution_id) + @result = args[:result] if args.key?(:result) + end + end + + # Describes a Cloud Function that contains user computation executed in + # response to an event. It encapsulate function and triggers configurations. + class CloudFunction + include Google::Apis::Core::Hashable + + # The amount of memory in MB available for a function. + # Defaults to 256MB. + # Corresponds to the JSON property `availableMemoryMb` + # @return [Fixnum] + attr_accessor :available_memory_mb + + # The name of the function (as defined in source code) that will be + # executed. Defaults to the resource name suffix, if not specified. For + # backward compatibility, if function with given name is not found, then the + # system will try to use function named "function". + # For Node.js this is name of a function exported by the module specified + # in `source_location`. + # Corresponds to the JSON property `entryPoint` + # @return [String] + attr_accessor :entry_point + + # Describes EventTrigger, used to request events be sent from another + # service. + # Corresponds to the JSON property `eventTrigger` + # @return [Google::Apis::CloudfunctionsV1beta2::EventTrigger] + attr_accessor :event_trigger + + # Describes HTTPSTrigger, could be used to connect web hooks to function. + # Corresponds to the JSON property `httpsTrigger` + # @return [Google::Apis::CloudfunctionsV1beta2::HttpsTrigger] + attr_accessor :https_trigger + + # Output only. Name of the most recent operation modifying the function. If + # the function status is `DEPLOYING` or `DELETING`, then it points to the + # active operation. + # Corresponds to the JSON property `latestOperation` + # @return [String] + attr_accessor :latest_operation + + # A user-defined name of the function. Function names must be unique + # globally and match pattern `projects/*/locations/*/functions/*` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Output only. The service account of the function. + # Corresponds to the JSON property `serviceAccount` + # @return [String] + attr_accessor :service_account + + # The Google Cloud Storage URL, starting with gs://, pointing to the zip + # archive which contains the function. + # Corresponds to the JSON property `sourceArchiveUrl` + # @return [String] + attr_accessor :source_archive_url + + # Describes the location of the function source in a remote repository. + # Corresponds to the JSON property `sourceRepository` + # @return [Google::Apis::CloudfunctionsV1beta2::SourceRepository] + attr_accessor :source_repository + + # The URL pointing to the hosted repository where the function is defined. + # There are supported Cloud Source Repository URLs in the following + # formats: + # To refer to a specific commit: + # `https://source.developers.google.com/projects/*/repos/*/revisions/*/paths/*` + # To refer to a moveable alias (branch): + # `https://source.developers.google.com/projects/*/repos/*/aliases/movable/*/ + # paths/*` + # In particular, to refer to HEAD use `master` moveable alias. + # To refer to a specific fixed alias (tag): + # `https://source.developers.google.com/projects/*/repos/*/aliases/fixed/*/paths/ + # *` + # You may omit `paths/*` if you want to use the main directory. + # Corresponds to the JSON property `sourceRepositoryUrl` + # @return [String] + attr_accessor :source_repository_url + + # Output only. Status of the function deployment. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # The function execution timeout. Execution is considered failed and + # can be terminated if the function is not completed at the end of the + # timeout period. Defaults to 60 seconds. + # Corresponds to the JSON property `timeout` + # @return [String] + attr_accessor :timeout + + # Output only. The last update timestamp of a Cloud Function. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @available_memory_mb = args[:available_memory_mb] if args.key?(:available_memory_mb) + @entry_point = args[:entry_point] if args.key?(:entry_point) + @event_trigger = args[:event_trigger] if args.key?(:event_trigger) + @https_trigger = args[:https_trigger] if args.key?(:https_trigger) + @latest_operation = args[:latest_operation] if args.key?(:latest_operation) + @name = args[:name] if args.key?(:name) + @service_account = args[:service_account] if args.key?(:service_account) + @source_archive_url = args[:source_archive_url] if args.key?(:source_archive_url) + @source_repository = args[:source_repository] if args.key?(:source_repository) + @source_repository_url = args[:source_repository_url] if args.key?(:source_repository_url) + @status = args[:status] if args.key?(:status) + @timeout = args[:timeout] if args.key?(:timeout) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # Describes EventTrigger, used to request events be sent from another + # service. + class EventTrigger + include Google::Apis::Core::Hashable + + # `event_type` names contain the service that is sending an event and the + # kind of event that was fired. Must be of the form + # `providers/*/eventTypes/*` e.g. Directly handle a Message published to + # Google Cloud Pub/Sub `providers/cloud.pubsub/eventTypes/topic.publish` + # Handle an object changing in Google Cloud Storage + # `providers/cloud.storage/eventTypes/object.change` + # Handle a write to the Firebase Realtime Database + # `providers/firebase.database/eventTypes/data.write` + # Corresponds to the JSON property `eventType` + # @return [String] + attr_accessor :event_type + + # Describes the policy in case of function's execution failure. + # If empty, then defaults to ignoring failures (i.e. not retrying them). + # Corresponds to the JSON property `failurePolicy` + # @return [Google::Apis::CloudfunctionsV1beta2::FailurePolicy] + attr_accessor :failure_policy + + # Which instance of the source's service should send events. E.g. for Pub/Sub + # this would be a Pub/Sub topic at `projects/*/topics/*`. For Google Cloud + # Storage this would be a bucket at `projects/*/buckets/*`. For any source + # that only supports one instance per-project, this should be the name of the + # project (`projects/*`) + # Corresponds to the JSON property `resource` + # @return [String] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @event_type = args[:event_type] if args.key?(:event_type) + @failure_policy = args[:failure_policy] if args.key?(:failure_policy) + @resource = args[:resource] if args.key?(:resource) + end + end + + # Describes the policy in case of function's execution failure. + # If empty, then defaults to ignoring failures (i.e. not retrying them). + class FailurePolicy + include Google::Apis::Core::Hashable + + # Describes the retry policy in case of function's execution failure. + # A function execution will be retried on any failure. + # A failed execution will be retried up to 7 days with an exponential backoff + # (capped at 10 seconds). + # Retried execution is charged as any other execution. + # Corresponds to the JSON property `retry` + # @return [Google::Apis::CloudfunctionsV1beta2::Retry] + attr_accessor :retry + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @retry = args[:retry] if args.key?(:retry) + end + end + + # Describes HTTPSTrigger, could be used to connect web hooks to function. + class HttpsTrigger + include Google::Apis::Core::Hashable + + # Output only. The deployed url for the function. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @url = args[:url] if args.key?(:url) + end + end + + # Response for the `ListFunctions` method. + class ListFunctionsResponse + include Google::Apis::Core::Hashable + + # The functions that match the request. + # Corresponds to the JSON property `functions` + # @return [Array] + attr_accessor :functions + + # If not empty, indicates that there may be more functions that match + # the request; this value should be passed in a new + # google.cloud.functions.v1beta2.ListFunctionsRequest + # to get more functions. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @functions = args[:functions] if args.key?(:functions) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Locations.ListLocations. + class ListLocationsResponse + include Google::Apis::Core::Hashable + + # A list of locations that matches the specified filter in the request. + # Corresponds to the JSON property `locations` + # @return [Array] + attr_accessor :locations + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locations = args[:locations] if args.key?(:locations) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # A resource that represents Google Cloud Platform location. + class Location + include Google::Apis::Core::Hashable + + # Cross-service attributes for the location. For example + # `"cloud.googleapis.com/region": "us-east1"` + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The canonical id for this location. For example: `"us-east1"`. + # Corresponds to the JSON property `locationId` + # @return [String] + attr_accessor :location_id + + # Service-specific metadata. For example the available capacity at the given + # location. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Resource name for the location, which may vary between implementations. + # For example: `"projects/example-project/locations/us-east1"` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @location_id = args[:location_id] if args.key?(:location_id) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::CloudfunctionsV1beta2::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Metadata describing an Operation + class OperationMetadataV1Beta2 + include Google::Apis::Core::Hashable + + # The original request that started the operation. + # Corresponds to the JSON property `request` + # @return [Hash] + attr_accessor :request + + # Target of the operation - for example + # projects/project-1/locations/region-1/functions/function-1 + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # Type of operation. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @request = args[:request] if args.key?(:request) + @target = args[:target] if args.key?(:target) + @type = args[:type] if args.key?(:type) + end + end + + # Describes the retry policy in case of function's execution failure. + # A function execution will be retried on any failure. + # A failed execution will be retried up to 7 days with an exponential backoff + # (capped at 10 seconds). + # Retried execution is charged as any other execution. + class Retry + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Describes the location of the function source in a remote repository. + class SourceRepository + include Google::Apis::Core::Hashable + + # The name of the branch from which the function should be fetched. + # Corresponds to the JSON property `branch` + # @return [String] + attr_accessor :branch + + # Output only. The id of the revision that was resolved at the moment of + # function creation or update. For example when a user deployed from a + # branch, it will be the revision id of the latest change on this branch at + # that time. If user deployed from revision then this value will be always + # equal to the revision specified by the user. + # Corresponds to the JSON property `deployedRevision` + # @return [String] + attr_accessor :deployed_revision + + # URL to the hosted repository where the function is defined. Only paths in + # https://source.developers.google.com domain are supported. The path should + # contain the name of the repository. + # Corresponds to the JSON property `repositoryUrl` + # @return [String] + attr_accessor :repository_url + + # The id of the revision that captures the state of the repository from + # which the function should be fetched. + # Corresponds to the JSON property `revision` + # @return [String] + attr_accessor :revision + + # The path within the repository where the function is defined. The path + # should point to the directory where Cloud Functions files are located. Use + # "/" if the function is defined directly in the root directory of a + # repository. + # Corresponds to the JSON property `sourcePath` + # @return [String] + attr_accessor :source_path + + # The name of the tag that captures the state of the repository from + # which the function should be fetched. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @branch = args[:branch] if args.key?(:branch) + @deployed_revision = args[:deployed_revision] if args.key?(:deployed_revision) + @repository_url = args[:repository_url] if args.key?(:repository_url) + @revision = args[:revision] if args.key?(:revision) + @source_path = args[:source_path] if args.key?(:source_path) + @tag = args[:tag] if args.key?(:tag) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + end + end +end diff --git a/generated/google/apis/cloudfunctions_v1beta2/representations.rb b/generated/google/apis/cloudfunctions_v1beta2/representations.rb new file mode 100644 index 000000000..4bbad26ff --- /dev/null +++ b/generated/google/apis/cloudfunctions_v1beta2/representations.rb @@ -0,0 +1,264 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudfunctionsV1beta2 + + class CallFunctionRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CallFunctionResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CloudFunction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EventTrigger + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FailurePolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpsTrigger + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListFunctionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListLocationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Location + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadataV1Beta2 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Retry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceRepository + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CallFunctionRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data, as: 'data' + end + end + + class CallFunctionResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error, as: 'error' + property :execution_id, as: 'executionId' + property :result, as: 'result' + end + end + + class CloudFunction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :available_memory_mb, as: 'availableMemoryMb' + property :entry_point, as: 'entryPoint' + property :event_trigger, as: 'eventTrigger', class: Google::Apis::CloudfunctionsV1beta2::EventTrigger, decorator: Google::Apis::CloudfunctionsV1beta2::EventTrigger::Representation + + property :https_trigger, as: 'httpsTrigger', class: Google::Apis::CloudfunctionsV1beta2::HttpsTrigger, decorator: Google::Apis::CloudfunctionsV1beta2::HttpsTrigger::Representation + + property :latest_operation, as: 'latestOperation' + property :name, as: 'name' + property :service_account, as: 'serviceAccount' + property :source_archive_url, as: 'sourceArchiveUrl' + property :source_repository, as: 'sourceRepository', class: Google::Apis::CloudfunctionsV1beta2::SourceRepository, decorator: Google::Apis::CloudfunctionsV1beta2::SourceRepository::Representation + + property :source_repository_url, as: 'sourceRepositoryUrl' + property :status, as: 'status' + property :timeout, as: 'timeout' + property :update_time, as: 'updateTime' + end + end + + class EventTrigger + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :event_type, as: 'eventType' + property :failure_policy, as: 'failurePolicy', class: Google::Apis::CloudfunctionsV1beta2::FailurePolicy, decorator: Google::Apis::CloudfunctionsV1beta2::FailurePolicy::Representation + + property :resource, as: 'resource' + end + end + + class FailurePolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :retry, as: 'retry', class: Google::Apis::CloudfunctionsV1beta2::Retry, decorator: Google::Apis::CloudfunctionsV1beta2::Retry::Representation + + end + end + + class HttpsTrigger + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :url, as: 'url' + end + end + + class ListFunctionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :functions, as: 'functions', class: Google::Apis::CloudfunctionsV1beta2::CloudFunction, decorator: Google::Apis::CloudfunctionsV1beta2::CloudFunction::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListLocationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :locations, as: 'locations', class: Google::Apis::CloudfunctionsV1beta2::Location, decorator: Google::Apis::CloudfunctionsV1beta2::Location::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::CloudfunctionsV1beta2::Operation, decorator: Google::Apis::CloudfunctionsV1beta2::Operation::Representation + + end + end + + class Location + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + property :location_id, as: 'locationId' + hash :metadata, as: 'metadata' + property :name, as: 'name' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::CloudfunctionsV1beta2::Status, decorator: Google::Apis::CloudfunctionsV1beta2::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class OperationMetadataV1Beta2 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :request, as: 'request' + property :target, as: 'target' + property :type, as: 'type' + end + end + + class Retry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class SourceRepository + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :branch, as: 'branch' + property :deployed_revision, as: 'deployedRevision' + property :repository_url, as: 'repositoryUrl' + property :revision, as: 'revision' + property :source_path, as: 'sourcePath' + property :tag, as: 'tag' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + end + end +end diff --git a/generated/google/apis/cloudfunctions_v1beta2/service.rb b/generated/google/apis/cloudfunctions_v1beta2/service.rb new file mode 100644 index 000000000..139c71474 --- /dev/null +++ b/generated/google/apis/cloudfunctions_v1beta2/service.rb @@ -0,0 +1,385 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudfunctionsV1beta2 + # Google Cloud Functions API + # + # API for managing lightweight user-provided functions executed in response to + # events. + # + # @example + # require 'google/apis/cloudfunctions_v1beta2' + # + # Cloudfunctions = Google::Apis::CloudfunctionsV1beta2 # Alias the module + # service = Cloudfunctions::CloudFunctionsService.new + # + # @see https://cloud.google.com/functions + class CloudFunctionsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://cloudfunctions.googleapis.com/', '') + @batch_path = 'batch' + end + + # 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. + # @param [String] name + # The name of the operation resource. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+name}', options) + command.response_representation = Google::Apis::CloudfunctionsV1beta2::Operation::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the + # server doesn't support this method, it returns `UNIMPLEMENTED`. + # NOTE: the `name` binding allows API services to override the binding + # to use different resource name schemes, such as `users/*/operations`. To + # override the binding, API services can add a binding such as + # `"/v1/`name=users/*`/operations"` to their service configuration. + # For backwards compatibility, the default name includes the operations + # collection id, however overriding users must ensure the name binding + # is the parent resource, without the operations collection id. + # @param [String] filter + # The standard list filter. + # @param [String] name + # The name of the operation's parent resource. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_operations(filter: nil, name: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/operations', options) + command.response_representation = Google::Apis::CloudfunctionsV1beta2::ListOperationsResponse::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::ListOperationsResponse + command.query['filter'] = filter unless filter.nil? + command.query['name'] = name unless name.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists information about the supported locations for this service. + # @param [String] name + # The resource that owns the locations collection, if applicable. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::ListLocationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::ListLocationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+name}/locations', options) + command.response_representation = Google::Apis::CloudfunctionsV1beta2::ListLocationsResponse::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::ListLocationsResponse + command.params['name'] = name unless name.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Invokes synchronously deployed function. To be used for testing, very + # limited traffic allowed. + # @param [String] name + # The name of the function to be called. + # @param [Google::Apis::CloudfunctionsV1beta2::CallFunctionRequest] call_function_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::CallFunctionResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::CallFunctionResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def call_function(name, call_function_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+name}:call', options) + command.request_representation = Google::Apis::CloudfunctionsV1beta2::CallFunctionRequest::Representation + command.request_object = call_function_request_object + command.response_representation = Google::Apis::CloudfunctionsV1beta2::CallFunctionResponse::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::CallFunctionResponse + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new function. If a function with the given name already exists in + # the specified project, the long running operation will return + # `ALREADY_EXISTS` error. + # @param [String] location + # The project and location in which the function should be created, specified + # in the format `projects/*/locations/*` + # @param [Google::Apis::CloudfunctionsV1beta2::CloudFunction] cloud_function_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_location_function(location, cloud_function_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+location}/functions', options) + command.request_representation = Google::Apis::CloudfunctionsV1beta2::CloudFunction::Representation + command.request_object = cloud_function_object + command.response_representation = Google::Apis::CloudfunctionsV1beta2::Operation::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::Operation + command.params['location'] = location unless location.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a function with the given name from the specified project. If the + # given function is used by some trigger, the trigger will be updated to + # remove this function. + # @param [String] name + # The name of the function which should be deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_function(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta2/{+name}', options) + command.response_representation = Google::Apis::CloudfunctionsV1beta2::Operation::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns a function with the given name from the requested project. + # @param [String] name + # The name of the function which details should be obtained. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::CloudFunction] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::CloudFunction] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_function(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+name}', options) + command.response_representation = Google::Apis::CloudfunctionsV1beta2::CloudFunction::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::CloudFunction + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns a list of functions that belong to the requested project. + # @param [String] location + # The project and location from which the function should be listed, + # specified in the format `projects/*/locations/*` + # If you want to list functions in all locations, use "-" in place of a + # location. + # @param [Fixnum] page_size + # Maximum number of functions to return per call. + # @param [String] page_token + # The value returned by the last + # `ListFunctionsResponse`; indicates that + # this is a continuation of a prior `ListFunctions` call, and that the + # system should return the next page of data. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::ListFunctionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::ListFunctionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_functions(location, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+location}/functions', options) + command.response_representation = Google::Apis::CloudfunctionsV1beta2::ListFunctionsResponse::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::ListFunctionsResponse + command.params['location'] = location unless location.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates existing function. + # @param [String] name + # The name of the function to be updated. + # @param [Google::Apis::CloudfunctionsV1beta2::CloudFunction] cloud_function_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudfunctionsV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudfunctionsV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_project_location_function(name, cloud_function_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta2/{+name}', options) + command.request_representation = Google::Apis::CloudfunctionsV1beta2::CloudFunction::Representation + command.request_object = cloud_function_object + command.response_representation = Google::Apis::CloudfunctionsV1beta2::Operation::Representation + command.response_class = Google::Apis::CloudfunctionsV1beta2::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/cloudresourcemanager_v1beta1.rb b/generated/google/apis/cloudresourcemanager_v1beta1.rb index 83afef3d9..21cc231ec 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/resource-manager module CloudresourcemanagerV1beta1 VERSION = 'V1beta1' - REVISION = '20170705' + REVISION = '20170821' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb b/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb index aa88683c8..857e18b86 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb @@ -22,6 +22,28 @@ module Google module Apis module CloudresourcemanagerV1beta1 + # Identifying information for a single ancestor of a project. + class Ancestor + include Google::Apis::Core::Hashable + + # A container to reference an id for any resource type. A `resource` in Google + # Cloud Platform is a generic term for something you (a developer) may want to + # interact with through one of our API's. Some examples are an App Engine app, + # a Compute Engine instance, a Cloud SQL database, and so on. + # Corresponds to the JSON property `resourceId` + # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId] + attr_accessor :resource_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource_id = args[:resource_id] if args.key?(:resource_id) + end + end + # Specifies the audit configuration for a service. # The configuration determines which permission types are logged, and what # identities, if any, are exempted from logging. @@ -72,6 +94,12 @@ module Google class AuditConfig include Google::Apis::Core::Hashable + # The configuration for logging of each type of permission. + # Next ID: 4 + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + # Specifies a service that will be enabled for audit logging. # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. # `allServices` is a special value that covers all services. @@ -79,62 +107,48 @@ module Google # @return [String] attr_accessor :service - # The configuration for logging of each type of permission. - # Next ID: 4 - # Corresponds to the JSON property `auditLogConfigs` - # @return [Array] - attr_accessor :audit_log_configs - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @service = args[:service] if args.key?(:service) @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @service = args[:service] if args.key?(:service) end end - # Identifying information for a single ancestor of a project. - class Ancestor + # Provides the configuration for logging a type of permissions. + # Example: + # ` + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:foo@gmail.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # ` + # ] + # ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting + # foo@gmail.com from DATA_READ logging. + class AuditLogConfig include Google::Apis::Core::Hashable - # A container to reference an id for any resource type. A `resource` in Google - # Cloud Platform is a generic term for something you (a developer) may want to - # interact with through one of our API's. Some examples are an App Engine app, - # a Compute Engine instance, a Cloud SQL database, and so on. - # Corresponds to the JSON property `resourceId` - # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId] - attr_accessor :resource_id + # Specifies the identities that do not cause logging for this type of + # permission. + # Follows the same format of Binding.members. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @resource_id = args[:resource_id] if args.key?(:resource_id) - end - end - - # The response returned from the `ListOrganizations` method. - class ListOrganizationsResponse - include Google::Apis::Core::Hashable - - # A pagination token to be used to retrieve the next page of results. If the - # result is too large to fit within the page size specified in the request, - # this field will be set with a token that can be used to fetch the next page - # of results. If this field is empty, it indicates that this response - # contains the last page of results. - # Corresponds to the JSON property `nextPageToken` + # The log type that this config enables. + # Corresponds to the JSON property `logType` # @return [String] - attr_accessor :next_page_token - - # The list of Organizations that matched the list query, possibly paginated. - # Corresponds to the JSON property `organizations` - # @return [Array] - attr_accessor :organizations + attr_accessor :log_type def initialize(**args) update!(**args) @@ -142,62 +156,8 @@ module Google # Update properties of this object def update!(**args) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - @organizations = args[:organizations] if args.key?(:organizations) - end - end - - # Request message for `SetIamPolicy` method. - class SetIamPolicyRequest - include Google::Apis::Core::Hashable - - # 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). - # Corresponds to the JSON property `policy` - # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy] - attr_accessor :policy - - # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only - # the fields in the mask will be modified. If no mask is provided, the - # following default mask is used: - # paths: "bindings, etag" - # This field is only used by Cloud IAM. - # Corresponds to the JSON property `updateMask` - # @return [String] - attr_accessor :update_mask - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @policy = args[:policy] if args.key?(:policy) - @update_mask = args[:update_mask] if args.key?(:update_mask) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) end end @@ -260,107 +220,31 @@ module Google end end - # The request sent to the UndeleteProject - # method. - class UndeleteProjectRequest + # Metadata describing a long running folder operation + class FolderOperation include Google::Apis::Core::Hashable - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # The root node in the resource hierarchy to which a particular entity's - # (e.g., company) resources belong. - class Organization - include Google::Apis::Core::Hashable - - # Timestamp when the Organization was created. Assigned by the server. - # @OutputOnly - # Corresponds to the JSON property `creationTime` + # The resource name of the folder or organization we are either creating + # the folder under or moving the folder to. + # Corresponds to the JSON property `destinationParent` # @return [String] - attr_accessor :creation_time + attr_accessor :destination_parent - # The entity that owns an Organization. The lifetime of the Organization and - # all of its descendants are bound to the `OrganizationOwner`. If the - # `OrganizationOwner` is deleted, the Organization and all its descendants will - # be deleted. - # Corresponds to the JSON property `owner` - # @return [Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner] - attr_accessor :owner - - # 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". - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # 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. - # Corresponds to the JSON property `organizationId` - # @return [String] - attr_accessor :organization_id - - # The organization's current lifecycle state. Assigned by the server. - # @OutputOnly - # Corresponds to the JSON property `lifecycleState` - # @return [String] - attr_accessor :lifecycle_state - - # A friendly string to be used to refer to the Organization in the UI. - # Assigned by the server, set to the primary domain of the G Suite - # customer that owns the organization. - # @OutputOnly + # The display name of the folder. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @creation_time = args[:creation_time] if args.key?(:creation_time) - @owner = args[:owner] if args.key?(:owner) - @name = args[:name] if args.key?(:name) - @organization_id = args[:organization_id] if args.key?(:organization_id) - @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) - @display_name = args[:display_name] if args.key?(:display_name) - end - end - - # A status object which is used as the `metadata` field for the Operation - # returned by CreateProject. It provides insight for when significant phases of - # Project creation have completed. - class ProjectCreationStatus - include Google::Apis::Core::Hashable - - # True if the project creation process is complete. - # Corresponds to the JSON property `ready` - # @return [Boolean] - attr_accessor :ready - alias_method :ready?, :ready - - # True if the project can be retrieved using GetProject. No other operations - # on the project are guaranteed to work until the project creation is - # complete. - # Corresponds to the JSON property `gettable` - # @return [Boolean] - attr_accessor :gettable - alias_method :gettable?, :gettable - - # Creation time of the project creation workflow. - # Corresponds to the JSON property `createTime` + # The type of this operation. + # Corresponds to the JSON property `operationType` # @return [String] - attr_accessor :create_time + attr_accessor :operation_type + + # The resource name of the folder's parent. + # Only applicable when the operation_type is MOVE. + # Corresponds to the JSON property `sourceParent` + # @return [String] + attr_accessor :source_parent def initialize(**args) update!(**args) @@ -368,21 +252,21 @@ module Google # Update properties of this object def update!(**args) - @ready = args[:ready] if args.key?(:ready) - @gettable = args[:gettable] if args.key?(:gettable) - @create_time = args[:create_time] if args.key?(:create_time) + @destination_parent = args[:destination_parent] if args.key?(:destination_parent) + @display_name = args[:display_name] if args.key?(:display_name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @source_parent = args[:source_parent] if args.key?(:source_parent) end end - # Response message for `TestIamPermissions` method. - class TestIamPermissionsResponse + # A classification of the Folder Operation error. + class FolderOperationError include Google::Apis::Core::Hashable - # A subset of `TestPermissionsRequest.permissions` that the caller is - # allowed. - # Corresponds to the JSON property `permissions` - # @return [Array] - attr_accessor :permissions + # The type of operation error experienced. + # Corresponds to the JSON property `errorMessageId` + # @return [String] + attr_accessor :error_message_id def initialize(**args) update!(**args) @@ -390,12 +274,14 @@ module Google # Update properties of this object def update!(**args) - @permissions = args[:permissions] if args.key?(:permissions) + @error_message_id = args[:error_message_id] if args.key?(:error_message_id) end end - # Request message for `GetIamPolicy` method. - class GetIamPolicyRequest + # The request sent to the + # GetAncestry + # method. + class GetAncestryRequest include Google::Apis::Core::Hashable def initialize(**args) @@ -428,6 +314,149 @@ module Google end end + # Request message for `GetIamPolicy` method. + class GetIamPolicyRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The response returned from the `ListOrganizations` method. + class ListOrganizationsResponse + include Google::Apis::Core::Hashable + + # A pagination token to be used to retrieve the next page of results. If the + # result is too large to fit within the page size specified in the request, + # this field will be set with a token that can be used to fetch the next page + # of results. If this field is empty, it indicates that this response + # contains the last page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The list of Organizations that matched the list query, possibly paginated. + # Corresponds to the JSON property `organizations` + # @return [Array] + attr_accessor :organizations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @organizations = args[:organizations] if args.key?(:organizations) + end + end + + # A page of the response received from the + # ListProjects + # method. + # A paginated response where more pages are available has + # `next_page_token` set. This token can be used in a subsequent request to + # retrieve the next request page. + class ListProjectsResponse + include Google::Apis::Core::Hashable + + # Pagination token. + # If the result set is too large to fit in a single response, this token + # is returned. It encodes the position of the current result cursor. + # Feeding this value into a new list request with the `page_token` parameter + # gives the next page of the results. + # When `next_page_token` is not filled in, there is no next page and + # the list returned is the last page in the result set. + # Pagination tokens have a limited lifetime. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The list of Projects that matched the list filter. This list can + # be paginated. + # Corresponds to the JSON property `projects` + # @return [Array] + attr_accessor :projects + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @projects = args[:projects] if args.key?(:projects) + end + end + + # The root node in the resource hierarchy to which a particular entity's + # (e.g., company) resources belong. + class Organization + include Google::Apis::Core::Hashable + + # Timestamp when the Organization was created. Assigned by the server. + # @OutputOnly + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + + # A friendly string to be used to refer to the Organization in the UI. + # Assigned by the server, set to the primary domain of the G Suite + # customer that owns the organization. + # @OutputOnly + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The organization's current lifecycle state. Assigned by the server. + # @OutputOnly + # Corresponds to the JSON property `lifecycleState` + # @return [String] + attr_accessor :lifecycle_state + + # 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". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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. + # Corresponds to the JSON property `organizationId` + # @return [String] + attr_accessor :organization_id + + # The entity that owns an Organization. The lifetime of the Organization and + # all of its descendants are bound to the `OrganizationOwner`. If the + # `OrganizationOwner` is deleted, the Organization and all its descendants will + # be deleted. + # Corresponds to the JSON property `owner` + # @return [Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner] + attr_accessor :owner + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @display_name = args[:display_name] if args.key?(:display_name) + @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) + @name = args[:name] if args.key?(:name) + @organization_id = args[:organization_id] if args.key?(:organization_id) + @owner = args[:owner] if args.key?(:owner) + end + end + # The entity that owns an Organization. The lifetime of the Organization and # all of its descendants are bound to the `OrganizationOwner`. If the # `OrganizationOwner` is deleted, the Organization and all its descendants will @@ -450,265 +479,6 @@ module Google end end - # A page of the response received from the - # ListProjects - # method. - # A paginated response where more pages are available has - # `next_page_token` set. This token can be used in a subsequent request to - # retrieve the next request page. - class ListProjectsResponse - include Google::Apis::Core::Hashable - - # The list of Projects that matched the list filter. This list can - # be paginated. - # Corresponds to the JSON property `projects` - # @return [Array] - attr_accessor :projects - - # Pagination token. - # If the result set is too large to fit in a single response, this token - # is returned. It encodes the position of the current result cursor. - # Feeding this value into a new list request with the `page_token` parameter - # gives the next page of the results. - # When `next_page_token` is not filled in, there is no next page and - # the list returned is the last page in the result set. - # Pagination tokens have a limited lifetime. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @projects = args[:projects] if args.key?(:projects) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # Provides the configuration for logging a type of permissions. - # Example: - # ` - # "audit_log_configs": [ - # ` - # "log_type": "DATA_READ", - # "exempted_members": [ - # "user:foo@gmail.com" - # ] - # `, - # ` - # "log_type": "DATA_WRITE", - # ` - # ] - # ` - # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting - # foo@gmail.com from DATA_READ logging. - class AuditLogConfig - include Google::Apis::Core::Hashable - - # Specifies the identities that do not cause logging for this type of - # permission. - # Follows the same format of Binding.members. - # Corresponds to the JSON property `exemptedMembers` - # @return [Array] - attr_accessor :exempted_members - - # The log type that this config enables. - # Corresponds to the JSON property `logType` - # @return [String] - attr_accessor :log_type - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @exempted_members = args[:exempted_members] if args.key?(:exempted_members) - @log_type = args[:log_type] if args.key?(:log_type) - end - end - - # The request sent to the - # GetAncestry - # method. - class GetAncestryRequest - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # A Project is a high-level Google Cloud Platform entity. It is a - # container for ACLs, APIs, App Engine Apps, VMs, and other - # Google Cloud Platform resources. - class Project - include Google::Apis::Core::Hashable - - # The Project lifecycle state. - # Read-only. - # Corresponds to the JSON property `lifecycleState` - # @return [String] - attr_accessor :lifecycle_state - - # The number uniquely identifying the project. - # Example: 415104041262 - # Read-only. - # Corresponds to the JSON property `projectNumber` - # @return [Fixnum] - attr_accessor :project_number - - # A container to reference an id for any resource type. A `resource` in Google - # Cloud Platform is a generic term for something you (a developer) may want to - # interact with through one of our API's. Some examples are an App Engine app, - # a Compute Engine instance, a Cloud SQL database, and so on. - # Corresponds to the JSON property `parent` - # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId] - attr_accessor :parent - - # The labels associated with this Project. - # Label keys must be between 1 and 63 characters long and must conform - # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. - # Label values must be between 0 and 63 characters long and must conform - # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. - # No more than 256 labels can be associated with a given resource. - # Clients should store labels in a representation such as JSON that does not - # depend on specific characters being disallowed. - # Example: "environment" : "dev" - # Read-write. - # Corresponds to the JSON property `labels` - # @return [Hash] - attr_accessor :labels - - # Creation time. - # Read-only. - # Corresponds to the JSON property `createTime` - # @return [String] - attr_accessor :create_time - - # 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. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # The unique, user-assigned ID of the Project. - # It must be 6 to 30 lowercase letters, digits, or hyphens. - # It must start with a letter. - # Trailing hyphens are prohibited. - # Example: tokyo-rain-123 - # Read-only after creation. - # Corresponds to the JSON property `projectId` - # @return [String] - attr_accessor :project_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) - @project_number = args[:project_number] if args.key?(:project_number) - @parent = args[:parent] if args.key?(:parent) - @labels = args[:labels] if args.key?(:labels) - @create_time = args[:create_time] if args.key?(:create_time) - @name = args[:name] if args.key?(:name) - @project_id = args[:project_id] if args.key?(:project_id) - end - end - - # Request message for `TestIamPermissions` method. - class TestIamPermissionsRequest - include Google::Apis::Core::Hashable - - # The set of permissions to check for the `resource`. Permissions with - # wildcards (such as '*' or 'storage.*') are not allowed. For more - # information see - # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). - # Corresponds to the JSON property `permissions` - # @return [Array] - attr_accessor :permissions - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @permissions = args[:permissions] if args.key?(:permissions) - end - end - - # A classification of the Folder Operation error. - class FolderOperationError - include Google::Apis::Core::Hashable - - # The type of operation error experienced. - # Corresponds to the JSON property `errorMessageId` - # @return [String] - attr_accessor :error_message_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @error_message_id = args[:error_message_id] if args.key?(:error_message_id) - end - end - - # Metadata describing a long running folder operation - class FolderOperation - include Google::Apis::Core::Hashable - - # The type of this operation. - # Corresponds to the JSON property `operationType` - # @return [String] - attr_accessor :operation_type - - # The resource name of the folder's parent. - # Only applicable when the operation_type is MOVE. - # Corresponds to the JSON property `sourceParent` - # @return [String] - attr_accessor :source_parent - - # The display name of the folder. - # Corresponds to the JSON property `displayName` - # @return [String] - attr_accessor :display_name - - # The resource name of the folder or organization we are either creating - # the folder under or moving the folder to. - # Corresponds to the JSON property `destinationParent` - # @return [String] - attr_accessor :destination_parent - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @operation_type = args[:operation_type] if args.key?(:operation_type) - @source_parent = args[:source_parent] if args.key?(:source_parent) - @display_name = args[:display_name] if args.key?(:display_name) - @destination_parent = args[:destination_parent] if args.key?(:destination_parent) - end - end - # 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 @@ -738,6 +508,17 @@ module Google class Policy include Google::Apis::Core::Hashable + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. + # `bindings` with no members will result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + # `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 @@ -757,16 +538,85 @@ module Google # @return [Fixnum] attr_accessor :version - # Specifies cloud audit logging configuration for this policy. - # Corresponds to the JSON property `auditConfigs` - # @return [Array] - attr_accessor :audit_configs + def initialize(**args) + update!(**args) + end - # Associates a list of `members` to a `role`. - # `bindings` with no members will result in an error. - # Corresponds to the JSON property `bindings` - # @return [Array] - attr_accessor :bindings + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + end + end + + # A Project is a high-level Google Cloud Platform entity. It is a + # container for ACLs, APIs, App Engine Apps, VMs, and other + # Google Cloud Platform resources. + class Project + include Google::Apis::Core::Hashable + + # Creation time. + # Read-only. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The labels associated with this Project. + # Label keys must be between 1 and 63 characters long and must conform + # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. + # Label values must be between 0 and 63 characters long and must conform + # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. + # No more than 256 labels can be associated with a given resource. + # Clients should store labels in a representation such as JSON that does not + # depend on specific characters being disallowed. + # Example: "environment" : "dev" + # Read-write. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The Project lifecycle state. + # Read-only. + # Corresponds to the JSON property `lifecycleState` + # @return [String] + attr_accessor :lifecycle_state + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # A container to reference an id for any resource type. A `resource` in Google + # Cloud Platform is a generic term for something you (a developer) may want to + # interact with through one of our API's. Some examples are an App Engine app, + # a Compute Engine instance, a Cloud SQL database, and so on. + # Corresponds to the JSON property `parent` + # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId] + attr_accessor :parent + + # The unique, user-assigned ID of the Project. + # It must be 6 to 30 lowercase letters, digits, or hyphens. + # It must start with a letter. + # Trailing hyphens are prohibited. + # Example: tokyo-rain-123 + # Read-only after creation. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The number uniquely identifying the project. + # Example: 415104041262 + # Read-only. + # Corresponds to the JSON property `projectNumber` + # @return [Fixnum] + attr_accessor :project_number def initialize(**args) update!(**args) @@ -774,10 +624,50 @@ module Google # Update properties of this object def update!(**args) - @etag = args[:etag] if args.key?(:etag) - @version = args[:version] if args.key?(:version) - @audit_configs = args[:audit_configs] if args.key?(:audit_configs) - @bindings = args[:bindings] if args.key?(:bindings) + @create_time = args[:create_time] if args.key?(:create_time) + @labels = args[:labels] if args.key?(:labels) + @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) + @name = args[:name] if args.key?(:name) + @parent = args[:parent] if args.key?(:parent) + @project_id = args[:project_id] if args.key?(:project_id) + @project_number = args[:project_number] if args.key?(:project_number) + end + end + + # A status object which is used as the `metadata` field for the Operation + # returned by CreateProject. It provides insight for when significant phases of + # Project creation have completed. + class ProjectCreationStatus + include Google::Apis::Core::Hashable + + # Creation time of the project creation workflow. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # True if the project can be retrieved using GetProject. No other operations + # on the project are guaranteed to work until the project creation is + # complete. + # Corresponds to the JSON property `gettable` + # @return [Boolean] + attr_accessor :gettable + alias_method :gettable?, :gettable + + # True if the project creation process is complete. + # Corresponds to the JSON property `ready` + # @return [Boolean] + attr_accessor :ready + alias_method :ready?, :ready + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @gettable = args[:gettable] if args.key?(:gettable) + @ready = args[:ready] if args.key?(:ready) end end @@ -788,26 +678,136 @@ module Google class ResourceId include Google::Apis::Core::Hashable - # Required field representing the resource type this id is for. - # At present, the valid types are "project" and "organization". - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type - # Required field for the type-specific id. This should correspond to the id # used in the type-specific API's. # Corresponds to the JSON property `id` # @return [String] attr_accessor :id + # Required field representing the resource type this id is for. + # At present, the valid types are "project", "folder", and "organization". + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @type = args[:type] if args.key?(:type) @id = args[:id] if args.key?(:id) + @type = args[:type] if args.key?(:type) + end + end + + # Request message for `SetIamPolicy` method. + class SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # 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). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy] + attr_accessor :policy + + # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + # the fields in the mask will be modified. If no mask is provided, the + # following default mask is used: + # paths: "bindings, etag" + # This field is only used by Cloud IAM. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # Request message for `TestIamPermissions` method. + class TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Response message for `TestIamPermissions` method. + class TestIamPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # The request sent to the UndeleteProject + # method. + class UndeleteProjectRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) end end end diff --git a/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb b/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb index 062200c7b..75d8d9ded 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb @@ -22,25 +22,19 @@ module Google module Apis module CloudresourcemanagerV1beta1 - class AuditConfig - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class Ancestor class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class ListOrganizationsResponse + class AuditConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class SetIamPolicyRequest + class AuditLogConfig class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -58,73 +52,7 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class UndeleteProjectRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Organization - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class ProjectCreationStatus - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class TestIamPermissionsResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class GetIamPolicyRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class GetAncestryResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class OrganizationOwner - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class ListProjectsResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class AuditLogConfig - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class GetAncestryRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Project - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class TestIamPermissionsRequest + class FolderOperation class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -136,7 +64,43 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class FolderOperation + class GetAncestryRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GetAncestryResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOrganizationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListProjectsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Organization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrganizationOwner class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -148,19 +112,46 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class Project + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectCreationStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ResourceId class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class AuditConfig - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :service, as: 'service' - collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::CloudresourcemanagerV1beta1::AuditLogConfig, decorator: Google::Apis::CloudresourcemanagerV1beta1::AuditLogConfig::Representation + class SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end - end + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UndeleteProjectRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end class Ancestor @@ -171,21 +162,20 @@ module Google end end - class ListOrganizationsResponse + class AuditConfig # @private class Representation < Google::Apis::Core::JsonRepresentation - property :next_page_token, as: 'nextPageToken' - collection :organizations, as: 'organizations', class: Google::Apis::CloudresourcemanagerV1beta1::Organization, decorator: Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::CloudresourcemanagerV1beta1::AuditLogConfig, decorator: Google::Apis::CloudresourcemanagerV1beta1::AuditLogConfig::Representation + property :service, as: 'service' end end - class SetIamPolicyRequest + class AuditLogConfig # @private class Representation < Google::Apis::Core::JsonRepresentation - property :policy, as: 'policy', class: Google::Apis::CloudresourcemanagerV1beta1::Policy, decorator: Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation - - property :update_mask, as: 'updateMask' + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' end end @@ -203,42 +193,24 @@ module Google end end - class UndeleteProjectRequest + class FolderOperation # @private class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class Organization - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :creation_time, as: 'creationTime' - property :owner, as: 'owner', class: Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner, decorator: Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner::Representation - - property :name, as: 'name' - property :organization_id, as: 'organizationId' - property :lifecycle_state, as: 'lifecycleState' + property :destination_parent, as: 'destinationParent' property :display_name, as: 'displayName' + property :operation_type, as: 'operationType' + property :source_parent, as: 'sourceParent' end end - class ProjectCreationStatus + class FolderOperationError # @private class Representation < Google::Apis::Core::JsonRepresentation - property :ready, as: 'ready' - property :gettable, as: 'gettable' - property :create_time, as: 'createTime' + property :error_message_id, as: 'errorMessageId' end end - class TestIamPermissionsResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :permissions, as: 'permissions' - end - end - - class GetIamPolicyRequest + class GetAncestryRequest # @private class Representation < Google::Apis::Core::JsonRepresentation end @@ -252,6 +224,43 @@ module Google end end + class GetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ListOrganizationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :organizations, as: 'organizations', class: Google::Apis::CloudresourcemanagerV1beta1::Organization, decorator: Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation + + end + end + + class ListProjectsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :projects, as: 'projects', class: Google::Apis::CloudresourcemanagerV1beta1::Project, decorator: Google::Apis::CloudresourcemanagerV1beta1::Project::Representation + + end + end + + class Organization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_time, as: 'creationTime' + property :display_name, as: 'displayName' + property :lifecycle_state, as: 'lifecycleState' + property :name, as: 'name' + property :organization_id, as: 'organizationId' + property :owner, as: 'owner', class: Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner, decorator: Google::Apis::CloudresourcemanagerV1beta1::OrganizationOwner::Representation + + end + end + class OrganizationOwner # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -259,40 +268,55 @@ module Google end end - class ListProjectsResponse + class Policy # @private class Representation < Google::Apis::Core::JsonRepresentation - collection :projects, as: 'projects', class: Google::Apis::CloudresourcemanagerV1beta1::Project, decorator: Google::Apis::CloudresourcemanagerV1beta1::Project::Representation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::CloudresourcemanagerV1beta1::AuditConfig, decorator: Google::Apis::CloudresourcemanagerV1beta1::AuditConfig::Representation - property :next_page_token, as: 'nextPageToken' - end - end + collection :bindings, as: 'bindings', class: Google::Apis::CloudresourcemanagerV1beta1::Binding, decorator: Google::Apis::CloudresourcemanagerV1beta1::Binding::Representation - class AuditLogConfig - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :exempted_members, as: 'exemptedMembers' - property :log_type, as: 'logType' - end - end - - class GetAncestryRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation + property :etag, :base64 => true, as: 'etag' + property :version, as: 'version' end end class Project # @private class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + hash :labels, as: 'labels' property :lifecycle_state, as: 'lifecycleState' - property :project_number, :numeric_string => true, as: 'projectNumber' + property :name, as: 'name' property :parent, as: 'parent', class: Google::Apis::CloudresourcemanagerV1beta1::ResourceId, decorator: Google::Apis::CloudresourcemanagerV1beta1::ResourceId::Representation - hash :labels, as: 'labels' - property :create_time, as: 'createTime' - property :name, as: 'name' property :project_id, as: 'projectId' + property :project_number, :numeric_string => true, as: 'projectNumber' + end + end + + class ProjectCreationStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :gettable, as: 'gettable' + property :ready, as: 'ready' + end + end + + class ResourceId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :type, as: 'type' + end + end + + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::CloudresourcemanagerV1beta1::Policy, decorator: Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation + + property :update_mask, as: 'updateMask' end end @@ -303,40 +327,16 @@ module Google end end - class FolderOperationError + class TestIamPermissionsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation - property :error_message_id, as: 'errorMessageId' + collection :permissions, as: 'permissions' end end - class FolderOperation + class UndeleteProjectRequest # @private class Representation < Google::Apis::Core::JsonRepresentation - property :operation_type, as: 'operationType' - property :source_parent, as: 'sourceParent' - property :display_name, as: 'displayName' - property :destination_parent, as: 'destinationParent' - end - end - - class Policy - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :etag, :base64 => true, as: 'etag' - property :version, as: 'version' - collection :audit_configs, as: 'auditConfigs', class: Google::Apis::CloudresourcemanagerV1beta1::AuditConfig, decorator: Google::Apis::CloudresourcemanagerV1beta1::AuditConfig::Representation - - collection :bindings, as: 'bindings', class: Google::Apis::CloudresourcemanagerV1beta1::Binding, decorator: Google::Apis::CloudresourcemanagerV1beta1::Binding::Representation - - end - end - - class ResourceId - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :type, as: 'type' - property :id, as: 'id' end end end diff --git a/generated/google/apis/cloudresourcemanager_v1beta1/service.rb b/generated/google/apis/cloudresourcemanager_v1beta1/service.rb index 2a4a3d5b1..6b43a1c94 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1/service.rb @@ -48,116 +48,52 @@ module Google @batch_path = 'batch' end - # 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. - # + If the project is not part of an organization, there must be at least - # one owner who has accepted the Terms of Service (ToS) agreement in the - # policy. Calling `setIamPolicy()` 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. - # @param [String] resource - # REQUIRED: The resource for which the policy is being specified. - # See the operation documentation for the appropriate value for this field. - # @param [Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest] set_iam_policy_request_object + # Fetches an Organization resource identified by the specified resource name. + # @param [String] name + # The resource name of the Organization to fetch, e.g. "organizations/1234". + # @param [String] organization_id + # The id of the Organization resource to fetch. + # This field is deprecated and will be removed in v1. Use name instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Policy] parsed result object + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Organization] parsed result object # @yieldparam err [StandardError] error object if request failed # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy] + # @return [Google::Apis::CloudresourcemanagerV1beta1::Organization] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def set_project_iam_policy(resource, set_iam_policy_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/projects/{resource}:setIamPolicy', options) - command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest::Representation - command.request_object = set_iam_policy_request_object - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Policy - command.params['resource'] = resource unless resource.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? + def get_organization(name, organization_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Organization + command.params['name'] = name unless name.nil? + command.query['organizationId'] = organization_id unless organization_id.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # Creates a Project resource. - # Initially, the Project resource is owned by its creator exclusively. - # The creator can later grant permission to others to read or update the - # Project. - # Several APIs are activated automatically for the Project, including - # Google Cloud Storage. - # @param [Google::Apis::CloudresourcemanagerV1beta1::Project] project_object - # @param [Boolean] use_legacy_stack - # A safety hatch to opt out of the new reliable project creation process. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Project] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Project] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def create_project(project_object = nil, use_legacy_stack: nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/projects', options) - command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation - command.request_object = project_object - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Project - command.query['useLegacyStack'] = use_legacy_stack unless use_legacy_stack.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # Returns the IAM access control policy for the specified Project. - # Permission is denied if the policy or the resource does not exist. + # 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". # @param [String] resource # REQUIRED: The resource for which the policy is being requested. # See the operation documentation for the appropriate value for this field. # @param [Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest] get_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -170,172 +106,116 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_project_iam_policy(resource, get_iam_policy_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/projects/{resource}:getIamPolicy', options) + def get_organization_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:getIamPolicy', options) command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest::Representation command.request_object = get_iam_policy_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Policy command.params['resource'] = resource unless resource.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # 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. - # @param [String] project_id - # The project ID (for example, `foo-bar-123`). - # Required. - # @param [Google::Apis::CloudresourcemanagerV1beta1::UndeleteProjectRequest] undelete_project_request_object + # Lists Organization resources that are visible to the user and satisfy + # the specified filter. This method returns Organizations in an unspecified + # order. New Organizations do not necessarily appear at the end of the list. + # @param [String] filter + # An optional query string used to filter the Organizations to return in + # the response. Filter rules are case-insensitive. + # Organizations may be filtered by `owner.directoryCustomerId` or by + # `domain`, where the domain is a Google for Work domain, for example: + # |Filter|Description| + # |------|-----------| + # |owner.directorycustomerid:123456789|Organizations with `owner. + # directory_customer_id` equal to `123456789`.| + # |domain:google.com|Organizations corresponding to the domain `google.com`.| + # This field is optional. + # @param [Fixnum] page_size + # The maximum number of Organizations to return in the response. + # This field is optional. + # @param [String] page_token + # A pagination token returned from a previous call to `ListOrganizations` + # that indicates from where listing should continue. + # This field is optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Empty] parsed result object + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Empty] + # @return [Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def undelete_project(project_id, undelete_project_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/projects/{projectId}:undelete', options) - command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::UndeleteProjectRequest::Representation - command.request_object = undelete_project_request_object - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Empty::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Empty - command.params['projectId'] = project_id unless project_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? + def list_organizations(filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/organizations', options) + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # Retrieves the Project identified by the specified - # `project_id` (for example, `my-project-123`). - # The caller must have read permissions for this Project. - # @param [String] project_id - # The Project ID (for example, `my-project-123`). - # Required. + # 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". + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest] set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Project] parsed result object + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Policy] parsed result object # @yieldparam err [StandardError] error object if request failed # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Project] + # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_project(project_id, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:get, 'v1beta1/projects/{projectId}', options) - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Project - command.params['projectId'] = project_id unless project_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? + def set_organization_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Policy + command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # 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. - # @param [String] project_id - # The Project ID (for example, `my-project-123`). - # Required. - # @param [Google::Apis::CloudresourcemanagerV1beta1::GetAncestryRequest] get_ancestry_request_object - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_project_ancestry(project_id, get_ancestry_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/projects/{projectId}:getAncestry', options) - command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::GetAncestryRequest::Representation - command.request_object = get_ancestry_request_object - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse - command.params['projectId'] = project_id unless project_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # Updates the attributes of the Project identified by the specified - # `project_id` (for example, `my-project-123`). - # The caller must have modify permissions for this Project. - # @param [String] project_id - # The project ID (for example, `my-project-123`). - # Required. - # @param [Google::Apis::CloudresourcemanagerV1beta1::Project] project_object - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Project] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Project] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def update_project(project_id, project_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:put, 'v1beta1/projects/{projectId}', options) - command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation - command.request_object = project_object - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Project - command.params['projectId'] = project_id unless project_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # Returns permissions that a caller has on the specified Project. + # Returns permissions that a caller has on the specified Organization. + # The `resource` field should be the organization's resource name, + # e.g. "organizations/123". # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. # See the operation documentation for the appropriate value for this field. # @param [Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -348,15 +228,88 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def test_project_iam_permissions(resource, test_iam_permissions_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/projects/{resource}:testIamPermissions', options) + def test_organization_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsRequest::Representation command.request_object = test_iam_permissions_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsResponse::Representation command.response_class = Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsResponse command.params['resource'] = resource unless resource.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates an Organization resource identified by the specified resource name. + # @param [String] name + # 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". + # @param [Google::Apis::CloudresourcemanagerV1beta1::Organization] organization_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Organization] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1beta1::Organization] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_organization(name, organization_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta1/{+name}', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation + command.request_object = organization_object + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Organization + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Project resource. + # Initially, the Project resource is owned by its creator exclusively. + # The creator can later grant permission to others to read or update the + # Project. + # Several APIs are activated automatically for the Project, including + # Google Cloud Storage. + # @param [Google::Apis::CloudresourcemanagerV1beta1::Project] project_object + # @param [Boolean] use_legacy_stack + # A safety hatch to opt out of the new reliable project creation process. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Project] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1beta1::Project] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project(project_object = nil, use_legacy_stack: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation + command.request_object = project_object + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Project + command.query['useLegacyStack'] = use_legacy_stack unless use_legacy_stack.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end @@ -382,11 +335,11 @@ module Google # @param [String] project_id # The Project ID (for example, `foo-bar-123`). # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -399,13 +352,117 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def delete_project(project_id, quota_user: nil, fields: nil, options: nil, &block) + def delete_project(project_id, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'v1beta1/projects/{projectId}', options) command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Empty::Representation command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Empty command.params['projectId'] = project_id unless project_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the Project identified by the specified + # `project_id` (for example, `my-project-123`). + # The caller must have read permissions for this Project. + # @param [String] project_id + # The Project ID (for example, `my-project-123`). + # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Project] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1beta1::Project] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project(project_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Project + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project_id + # The Project ID (for example, `my-project-123`). + # Required. + # @param [Google::Apis::CloudresourcemanagerV1beta1::GetAncestryRequest] get_ancestry_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_ancestry(project_id, get_ancestry_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}:getAncestry', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::GetAncestryRequest::Representation + command.request_object = get_ancestry_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::GetAncestryResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns the IAM access control policy for the specified Project. + # Permission is denied if the policy or the resource does not exist. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest] get_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{resource}:getIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest::Representation + command.request_object = get_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end @@ -438,20 +495,20 @@ module Google # filters have been applied. If no filter is specified, the call will return # projects for which the user has `resourcemanager.projects.get` permissions. # Optional. - # @param [String] page_token - # A pagination token returned from a previous call to ListProjects - # that indicates from where listing should continue. - # Optional. # @param [Fixnum] page_size # The maximum number of Projects to return in the response. # The server can return fewer Projects than requested. # If unspecified, server picks an appropriate default. # Optional. + # @param [String] page_token + # A pagination token returned from a previous call to ListProjects + # that indicates from where listing should continue. + # Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -464,80 +521,55 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_projects(filter: nil, page_token: nil, page_size: nil, quota_user: nil, fields: nil, options: nil, &block) + def list_projects(filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/projects', options) command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::ListProjectsResponse::Representation command.response_class = Google::Apis::CloudresourcemanagerV1beta1::ListProjectsResponse command.query['filter'] = filter unless filter.nil? - command.query['pageToken'] = page_token unless page_token.nil? command.query['pageSize'] = page_size unless page_size.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # Lists Organization resources that are visible to the user and satisfy - # the specified filter. This method returns Organizations in an unspecified - # order. New Organizations do not necessarily appear at the end of the list. - # @param [String] filter - # An optional query string used to filter the Organizations to return in - # the response. Filter rules are case-insensitive. - # Organizations may be filtered by `owner.directoryCustomerId` or by - # `domain`, where the domain is a Google for Work domain, for example: - # |Filter|Description| - # |------|-----------| - # |owner.directorycustomerid:123456789|Organizations with `owner. - # directory_customer_id` equal to `123456789`.| - # |domain:google.com|Organizations corresponding to the domain `google.com`.| - # This field is optional. - # @param [String] page_token - # A pagination token returned from a previous call to `ListOrganizations` - # that indicates from where listing should continue. - # This field is optional. - # @param [Fixnum] page_size - # The maximum number of Organizations to return in the response. - # This field is optional. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_organizations(filter: nil, page_token: nil, page_size: nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:get, 'v1beta1/organizations', options) - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::ListOrganizationsResponse - command.query['filter'] = filter unless filter.nil? - command.query['pageToken'] = page_token unless page_token.nil? - command.query['pageSize'] = page_size unless page_size.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # 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". + # 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. + # + If the project is not part of an organization, there must be at least + # one owner who has accepted the Terms of Service (ToS) agreement in the + # policy. Calling `setIamPolicy()` 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. # @param [String] resource # REQUIRED: The resource for which the policy is being specified. # See the operation documentation for the appropriate value for this field. # @param [Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest] set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -550,135 +582,28 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def set_organization_iam_policy(resource, set_iam_policy_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options) + def set_project_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{resource}:setIamPolicy', options) command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest::Representation command.request_object = set_iam_policy_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Policy command.params['resource'] = resource unless resource.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # 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". - # @param [String] resource - # REQUIRED: The resource for which the policy is being requested. - # See the operation documentation for the appropriate value for this field. - # @param [Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest] get_iam_policy_request_object - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Policy] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Policy] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_organization_iam_policy(resource, get_iam_policy_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/{+resource}:getIamPolicy', options) - command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest::Representation - command.request_object = get_iam_policy_request_object - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Policy::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Policy - command.params['resource'] = resource unless resource.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # Fetches an Organization resource identified by the specified resource name. - # @param [String] name - # The resource name of the Organization to fetch, e.g. "organizations/1234". - # @param [String] organization_id - # The id of the Organization resource to fetch. - # This field is deprecated and will be removed in v1. Use name instead. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Organization] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Organization] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_organization(name, organization_id: nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:get, 'v1beta1/{+name}', options) - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Organization - command.params['name'] = name unless name.nil? - command.query['organizationId'] = organization_id unless organization_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # Updates an Organization resource identified by the specified resource name. - # @param [String] name - # 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". - # @param [Google::Apis::CloudresourcemanagerV1beta1::Organization] organization_object - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Organization] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1beta1::Organization] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def update_organization(name, organization_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:put, 'v1beta1/{+name}', options) - command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation - command.request_object = organization_object - command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Organization::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Organization - command.params['name'] = name unless name.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # Returns permissions that a caller has on the specified Organization. - # The `resource` field should be the organization's resource name, - # e.g. "organizations/123". + # Returns permissions that a caller has on the specified Project. # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. # See the operation documentation for the appropriate value for this field. # @param [Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -691,15 +616,90 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def test_organization_iam_permissions(resource, test_iam_permissions_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + def test_project_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{resource}:testIamPermissions', options) command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsRequest::Representation command.request_object = test_iam_permissions_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsResponse::Representation command.response_class = Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsResponse command.params['resource'] = resource unless resource.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project_id + # The project ID (for example, `foo-bar-123`). + # Required. + # @param [Google::Apis::CloudresourcemanagerV1beta1::UndeleteProjectRequest] undelete_project_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def undelete_project(project_id, undelete_project_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}:undelete', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::UndeleteProjectRequest::Representation + command.request_object = undelete_project_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Empty::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Empty + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the attributes of the Project identified by the specified + # `project_id` (for example, `my-project-123`). + # The caller must have modify permissions for this Project. + # @param [String] project_id + # The project ID (for example, `my-project-123`). + # Required. + # @param [Google::Apis::CloudresourcemanagerV1beta1::Project] project_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV1beta1::Project] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1beta1::Project] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_project(project_id, project_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta1/projects/{projectId}', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation + command.request_object = project_object + command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Project + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end diff --git a/generated/google/apis/cloudresourcemanager_v2beta1.rb b/generated/google/apis/cloudresourcemanager_v2beta1.rb new file mode 100644 index 000000000..563cd73ed --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2beta1.rb @@ -0,0 +1,38 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/cloudresourcemanager_v2beta1/service.rb' +require 'google/apis/cloudresourcemanager_v2beta1/classes.rb' +require 'google/apis/cloudresourcemanager_v2beta1/representations.rb' + +module Google + module Apis + # Google Cloud Resource Manager API + # + # The Google Cloud Resource Manager API provides methods for creating, reading, + # and updating project metadata. + # + # @see https://cloud.google.com/resource-manager + module CloudresourcemanagerV2beta1 + VERSION = 'V2beta1' + REVISION = '20170710' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + end + end +end diff --git a/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb b/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb new file mode 100644 index 000000000..7f90dd3be --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb @@ -0,0 +1,819 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudresourcemanagerV2beta1 + + # Specifies the audit configuration for a service. + # The configuration determines which permission types are logged, and what + # identities, if any, are exempted from logging. + # An AuditConfig must have one or more AuditLogConfigs. + # If there are AuditConfigs for both `allServices` and a specific service, + # the union of the two AuditConfigs is used for that service: the log_types + # specified in each AuditConfig are enabled, and the exempted_members in each + # AuditConfig are exempted. + # Example Policy with multiple AuditConfigs: + # ` + # "audit_configs": [ + # ` + # "service": "allServices" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:foo@gmail.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # `, + # ` + # "log_type": "ADMIN_READ", + # ` + # ] + # `, + # ` + # "service": "fooservice.googleapis.com" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # `, + # ` + # "log_type": "DATA_WRITE", + # "exempted_members": [ + # "user:bar@gmail.com" + # ] + # ` + # ] + # ` + # ] + # ` + # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + # logging. It also exempts foo@gmail.com from DATA_READ logging, and + # bar@gmail.com from DATA_WRITE logging. + class AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Next ID: 4 + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # Specifies a service that will be enabled for audit logging. + # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + # `allServices` is a special value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. + # Example: + # ` + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:foo@gmail.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # ` + # ] + # ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting + # foo@gmail.com from DATA_READ logging. + class AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of + # permission. + # Follows the same format of Binding.members. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. + # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + # Required + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # A Folder in an Organization's resource hierarchy, used to + # organize that Organization's resources. + class Folder + include Google::Apis::Core::Hashable + + # Output only. Timestamp when the Folder was created. Assigned by the server. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The folder’s display name. + # A folder’s display name must be unique amongst its siblings, e.g. + # no two folders with the same parent can share the same display name. + # The display name must start and end with a letter or digit, may contain + # letters, digits, spaces, hyphens and underscores and can be no longer + # than 30 characters. This is captured by the regular expression: + # [\p`L`\p`N`](`\p`L`\p`N`_- ]`0,28`[\p`L`\p`N`])?. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Output only. The lifecycle state of the folder. + # Updates to the lifecycle_state must be performed via + # [DeleteFolder] and [UndeleteFolder]. + # Corresponds to the JSON property `lifecycleState` + # @return [String] + attr_accessor :lifecycle_state + + # Output only. The resource name of the Folder. + # Its format is `folders/`folder_id``, for example: "folders/1234". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Folder’s parent's resource name. + # Updates to the folder's parent must be performed via [MoveFolders]. + # Corresponds to the JSON property `parent` + # @return [String] + attr_accessor :parent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @display_name = args[:display_name] if args.key?(:display_name) + @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) + @name = args[:name] if args.key?(:name) + @parent = args[:parent] if args.key?(:parent) + end + end + + # Metadata describing a long running folder operation + class FolderOperation + include Google::Apis::Core::Hashable + + # The resource name of the folder or organization we are either creating + # the folder under or moving the folder to. + # Corresponds to the JSON property `destinationParent` + # @return [String] + attr_accessor :destination_parent + + # The display name of the folder. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The type of this operation. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The resource name of the folder's parent. + # Only applicable when the operation_type is MOVE. + # Corresponds to the JSON property `sourceParent` + # @return [String] + attr_accessor :source_parent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination_parent = args[:destination_parent] if args.key?(:destination_parent) + @display_name = args[:display_name] if args.key?(:display_name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @source_parent = args[:source_parent] if args.key?(:source_parent) + end + end + + # A classification of the Folder Operation error. + class FolderOperationError + include Google::Apis::Core::Hashable + + # The type of operation error experienced. + # Corresponds to the JSON property `errorMessageId` + # @return [String] + attr_accessor :error_message_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_message_id = args[:error_message_id] if args.key?(:error_message_id) + end + end + + # Request message for `GetIamPolicy` method. + class GetIamPolicyRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The ListFolders response message. + class ListFoldersResponse + include Google::Apis::Core::Hashable + + # A possibly paginated list of Folders that are direct descendants of + # the specified parent resource. + # Corresponds to the JSON property `folders` + # @return [Array] + attr_accessor :folders + + # A pagination token returned from a previous call to `ListFolders` + # that indicates from where listing should continue. + # This field is optional. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @folders = args[:folders] if args.key?(:folders) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The MoveFolder request message. + class MoveFolderRequest + include Google::Apis::Core::Hashable + + # The resource name of the Folder or Organization to reparent + # the folder under. + # Must be of the form `folders/`folder_id`` or `organizations/`org_id``. + # Corresponds to the JSON property `destinationParent` + # @return [String] + attr_accessor :destination_parent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination_parent = args[:destination_parent] if args.key?(:destination_parent) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::CloudresourcemanagerV2beta1::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # 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). + class Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. + # `bindings` with no members will result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + end + end + + # A status object which is used as the `metadata` field for the Operation + # returned by CreateProject. It provides insight for when significant phases of + # Project creation have completed. + class ProjectCreationStatus + include Google::Apis::Core::Hashable + + # Creation time of the project creation workflow. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # True if the project can be retrieved using GetProject. No other operations + # on the project are guaranteed to work until the project creation is + # complete. + # Corresponds to the JSON property `gettable` + # @return [Boolean] + attr_accessor :gettable + alias_method :gettable?, :gettable + + # True if the project creation process is complete. + # Corresponds to the JSON property `ready` + # @return [Boolean] + attr_accessor :ready + alias_method :ready?, :ready + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @gettable = args[:gettable] if args.key?(:gettable) + @ready = args[:ready] if args.key?(:ready) + end + end + + # The request message for searching folders. + class SearchFoldersRequest + include Google::Apis::Core::Hashable + + # The maximum number of folders to return in the response. + # This field is optional. + # Corresponds to the JSON property `pageSize` + # @return [Fixnum] + attr_accessor :page_size + + # A pagination token returned from a previous call to `SearchFolders` + # that indicates from where search should continue. + # This field is optional. + # Corresponds to the JSON property `pageToken` + # @return [String] + attr_accessor :page_token + + # Search criteria used to select the Folders to return. + # If no search criteria is specified then all accessible folders will be + # returned. + # Query expressions can be used to restrict results based upon displayName, + # lifecycleState and parent, where the operators `=`, `NOT`, `AND` and `OR` + # can be used along with the suffix wildcard symbol `*`. + # Some example queries are: + # |Query|Description| + # |------|-----------| + # |displayName=Test*|Folders whose display name starts with "Test".| + # |lifecycleState=ACTIVE|Folders whose lifecycleState is ACTIVE.| + # |parent=folders/123|Folders whose parent is "folders/123".| + # |parent=folders/123 AND lifecycleState=ACTIVE|Active folders whose + # parent is "folders/123".| + # Corresponds to the JSON property `query` + # @return [String] + attr_accessor :query + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @page_size = args[:page_size] if args.key?(:page_size) + @page_token = args[:page_token] if args.key?(:page_token) + @query = args[:query] if args.key?(:query) + end + end + + # The response message for searching folders. + class SearchFoldersResponse + include Google::Apis::Core::Hashable + + # A possibly paginated folder search results. + # the specified parent resource. + # Corresponds to the JSON property `folders` + # @return [Array] + attr_accessor :folders + + # A pagination token returned from a previous call to `SearchFolders` + # that indicates from where searching should continue. + # This field is optional. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @folders = args[:folders] if args.key?(:folders) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Request message for `SetIamPolicy` method. + class SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # 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). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::CloudresourcemanagerV2beta1::Policy] + attr_accessor :policy + + # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + # the fields in the mask will be modified. If no mask is provided, the + # following default mask is used: + # paths: "bindings, etag" + # This field is only used by Cloud IAM. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Request message for `TestIamPermissions` method. + class TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Response message for `TestIamPermissions` method. + class TestIamPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # The UndeleteFolder request message. + class UndeleteFolderRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + end + end +end diff --git a/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb b/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb new file mode 100644 index 000000000..3bf9813fa --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb @@ -0,0 +1,304 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudresourcemanagerV2beta1 + + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Folder + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FolderOperation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FolderOperationError + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListFoldersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MoveFolderRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectCreationStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SearchFoldersRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SearchFoldersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UndeleteFolderRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::CloudresourcemanagerV2beta1::AuditLogConfig, decorator: Google::Apis::CloudresourcemanagerV2beta1::AuditLogConfig::Representation + + property :service, as: 'service' + end + end + + class AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class Folder + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :display_name, as: 'displayName' + property :lifecycle_state, as: 'lifecycleState' + property :name, as: 'name' + property :parent, as: 'parent' + end + end + + class FolderOperation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination_parent, as: 'destinationParent' + property :display_name, as: 'displayName' + property :operation_type, as: 'operationType' + property :source_parent, as: 'sourceParent' + end + end + + class FolderOperationError + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_message_id, as: 'errorMessageId' + end + end + + class GetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ListFoldersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :folders, as: 'folders', class: Google::Apis::CloudresourcemanagerV2beta1::Folder, decorator: Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class MoveFolderRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination_parent, as: 'destinationParent' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::CloudresourcemanagerV2beta1::Status, decorator: Google::Apis::CloudresourcemanagerV2beta1::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::CloudresourcemanagerV2beta1::AuditConfig, decorator: Google::Apis::CloudresourcemanagerV2beta1::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::CloudresourcemanagerV2beta1::Binding, decorator: Google::Apis::CloudresourcemanagerV2beta1::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :version, as: 'version' + end + end + + class ProjectCreationStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :gettable, as: 'gettable' + property :ready, as: 'ready' + end + end + + class SearchFoldersRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :page_size, as: 'pageSize' + property :page_token, as: 'pageToken' + property :query, as: 'query' + end + end + + class SearchFoldersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :folders, as: 'folders', class: Google::Apis::CloudresourcemanagerV2beta1::Folder, decorator: Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::CloudresourcemanagerV2beta1::Policy, decorator: Google::Apis::CloudresourcemanagerV2beta1::Policy::Representation + + property :update_mask, as: 'updateMask' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TestIamPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestIamPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class UndeleteFolderRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + end + end +end diff --git a/generated/google/apis/cloudresourcemanager_v2beta1/service.rb b/generated/google/apis/cloudresourcemanager_v2beta1/service.rb new file mode 100644 index 000000000..52b0b4855 --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2beta1/service.rb @@ -0,0 +1,528 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudresourcemanagerV2beta1 + # Google Cloud Resource Manager API + # + # The Google Cloud Resource Manager API provides methods for creating, reading, + # and updating project metadata. + # + # @example + # require 'google/apis/cloudresourcemanager_v2beta1' + # + # Cloudresourcemanager = Google::Apis::CloudresourcemanagerV2beta1 # Alias the module + # service = Cloudresourcemanager::CloudResourceManagerService.new + # + # @see https://cloud.google.com/resource-manager + class CloudResourceManagerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://cloudresourcemanager.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates a Folder in the resource hierarchy. + # Returns an Operation which can be used to track the progress of the + # folder creation workflow. + # Upon success the Operation.response field will be populated with the + # created Folder. + # In order to succeed, the addition of this new Folder must not violate + # the Folder naming, height or fanout constraints. + # + The Folder's display_name must be distinct from all other Folder's that + # share its parent. + # + The addition of the Folder must not cause the active Folder hierarchy + # to exceed a height of 4. Note, the full active + deleted Folder hierarchy + # is allowed to reach a height of 8; this provides additional headroom when + # moving folders that contain deleted folders. + # + The addition of the Folder must not cause the total number of Folders + # under its parent to exceed 100. + # If the operation fails due to a folder constraint violation, + # a PreconditionFailure explaining the violation will be returned. + # If the failure occurs synchronously then the PreconditionFailure + # will be returned via the Status.details field and if it occurs + # asynchronously then the PreconditionFailure will be returned + # via the the Operation.error field. + # The caller must have `resourcemanager.folders.create` permission on the + # identified parent. + # @param [Google::Apis::CloudresourcemanagerV2beta1::Folder] folder_object + # @param [String] parent + # The resource name of the new Folder's parent. + # Must be of the form `folders/`folder_id`` or `organizations/`org_id``. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_folder(folder_object = nil, parent: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/folders', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + command.request_object = folder_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Operation::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Operation + command.query['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Requests deletion of a Folder. The Folder is moved into the + # [DELETE_REQUESTED] state immediately, and is deleted approximately 30 days + # later. This method may only be called on an empty Folder in the [ACTIVE] + # state, where a Folder is empty if it doesn't contain any Folders or + # Projects in the [ACTIVE] state. + # The caller must have `resourcemanager.folders.delete` permission on the + # identified folder. + # @param [String] name + # the resource name of the Folder to be deleted. + # Must be of the form `folders/`folder_id``. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Folder] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_folder(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+name}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Folder + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a Folder identified by the supplied resource name. + # Valid Folder resource names have the format `folders/`folder_id`` + # (for example, `folders/1234`). + # The caller must have `resourcemanager.folders.get` permission on the + # identified folder. + # @param [String] name + # The resource name of the Folder to retrieve. + # Must be of the form `folders/`folder_id``. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Folder] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_folder(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+name}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Folder + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a Folder. The returned policy may be + # empty if no such policy or resource exists. The `resource` field should + # be the Folder's resource name, e.g. "folders/1234". + # The caller must have `resourcemanager.folders.getIamPolicy` permission + # on the identified folder. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV2beta1::GetIamPolicyRequest] get_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_folder_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+resource}:getIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::GetIamPolicyRequest::Representation + command.request_object = get_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the Folders that are direct descendants of supplied parent resource. + # List provides a strongly consistent view of the Folders underneath + # the specified parent resource. + # List returns Folders sorted based upon the (ascending) lexical ordering + # of their display_name. + # The caller must have `resourcemanager.folders.list` permission on the + # identified parent. + # @param [Fixnum] page_size + # The maximum number of Folders to return in the response. + # This field is optional. + # @param [String] page_token + # A pagination token returned from a previous call to `ListFolders` + # that indicates where this listing should continue from. + # This field is optional. + # @param [String] parent + # The resource name of the Organization or Folder whose Folders are + # being listed. + # Must be of the form `folders/`folder_id`` or `organizations/`org_id``. + # Access to this method is controlled by checking the + # `resourcemanager.folders.list` permission on the `parent`. + # @param [Boolean] show_deleted + # Controls whether Folders in the [DELETE_REQUESTED` state should + # be returned. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::ListFoldersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::ListFoldersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_folders(page_size: nil, page_token: nil, parent: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/folders', options) + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::ListFoldersResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::ListFoldersResponse + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['parent'] = parent unless parent.nil? + command.query['showDeleted'] = show_deleted unless show_deleted.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Moves a Folder under a new resource parent. + # Returns an Operation which can be used to track the progress of the + # folder move workflow. + # Upon success the Operation.response field will be populated with the + # moved Folder. + # Upon failure, a FolderOperationError categorizing the failure cause will + # be returned - if the failure occurs synchronously then the + # FolderOperationError will be returned via the Status.details field + # and if it occurs asynchronously then the FolderOperation will be returned + # via the the Operation.error field. + # In addition, the Operation.metadata field will be populated with a + # FolderOperation message as an aid to stateless clients. + # Folder moves will be rejected if they violate either the naming, height + # or fanout constraints described in the [CreateFolder] documentation. + # The caller must have `resourcemanager.folders.move` permission on the + # folder's current and proposed new parent. + # @param [String] name + # The resource name of the Folder to move. + # Must be of the form folders/`folder_id` + # @param [Google::Apis::CloudresourcemanagerV2beta1::MoveFolderRequest] move_folder_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def move_folder(name, move_folder_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+name}:move', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::MoveFolderRequest::Representation + command.request_object = move_folder_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Operation::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates a Folder, changing its display_name. + # Changes to the folder display_name will be rejected if they violate either + # the display_name formatting rules or naming constraints described in + # the [CreateFolder] documentation. + # + The Folder's display name must start and end with a letter or digit, + # may contain letters, digits, spaces, hyphens and underscores and can be + # no longer than 30 characters. This is captured by the regular expression: + # [\p`L`\p`N`](`\p`L`\p`N`_- ]`0,28`[\p`L`\p`N`])?. + # The caller must have `resourcemanager.folders.update` permission on the + # identified folder. + # If the update fails due to the unique name constraint then a + # PreconditionFailure explaining this violation will be returned + # in the Status.details field. + # @param [String] name + # Output only. The resource name of the Folder. + # Its format is `folders/`folder_id``, for example: "folders/1234". + # @param [Google::Apis::CloudresourcemanagerV2beta1::Folder] folder_object + # @param [String] update_mask + # Fields to be updated. + # Only the `display_name` can be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Folder] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_folder(name, folder_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v2beta1/{+name}', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + command.request_object = folder_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Folder + command.params['name'] = name unless name.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Search for folders that match specific filter criteria. + # Search provides an eventually consistent view of the folders a user has + # access to which meet the specified filter criteria. + # This will only return folders on which the caller has the + # permission `resourcemanager.folders.get`. + # @param [Google::Apis::CloudresourcemanagerV2beta1::SearchFoldersRequest] search_folders_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::SearchFoldersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::SearchFoldersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def search_folders(search_folders_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/folders:search', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::SearchFoldersRequest::Representation + command.request_object = search_folders_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::SearchFoldersResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::SearchFoldersResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on a Folder, replacing any existing policy. + # The `resource` field should be the Folder's resource name, e.g. + # "folders/1234". + # The caller must have `resourcemanager.folders.setIamPolicy` permission + # on the identified folder. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV2beta1::SetIamPolicyRequest] set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_folder_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified Folder. + # The `resource` field should be the Folder's resource name, + # e.g. "folders/1234". + # There are no permissions required for making this API call. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV2beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_folder_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Cancels the deletion request for a Folder. This method may only be + # called on a Folder in the [DELETE_REQUESTED] state. + # In order to succeed, the Folder's parent must be in the [ACTIVE] state. + # In addition, reintroducing the folder into the tree must not violate + # folder naming, height and fanout constraints described in the + # [CreateFolder] documentation. + # The caller must have `resourcemanager.folders.undelete` permission on the + # identified folder. + # @param [String] name + # The resource name of the Folder to undelete. + # Must be of the form `folders/`folder_id``. + # @param [Google::Apis::CloudresourcemanagerV2beta1::UndeleteFolderRequest] undelete_folder_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::CloudresourcemanagerV2beta1::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2beta1::Folder] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def undelete_folder(name, undelete_folder_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+name}:undelete', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2beta1::UndeleteFolderRequest::Representation + command.request_object = undelete_folder_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2beta1::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2beta1::Folder + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/cloudtrace_v1.rb b/generated/google/apis/cloudtrace_v1.rb index ebf30cf54..7a2813fb9 100644 --- a/generated/google/apis/cloudtrace_v1.rb +++ b/generated/google/apis/cloudtrace_v1.rb @@ -28,16 +28,16 @@ module Google # @see https://cloud.google.com/trace module CloudtraceV1 VERSION = 'V1' - REVISION = '20170711' + REVISION = '20170815' - # Read Trace data for a project or application - AUTH_TRACE_READONLY = 'https://www.googleapis.com/auth/trace.readonly' + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' # Write Trace data for a project or application AUTH_TRACE_APPEND = 'https://www.googleapis.com/auth/trace.append' - # View and manage your data across Google Cloud Platform services - AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + # Read Trace data for a project or application + AUTH_TRACE_READONLY = 'https://www.googleapis.com/auth/trace.readonly' end end end diff --git a/generated/google/apis/cloudtrace_v1/classes.rb b/generated/google/apis/cloudtrace_v1/classes.rb index f7798eb86..fdf86f480 100644 --- a/generated/google/apis/cloudtrace_v1/classes.rb +++ b/generated/google/apis/cloudtrace_v1/classes.rb @@ -22,22 +22,68 @@ module Google module Apis module CloudtraceV1 + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The response message for the `ListTraces` method. + class ListTracesResponse + include Google::Apis::Core::Hashable + + # If defined, indicates that there are more traces that match the request + # and that this value should be passed to the next request to continue + # retrieving additional traces. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # List of trace records returned. + # Corresponds to the JSON property `traces` + # @return [Array] + attr_accessor :traces + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @traces = args[:traces] if args.key?(:traces) + end + end + # A trace describes how long it takes for an application to perform an # operation. It consists of a set of spans, each of which represent a single # timed event within the operation. class Trace include Google::Apis::Core::Hashable - # Collection of spans in the trace. - # Corresponds to the JSON property `spans` - # @return [Array] - attr_accessor :spans - # Project ID of the Cloud project where the trace data is stored. # Corresponds to the JSON property `projectId` # @return [String] attr_accessor :project_id + # Collection of spans in the trace. + # Corresponds to the JSON property `spans` + # @return [Array] + attr_accessor :spans + # Globally unique identifier for the trace. This identifier is a 128-bit # numeric value formatted as a 32-byte hex string. # Corresponds to the JSON property `traceId` @@ -50,31 +96,12 @@ module Google # Update properties of this object def update!(**args) - @spans = args[:spans] if args.key?(:spans) @project_id = args[:project_id] if args.key?(:project_id) + @spans = args[:spans] if args.key?(:spans) @trace_id = args[:trace_id] if args.key?(:trace_id) end end - # List of new or updated traces. - class Traces - include Google::Apis::Core::Hashable - - # List of traces. - # Corresponds to the JSON property `traces` - # @return [Array] - attr_accessor :traces - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @traces = args[:traces] if args.key?(:traces) - end - end - # A span represents a single timed event within a trace. Spans can be nested # and form a trace tree. Often, a trace contains a root span that describes the # end-to-end latency of an operation and, optionally, one or more subspans for @@ -83,21 +110,11 @@ module Google class TraceSpan include Google::Apis::Core::Hashable - # ID of the parent span, if any. Optional. - # Corresponds to the JSON property `parentSpanId` - # @return [Fixnum] - attr_accessor :parent_span_id - # End time of the span in nanoseconds from the UNIX epoch. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time - # Start time of the span in nanoseconds from the UNIX epoch. - # Corresponds to the JSON property `startTime` - # @return [String] - attr_accessor :start_time - # Distinguishes between spans generated in a particular context. For example, # two spans with the same name may be distinguished using `RPC_CLIENT` # and `RPC_SERVER` to identify queueing latency associated with the span. @@ -149,59 +166,43 @@ module Google # @return [String] attr_accessor :name + # ID of the parent span, if any. Optional. + # Corresponds to the JSON property `parentSpanId` + # @return [Fixnum] + attr_accessor :parent_span_id + # Identifier for the span. Must be a 64-bit integer other than 0 and # unique within a trace. # Corresponds to the JSON property `spanId` # @return [Fixnum] attr_accessor :span_id + # Start time of the span in nanoseconds from the UNIX epoch. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @parent_span_id = args[:parent_span_id] if args.key?(:parent_span_id) @end_time = args[:end_time] if args.key?(:end_time) - @start_time = args[:start_time] if args.key?(:start_time) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) + @parent_span_id = args[:parent_span_id] if args.key?(:parent_span_id) @span_id = args[:span_id] if args.key?(:span_id) + @start_time = args[:start_time] if args.key?(:start_time) end end - # A generic empty message that you can re-use to avoid defining duplicated - # empty messages in your APIs. A typical example is to use it as the request - # or the response type of an API method. For instance: - # service Foo ` - # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); - # ` - # The JSON representation for `Empty` is empty JSON object ````. - class Empty + # List of new or updated traces. + class Traces include Google::Apis::Core::Hashable - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # The response message for the `ListTraces` method. - class ListTracesResponse - include Google::Apis::Core::Hashable - - # If defined, indicates that there are more traces that match the request - # and that this value should be passed to the next request to continue - # retrieving additional traces. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - # List of trace records returned. + # List of traces. # Corresponds to the JSON property `traces` # @return [Array] attr_accessor :traces @@ -212,7 +213,6 @@ module Google # Update properties of this object def update!(**args) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @traces = args[:traces] if args.key?(:traces) end end diff --git a/generated/google/apis/cloudtrace_v1/representations.rb b/generated/google/apis/cloudtrace_v1/representations.rb index c69881cdb..75f5d4f05 100644 --- a/generated/google/apis/cloudtrace_v1/representations.rb +++ b/generated/google/apis/cloudtrace_v1/representations.rb @@ -22,24 +22,6 @@ module Google module Apis module CloudtraceV1 - class Trace - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Traces - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class TraceSpan - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class Empty class Representation < Google::Apis::Core::JsonRepresentation; end @@ -53,34 +35,21 @@ module Google end class Trace - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :spans, as: 'spans', class: Google::Apis::CloudtraceV1::TraceSpan, decorator: Google::Apis::CloudtraceV1::TraceSpan::Representation + class Representation < Google::Apis::Core::JsonRepresentation; end - property :project_id, as: 'projectId' - property :trace_id, as: 'traceId' - end - end - - class Traces - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :traces, as: 'traces', class: Google::Apis::CloudtraceV1::Trace, decorator: Google::Apis::CloudtraceV1::Trace::Representation - - end + include Google::Apis::Core::JsonObjectSupport end class TraceSpan - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :parent_span_id, :numeric_string => true, as: 'parentSpanId' - property :end_time, as: 'endTime' - property :start_time, as: 'startTime' - property :kind, as: 'kind' - hash :labels, as: 'labels' - property :name, as: 'name' - property :span_id, :numeric_string => true, as: 'spanId' - end + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Traces + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end class Empty @@ -97,6 +66,37 @@ module Google end end + + class Trace + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :project_id, as: 'projectId' + collection :spans, as: 'spans', class: Google::Apis::CloudtraceV1::TraceSpan, decorator: Google::Apis::CloudtraceV1::TraceSpan::Representation + + property :trace_id, as: 'traceId' + end + end + + class TraceSpan + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + property :kind, as: 'kind' + hash :labels, as: 'labels' + property :name, as: 'name' + property :parent_span_id, :numeric_string => true, as: 'parentSpanId' + property :span_id, :numeric_string => true, as: 'spanId' + property :start_time, as: 'startTime' + end + end + + class Traces + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :traces, as: 'traces', class: Google::Apis::CloudtraceV1::Trace, decorator: Google::Apis::CloudtraceV1::Trace::Representation + + end + end end end end diff --git a/generated/google/apis/cloudtrace_v1/service.rb b/generated/google/apis/cloudtrace_v1/service.rb index 58bab2ae7..8ec5bfb0c 100644 --- a/generated/google/apis/cloudtrace_v1/service.rb +++ b/generated/google/apis/cloudtrace_v1/service.rb @@ -58,11 +58,11 @@ module Google # @param [String] project_id # ID of the Cloud project where the trace data is stored. # @param [Google::Apis::CloudtraceV1::Traces] traces_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -75,15 +75,15 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def patch_project_traces(project_id, traces_object = nil, quota_user: nil, fields: nil, options: nil, &block) + def patch_project_traces(project_id, traces_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:patch, 'v1/projects/{projectId}/traces', options) command.request_representation = Google::Apis::CloudtraceV1::Traces::Representation command.request_object = traces_object command.response_representation = Google::Apis::CloudtraceV1::Empty::Representation command.response_class = Google::Apis::CloudtraceV1::Empty command.params['projectId'] = project_id unless project_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end @@ -92,11 +92,11 @@ module Google # ID of the Cloud project where the trace data is stored. # @param [String] trace_id # ID of the trace to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -109,31 +109,23 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_project_trace(project_id, trace_id, quota_user: nil, fields: nil, options: nil, &block) + def get_project_trace(project_id, trace_id, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/projects/{projectId}/traces/{traceId}', options) command.response_representation = Google::Apis::CloudtraceV1::Trace::Representation command.response_class = Google::Apis::CloudtraceV1::Trace command.params['projectId'] = project_id unless project_id.nil? command.params['traceId'] = trace_id unless trace_id.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Returns of a list of traces that match the specified filter conditions. # @param [String] project_id # ID of the Cloud project where the trace data is stored. - # @param [String] order_by - # Field used to sort the returned traces. Optional. - # Can be one of the following: - # * `trace_id` - # * `name` (`name` field of root span in the trace) - # * `duration` (difference between `end_time` and `start_time` fields of - # the root span) - # * `start` (`start_time` field of the root span) - # Descending order can be specified by appending `desc` to the sort field - # (for example, `name desc`). - # Only one sort field is permitted. + # @param [String] end_time + # End of the time interval (inclusive) during which the trace data was + # collected from the application. # @param [String] filter # An optional filter against labels for the request. # By default, searches use prefix matching. To specify exact match, prepend @@ -163,27 +155,35 @@ module Google # specified. # * `method:VALUE`: Equivalent to `/http/method:VALUE`. # * `url:VALUE`: Equivalent to `/http/url:VALUE`. - # @param [String] end_time - # End of the time interval (inclusive) during which the trace data was - # collected from the application. - # @param [String] start_time - # Start of the time interval (inclusive) during which the trace data was - # collected from the application. - # @param [String] page_token - # Token identifying the page of results to return. If provided, use the - # value of the `next_page_token` field from a previous request. Optional. + # @param [String] order_by + # Field used to sort the returned traces. Optional. + # Can be one of the following: + # * `trace_id` + # * `name` (`name` field of root span in the trace) + # * `duration` (difference between `end_time` and `start_time` fields of + # the root span) + # * `start` (`start_time` field of the root span) + # Descending order can be specified by appending `desc` to the sort field + # (for example, `name desc`). + # Only one sort field is permitted. # @param [Fixnum] page_size # Maximum number of traces to return. If not specified or <= 0, the # implementation selects a reasonable value. The implementation may # return fewer traces than the requested page size. Optional. + # @param [String] page_token + # Token identifying the page of results to return. If provided, use the + # value of the `next_page_token` field from a previous request. Optional. + # @param [String] start_time + # Start of the time interval (inclusive) during which the trace data was + # collected from the application. # @param [String] view # Type of data returned for traces in the list. Optional. Default is # `MINIMAL`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -196,20 +196,20 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_project_traces(project_id, order_by: nil, filter: nil, end_time: nil, start_time: nil, page_token: nil, page_size: nil, view: nil, quota_user: nil, fields: nil, options: nil, &block) + def list_project_traces(project_id, end_time: nil, filter: nil, order_by: nil, page_size: nil, page_token: nil, start_time: nil, view: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/projects/{projectId}/traces', options) command.response_representation = Google::Apis::CloudtraceV1::ListTracesResponse::Representation command.response_class = Google::Apis::CloudtraceV1::ListTracesResponse command.params['projectId'] = project_id unless project_id.nil? - command.query['orderBy'] = order_by unless order_by.nil? - command.query['filter'] = filter unless filter.nil? command.query['endTime'] = end_time unless end_time.nil? - command.query['startTime'] = start_time unless start_time.nil? - command.query['pageToken'] = page_token unless page_token.nil? + command.query['filter'] = filter unless filter.nil? + command.query['orderBy'] = order_by unless order_by.nil? command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['startTime'] = start_time unless start_time.nil? command.query['view'] = view unless view.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end diff --git a/generated/google/apis/clouduseraccounts_alpha.rb b/generated/google/apis/clouduseraccounts_alpha.rb new file mode 100644 index 000000000..6afa3e895 --- /dev/null +++ b/generated/google/apis/clouduseraccounts_alpha.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/clouduseraccounts_alpha/service.rb' +require 'google/apis/clouduseraccounts_alpha/classes.rb' +require 'google/apis/clouduseraccounts_alpha/representations.rb' + +module Google + module Apis + # Cloud User Accounts API + # + # Creates and manages users and groups for accessing Google Compute Engine + # virtual machines. + # + # @see https://cloud.google.com/compute/docs/access/user-accounts/api/latest/ + module ClouduseraccountsAlpha + VERSION = 'Alpha' + REVISION = '20160316' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + + # Manage your Google Cloud User Accounts + AUTH_CLOUD_USERACCOUNTS = 'https://www.googleapis.com/auth/cloud.useraccounts' + + # View your Google Cloud User Accounts + AUTH_CLOUD_USERACCOUNTS_READONLY = 'https://www.googleapis.com/auth/cloud.useraccounts.readonly' + end + end +end diff --git a/generated/google/apis/clouduseraccounts_alpha/classes.rb b/generated/google/apis/clouduseraccounts_alpha/classes.rb new file mode 100644 index 000000000..5ceeaf1b0 --- /dev/null +++ b/generated/google/apis/clouduseraccounts_alpha/classes.rb @@ -0,0 +1,1188 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ClouduseraccountsAlpha + + # Enables "data access" audit logging for a service and specifies a list of + # members that are log-exempted. + class AuditConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that are exempted from "data access" audit logging + # for the `service` specified above. Follows the same format of Binding.members. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # 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. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @service = args[:service] if args.key?(:service) + end + end + + # A list of authorized public keys for a user account. + class AuthorizedKeysView + include Google::Apis::Core::Hashable + + # [Output Only] The list of authorized public keys in SSH format. + # Corresponds to the JSON property `keys` + # @return [Array] + attr_accessor :keys + + # [Output Only] Whether the user has the ability to elevate on the instance that + # requested the authorized keys. + # Corresponds to the JSON property `sudoer` + # @return [Boolean] + attr_accessor :sudoer + alias_method :sudoer?, :sudoer + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @keys = args[:keys] if args.key?(:keys) + @sudoer = args[:sudoer] if args.key?(:sudoer) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor` + # , or `roles/owner`. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # A condition to be met. + class Condition + include Google::Apis::Core::Hashable + + # Trusted attributes supplied by the IAM system. + # Corresponds to the JSON property `iam` + # @return [String] + attr_accessor :iam + + # An operator to apply the subject with. + # Corresponds to the JSON property `op` + # @return [String] + attr_accessor :op + + # Trusted attributes discharged by the service. + # Corresponds to the JSON property `svc` + # @return [String] + attr_accessor :svc + + # Trusted attributes supplied by any service that owns resources and uses the + # IAM system for access control. + # Corresponds to the JSON property `sys` + # @return [String] + attr_accessor :sys + + # The object of the condition. Exactly one of these must be set. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + # The objects of the condition. This is mutually exclusive with 'value'. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @iam = args[:iam] if args.key?(:iam) + @op = args[:op] if args.key?(:op) + @svc = args[:svc] if args.key?(:svc) + @sys = args[:sys] if args.key?(:sys) + @value = args[:value] if args.key?(:value) + @values = args[:values] if args.key?(:values) + end + end + + # A Group resource. + class Group + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always clouduseraccounts#group for groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A list of URLs to User resources who belong to the group. Users + # may only be members of groups in the same project. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Name of the resource; provided by the client when the resource is created. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @members = args[:members] if args.key?(:members) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class GroupList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of Group resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always clouduseraccounts#groupList for lists + # of groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class GroupsAddMemberRequest + include Google::Apis::Core::Hashable + + # Fully-qualified URLs of the User resources to add. + # Corresponds to the JSON property `users` + # @return [Array] + attr_accessor :users + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @users = args[:users] if args.key?(:users) + end + end + + # + class GroupsRemoveMemberRequest + include Google::Apis::Core::Hashable + + # Fully-qualified URLs of the User resources to remove. + # Corresponds to the JSON property `users` + # @return [Array] + attr_accessor :users + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @users = args[:users] if args.key?(:users) + end + end + + # A list of all Linux accounts for this project. This API is only used by + # Compute Engine virtual machines to get information about user accounts for a + # project or instance. Linux resources are read-only views into users and groups + # managed by the Compute Engine Accounts API. + class LinuxAccountViews + include Google::Apis::Core::Hashable + + # [Output Only] A list of all groups within a project. + # Corresponds to the JSON property `groupViews` + # @return [Array] + attr_accessor :group_views + + # [Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews + # for Linux resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A list of all users within a project. + # Corresponds to the JSON property `userViews` + # @return [Array] + attr_accessor :user_views + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @group_views = args[:group_views] if args.key?(:group_views) + @kind = args[:kind] if args.key?(:kind) + @user_views = args[:user_views] if args.key?(:user_views) + end + end + + # + class LinuxGetAuthorizedKeysViewResponse + include Google::Apis::Core::Hashable + + # A list of authorized public keys for a user account. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ClouduseraccountsAlpha::AuthorizedKeysView] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # + class LinuxGetLinuxAccountViewsResponse + include Google::Apis::Core::Hashable + + # A list of all Linux accounts for this project. This API is only used by + # Compute Engine virtual machines to get information about user accounts for a + # project or instance. Linux resources are read-only views into users and groups + # managed by the Compute Engine Accounts API. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ClouduseraccountsAlpha::LinuxAccountViews] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # A detailed view of a Linux group. + class LinuxGroupView + include Google::Apis::Core::Hashable + + # [Output Only] The Group ID. + # Corresponds to the JSON property `gid` + # @return [Fixnum] + attr_accessor :gid + + # [Output Only] Group name. + # Corresponds to the JSON property `groupName` + # @return [String] + attr_accessor :group_name + + # [Output Only] List of user accounts that belong to the group. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gid = args[:gid] if args.key?(:gid) + @group_name = args[:group_name] if args.key?(:group_name) + @members = args[:members] if args.key?(:members) + end + end + + # A detailed view of a Linux user account. + class LinuxUserView + include Google::Apis::Core::Hashable + + # [Output Only] The GECOS (user information) entry for this account. + # Corresponds to the JSON property `gecos` + # @return [String] + attr_accessor :gecos + + # [Output Only] User's default group ID. + # Corresponds to the JSON property `gid` + # @return [Fixnum] + attr_accessor :gid + + # [Output Only] The path to the home directory for this account. + # Corresponds to the JSON property `homeDirectory` + # @return [String] + attr_accessor :home_directory + + # [Output Only] The path to the login shell for this account. + # Corresponds to the JSON property `shell` + # @return [String] + attr_accessor :shell + + # [Output Only] User ID. + # Corresponds to the JSON property `uid` + # @return [Fixnum] + attr_accessor :uid + + # [Output Only] The username of the account. + # Corresponds to the JSON property `username` + # @return [String] + attr_accessor :username + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gecos = args[:gecos] if args.key?(:gecos) + @gid = args[:gid] if args.key?(:gid) + @home_directory = args[:home_directory] if args.key?(:home_directory) + @shell = args[:shell] if args.key?(:shell) + @uid = args[:uid] if args.key?(:uid) + @username = args[:username] if args.key?(:username) + end + end + + # Specifies what kind of log the caller must write + class LogConfig + include Google::Apis::Core::Hashable + + # Options for counters + # Corresponds to the JSON property `counter` + # @return [Google::Apis::ClouduseraccountsAlpha::LogConfigCounterOptions] + attr_accessor :counter + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @counter = args[:counter] if args.key?(:counter) + end + end + + # Options for counters + class LogConfigCounterOptions + include Google::Apis::Core::Hashable + + # The field value to attribute. + # Corresponds to the JSON property `field` + # @return [String] + attr_accessor :field + + # The metric to update. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + @metric = args[:metric] if args.key?(:metric) + end + end + + # An Operation resource, used to manage asynchronous API requests. + class Operation + include Google::Apis::Core::Hashable + + # [Output Only] Reserved for future use. + # Corresponds to the JSON property `clientOperationId` + # @return [String] + attr_accessor :client_operation_id + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] A textual description of the operation, which is set when the + # operation is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The time that this operation was completed. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + # Corresponds to the JSON property `error` + # @return [Google::Apis::ClouduseraccountsAlpha::Operation::Error] + attr_accessor :error + + # [Output Only] If the operation fails, this field contains the HTTP error + # message that was returned, such as NOT FOUND. + # Corresponds to the JSON property `httpErrorMessage` + # @return [String] + attr_accessor :http_error_message + + # [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. + # Corresponds to the JSON property `httpErrorStatusCode` + # @return [Fixnum] + attr_accessor :http_error_status_code + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The time that this operation was requested. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] Type of the resource. Always compute#operation for Operation + # resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The type of operation, such as insert, update, or delete, and so + # on. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # [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. + # Corresponds to the JSON property `progress` + # @return [Fixnum] + attr_accessor :progress + + # [Output Only] The URL of the region where the operation resides. Only + # available when performing regional operations. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The time that this operation was started by the server. This + # value is in RFC3339 text format. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # [Output Only] The status of the operation, which can be one of the following: + # PENDING, RUNNING, or DONE. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional textual description of the current status of the + # operation. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # [Output Only] The unique target ID, which identifies a specific incarnation of + # the target resource. + # Corresponds to the JSON property `targetId` + # @return [Fixnum] + attr_accessor :target_id + + # [Output Only] The URL of the resource that the operation modifies. + # Corresponds to the JSON property `targetLink` + # @return [String] + attr_accessor :target_link + + # [Output Only] User who requested the operation, for example: user@example.com. + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # [Output Only] If warning messages are generated during processing of the + # operation, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + # [Output Only] The URL of the zone where the operation resides. Only available + # when performing per-zone operations. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_operation_id = args[:client_operation_id] if args.key?(:client_operation_id) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @end_time = args[:end_time] if args.key?(:end_time) + @error = args[:error] if args.key?(:error) + @http_error_message = args[:http_error_message] if args.key?(:http_error_message) + @http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @progress = args[:progress] if args.key?(:progress) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @target_id = args[:target_id] if args.key?(:target_id) + @target_link = args[:target_link] if args.key?(:target_link) + @user = args[:user] if args.key?(:user) + @warnings = args[:warnings] if args.key?(:warnings) + @zone = args[:zone] if args.key?(:zone) + end + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of Operation resources. + class OperationList + include Google::Apis::Core::Hashable + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of Operation resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#operations for Operations + # resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # 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). + class Policy + include Google::Apis::Core::Hashable + + # 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. + # Note: `AuditConfig` doesn't apply to "admin activity", which always enables + # audit logging. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # 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. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `iamOwned` + # @return [Boolean] + attr_accessor :iam_owned + alias_method :iam_owned?, :iam_owned + + # 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. + # Corresponds to the JSON property `rules` + # @return [Array] + attr_accessor :rules + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @iam_owned = args[:iam_owned] if args.key?(:iam_owned) + @rules = args[:rules] if args.key?(:rules) + @version = args[:version] if args.key?(:version) + end + end + + # A public key for authenticating to guests. + class PublicKey + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Optional expiration timestamp. If provided, the timestamp must be in RFC3339 + # text format. If not provided, the public key never expires. + # Corresponds to the JSON property `expirationTimestamp` + # @return [String] + attr_accessor :expiration_timestamp + + # [Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 + # digest of the public key. + # Corresponds to the JSON property `fingerprint` + # @return [String] + attr_accessor :fingerprint + + # Public key text in SSH format, defined by RFC4253 section 6.6. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @expiration_timestamp = args[:expiration_timestamp] if args.key?(:expiration_timestamp) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @key = args[:key] if args.key?(:key) + end + end + + # A rule to be applied in a Policy. + class Rule + include Google::Apis::Core::Hashable + + # Required + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # Additional restrictions that must be met + # Corresponds to the JSON property `conditions` + # @return [Array] + attr_accessor :conditions + + # Human-readable description of the rule. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries. + # Corresponds to the JSON property `ins` + # @return [Array] + attr_accessor :ins + + # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries + # that match the LOG action. + # Corresponds to the JSON property `logConfigs` + # @return [Array] + attr_accessor :log_configs + + # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of + # entries. + # Corresponds to the JSON property `notIns` + # @return [Array] + attr_accessor :not_ins + + # 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. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @conditions = args[:conditions] if args.key?(:conditions) + @description = args[:description] if args.key?(:description) + @ins = args[:ins] if args.key?(:ins) + @log_configs = args[:log_configs] if args.key?(:log_configs) + @not_ins = args[:not_ins] if args.key?(:not_ins) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class TestPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the 'resource'. Permissions with wildcards + # (such as '*' or 'storage.*') are not allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class TestPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # A User resource. + class User + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] A list of URLs to Group resources who contain the user. Users + # are only members of groups in the same project. + # Corresponds to the JSON property `groups` + # @return [Array] + attr_accessor :groups + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always clouduseraccounts#user for users. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource; provided by the client when the resource is created. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Email address of account's owner. This account will be validated to make sure + # it exists. The email can belong to any domain, but it must be tied to a Google + # account. + # Corresponds to the JSON property `owner` + # @return [String] + attr_accessor :owner + + # [Output Only] Public keys that this user may use to login. + # Corresponds to the JSON property `publicKeys` + # @return [Array] + attr_accessor :public_keys + + # [Output Only] Server defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @groups = args[:groups] if args.key?(:groups) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @owner = args[:owner] if args.key?(:owner) + @public_keys = args[:public_keys] if args.key?(:public_keys) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class UserList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of User resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always clouduseraccounts#userList for lists of + # users. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + end + end +end diff --git a/generated/google/apis/clouduseraccounts_alpha/representations.rb b/generated/google/apis/clouduseraccounts_alpha/representations.rb new file mode 100644 index 000000000..e11bdcbec --- /dev/null +++ b/generated/google/apis/clouduseraccounts_alpha/representations.rb @@ -0,0 +1,494 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ClouduseraccountsAlpha + + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizedKeysView + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Condition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Group + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupsAddMemberRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupsRemoveMemberRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxAccountViews + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxGetAuthorizedKeysViewResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxGetLinuxAccountViewsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxGroupView + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxUserView + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigCounterOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublicKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Rule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class User + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UserList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :service, as: 'service' + end + end + + class AuthorizedKeysView + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :keys, as: 'keys' + property :sudoer, as: 'sudoer' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class Condition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :iam, as: 'iam' + property :op, as: 'op' + property :svc, as: 'svc' + property :sys, as: 'sys' + property :value, as: 'value' + collection :values, as: 'values' + end + end + + class Group + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + collection :members, as: 'members' + property :name, as: 'name' + property :self_link, as: 'selfLink' + end + end + + class GroupList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ClouduseraccountsAlpha::Group, decorator: Google::Apis::ClouduseraccountsAlpha::Group::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + end + end + + class GroupsAddMemberRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :users, as: 'users' + end + end + + class GroupsRemoveMemberRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :users, as: 'users' + end + end + + class LinuxAccountViews + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :group_views, as: 'groupViews', class: Google::Apis::ClouduseraccountsAlpha::LinuxGroupView, decorator: Google::Apis::ClouduseraccountsAlpha::LinuxGroupView::Representation + + property :kind, as: 'kind' + collection :user_views, as: 'userViews', class: Google::Apis::ClouduseraccountsAlpha::LinuxUserView, decorator: Google::Apis::ClouduseraccountsAlpha::LinuxUserView::Representation + + end + end + + class LinuxGetAuthorizedKeysViewResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ClouduseraccountsAlpha::AuthorizedKeysView, decorator: Google::Apis::ClouduseraccountsAlpha::AuthorizedKeysView::Representation + + end + end + + class LinuxGetLinuxAccountViewsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ClouduseraccountsAlpha::LinuxAccountViews, decorator: Google::Apis::ClouduseraccountsAlpha::LinuxAccountViews::Representation + + end + end + + class LinuxGroupView + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gid, as: 'gid' + property :group_name, as: 'groupName' + collection :members, as: 'members' + end + end + + class LinuxUserView + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gecos, as: 'gecos' + property :gid, as: 'gid' + property :home_directory, as: 'homeDirectory' + property :shell, as: 'shell' + property :uid, as: 'uid' + property :username, as: 'username' + end + end + + class LogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :counter, as: 'counter', class: Google::Apis::ClouduseraccountsAlpha::LogConfigCounterOptions, decorator: Google::Apis::ClouduseraccountsAlpha::LogConfigCounterOptions::Representation + + end + end + + class LogConfigCounterOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field' + property :metric, as: 'metric' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_operation_id, as: 'clientOperationId' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :end_time, as: 'endTime' + property :error, as: 'error', class: Google::Apis::ClouduseraccountsAlpha::Operation::Error, decorator: Google::Apis::ClouduseraccountsAlpha::Operation::Error::Representation + + property :http_error_message, as: 'httpErrorMessage' + property :http_error_status_code, as: 'httpErrorStatusCode' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + property :kind, as: 'kind' + property :name, as: 'name' + property :operation_type, as: 'operationType' + property :progress, as: 'progress' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :start_time, as: 'startTime' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :target_id, :numeric_string => true, as: 'targetId' + property :target_link, as: 'targetLink' + property :user, as: 'user' + collection :warnings, as: 'warnings', class: Google::Apis::ClouduseraccountsAlpha::Operation::Warning, decorator: Google::Apis::ClouduseraccountsAlpha::Operation::Warning::Representation + + property :zone, as: 'zone' + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::ClouduseraccountsAlpha::Operation::Error::Error, decorator: Google::Apis::ClouduseraccountsAlpha::Operation::Error::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ClouduseraccountsAlpha::Operation::Warning::Datum, decorator: Google::Apis::ClouduseraccountsAlpha::Operation::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class OperationList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ClouduseraccountsAlpha::Operation, decorator: Google::Apis::ClouduseraccountsAlpha::Operation::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::ClouduseraccountsAlpha::AuditConfig, decorator: Google::Apis::ClouduseraccountsAlpha::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::ClouduseraccountsAlpha::Binding, decorator: Google::Apis::ClouduseraccountsAlpha::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :iam_owned, as: 'iamOwned' + collection :rules, as: 'rules', class: Google::Apis::ClouduseraccountsAlpha::Rule, decorator: Google::Apis::ClouduseraccountsAlpha::Rule::Representation + + property :version, as: 'version' + end + end + + class PublicKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :expiration_timestamp, as: 'expirationTimestamp' + property :fingerprint, as: 'fingerprint' + property :key, as: 'key' + end + end + + class Rule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + collection :conditions, as: 'conditions', class: Google::Apis::ClouduseraccountsAlpha::Condition, decorator: Google::Apis::ClouduseraccountsAlpha::Condition::Representation + + property :description, as: 'description' + collection :ins, as: 'ins' + collection :log_configs, as: 'logConfigs', class: Google::Apis::ClouduseraccountsAlpha::LogConfig, decorator: Google::Apis::ClouduseraccountsAlpha::LogConfig::Representation + + collection :not_ins, as: 'notIns' + collection :permissions, as: 'permissions' + end + end + + class TestPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class User + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + collection :groups, as: 'groups' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :owner, as: 'owner' + collection :public_keys, as: 'publicKeys', class: Google::Apis::ClouduseraccountsAlpha::PublicKey, decorator: Google::Apis::ClouduseraccountsAlpha::PublicKey::Representation + + property :self_link, as: 'selfLink' + end + end + + class UserList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ClouduseraccountsAlpha::User, decorator: Google::Apis::ClouduseraccountsAlpha::User::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + end + end + end + end +end diff --git a/generated/google/apis/clouduseraccounts_alpha/service.rb b/generated/google/apis/clouduseraccounts_alpha/service.rb new file mode 100644 index 000000000..050eb1dac --- /dev/null +++ b/generated/google/apis/clouduseraccounts_alpha/service.rb @@ -0,0 +1,1152 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ClouduseraccountsAlpha + # Cloud User Accounts API + # + # Creates and manages users and groups for accessing Google Compute Engine + # virtual machines. + # + # @example + # require 'google/apis/clouduseraccounts_alpha' + # + # Clouduseraccounts = Google::Apis::ClouduseraccountsAlpha # Alias the module + # service = Clouduseraccounts::CloudUserAccountsService.new + # + # @see https://cloud.google.com/compute/docs/access/user-accounts/api/latest/ + class CloudUserAccountsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'clouduseraccounts/alpha/projects/') + @batch_path = 'batch' + end + + # Deletes the specified operation resource. + # @param [String] project + # Project ID for this request. + # @param [String] operation + # Name of the Operations resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_global_accounts_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/operations/{operation}', options) + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the specified operation resource. + # @param [String] project + # Project ID for this request. + # @param [String] operation + # Name of the Operations resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_global_accounts_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations/{operation}', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of operation resources contained within the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::OperationList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::OperationList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_global_accounts_operations(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::OperationList::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::OperationList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds users to the specified group. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the group for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::GroupsAddMemberRequest] groups_add_member_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_group_member(project, group_name, groups_add_member_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups/{groupName}/addMember', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::GroupsAddMemberRequest::Representation + command.request_object = groups_add_member_request_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified Group resource. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the Group resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_group(project, group_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/groups/{groupName}', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Group resource. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the Group resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Group] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Group] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_group(project, group_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/groups/{groupName}', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Group::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Group + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_group_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/groups/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Policy::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Group resource in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::Group] group_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_group(project, group_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::Group::Representation + command.request_object = group_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of groups contained within the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::GroupList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::GroupList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_groups(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/groups', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::GroupList::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::GroupList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes users from the specified group. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the group for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::GroupsRemoveMemberRequest] groups_remove_member_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_group_member(project, group_name, groups_remove_member_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups/{groupName}/removeMember', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::GroupsRemoveMemberRequest::Representation + command.request_object = groups_remove_member_request_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_group_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Policy::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_group_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns a list of authorized public keys for a specific user account. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] user + # The user account for which you want to get a list of authorized public keys. + # @param [String] instance + # The fully-qualified URL of the virtual machine requesting the view. + # @param [Boolean] login + # Whether the view was requested as part of a user-initiated login. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::LinuxGetAuthorizedKeysViewResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::LinuxGetAuthorizedKeysViewResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_linux_authorized_keys_view(project, zone, user, instance, login: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/authorizedKeysView/{user}', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::LinuxGetAuthorizedKeysViewResponse::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::LinuxGetAuthorizedKeysViewResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['user'] = user unless user.nil? + command.query['instance'] = instance unless instance.nil? + command.query['login'] = login unless login.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of user accounts for an instance within a specific project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] instance + # The fully-qualified URL of the virtual machine requesting the views. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::LinuxGetLinuxAccountViewsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::LinuxGetLinuxAccountViewsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_linux_linux_account_views(project, zone, instance, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/linuxAccountViews', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::LinuxGetLinuxAccountViewsResponse::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::LinuxGetLinuxAccountViewsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['instance'] = instance unless instance.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds a public key to the specified User resource with the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::PublicKey] public_key_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_user_public_key(project, user, public_key_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users/{user}/addPublicKey', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::PublicKey::Representation + command.request_object = public_key_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified User resource. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_user(project, user, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/users/{user}', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified User resource. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::User] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::User] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_user(project, user, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/users/{user}', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::User::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::User + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_user_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/users/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Policy::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a User resource in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::User] user_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_user(project, user_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::User::Representation + command.request_object = user_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of users contained within the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::UserList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::UserList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_users(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/users', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::UserList::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::UserList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes the specified public key from the user. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user for this request. + # @param [String] fingerprint + # The fingerprint of the public key to delete. Public keys are identified by + # their fingerprint, which is defined by RFC4716 to be the MD5 digest of the + # public key. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_user_public_key(project, user, fingerprint, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users/{user}/removePublicKey', options) + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fingerprint'] = fingerprint unless fingerprint.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_user_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::Policy::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ClouduseraccountsAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_user_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ClouduseraccountsAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ClouduseraccountsAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/clouduseraccounts_vm_beta.rb b/generated/google/apis/clouduseraccounts_vm_beta.rb new file mode 100644 index 000000000..202cb6088 --- /dev/null +++ b/generated/google/apis/clouduseraccounts_vm_beta.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/clouduseraccounts_vm_beta/service.rb' +require 'google/apis/clouduseraccounts_vm_beta/classes.rb' +require 'google/apis/clouduseraccounts_vm_beta/representations.rb' + +module Google + module Apis + # Cloud User Accounts API + # + # Creates and manages users and groups for accessing Google Compute Engine + # virtual machines. + # + # @see https://cloud.google.com/compute/docs/access/user-accounts/api/latest/ + module ClouduseraccountsVmBeta + VERSION = 'VmBeta' + REVISION = '20160316' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + + # Manage your Google Cloud User Accounts + AUTH_CLOUD_USERACCOUNTS = 'https://www.googleapis.com/auth/cloud.useraccounts' + + # View your Google Cloud User Accounts + AUTH_CLOUD_USERACCOUNTS_READONLY = 'https://www.googleapis.com/auth/cloud.useraccounts.readonly' + end + end +end diff --git a/generated/google/apis/clouduseraccounts_vm_beta/classes.rb b/generated/google/apis/clouduseraccounts_vm_beta/classes.rb new file mode 100644 index 000000000..25ccbd6ce --- /dev/null +++ b/generated/google/apis/clouduseraccounts_vm_beta/classes.rb @@ -0,0 +1,845 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ClouduseraccountsVmBeta + + # A list of authorized public keys for a user account. + class AuthorizedKeysView + include Google::Apis::Core::Hashable + + # [Output Only] The list of authorized public keys in SSH format. + # Corresponds to the JSON property `keys` + # @return [Array] + attr_accessor :keys + + # [Output Only] Whether the user has the ability to elevate on the instance that + # requested the authorized keys. + # Corresponds to the JSON property `sudoer` + # @return [Boolean] + attr_accessor :sudoer + alias_method :sudoer?, :sudoer + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @keys = args[:keys] if args.key?(:keys) + @sudoer = args[:sudoer] if args.key?(:sudoer) + end + end + + # A Group resource. + class Group + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always clouduseraccounts#group for groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A list of URLs to User resources who belong to the group. Users + # may only be members of groups in the same project. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Name of the resource; provided by the client when the resource is created. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @members = args[:members] if args.key?(:members) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class GroupList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of Group resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always clouduseraccounts#groupList for lists + # of groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class GroupsAddMemberRequest + include Google::Apis::Core::Hashable + + # Fully-qualified URLs of the User resources to add. + # Corresponds to the JSON property `users` + # @return [Array] + attr_accessor :users + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @users = args[:users] if args.key?(:users) + end + end + + # + class GroupsRemoveMemberRequest + include Google::Apis::Core::Hashable + + # Fully-qualified URLs of the User resources to remove. + # Corresponds to the JSON property `users` + # @return [Array] + attr_accessor :users + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @users = args[:users] if args.key?(:users) + end + end + + # A list of all Linux accounts for this project. This API is only used by + # Compute Engine virtual machines to get information about user accounts for a + # project or instance. Linux resources are read-only views into users and groups + # managed by the Compute Engine Accounts API. + class LinuxAccountViews + include Google::Apis::Core::Hashable + + # [Output Only] A list of all groups within a project. + # Corresponds to the JSON property `groupViews` + # @return [Array] + attr_accessor :group_views + + # [Output Only] Type of the resource. Always clouduseraccounts#linuxAccountViews + # for Linux resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A list of all users within a project. + # Corresponds to the JSON property `userViews` + # @return [Array] + attr_accessor :user_views + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @group_views = args[:group_views] if args.key?(:group_views) + @kind = args[:kind] if args.key?(:kind) + @user_views = args[:user_views] if args.key?(:user_views) + end + end + + # + class LinuxGetAuthorizedKeysViewResponse + include Google::Apis::Core::Hashable + + # A list of authorized public keys for a user account. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ClouduseraccountsVmBeta::AuthorizedKeysView] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # + class LinuxGetLinuxAccountViewsResponse + include Google::Apis::Core::Hashable + + # A list of all Linux accounts for this project. This API is only used by + # Compute Engine virtual machines to get information about user accounts for a + # project or instance. Linux resources are read-only views into users and groups + # managed by the Compute Engine Accounts API. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ClouduseraccountsVmBeta::LinuxAccountViews] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # A detailed view of a Linux group. + class LinuxGroupView + include Google::Apis::Core::Hashable + + # [Output Only] The Group ID. + # Corresponds to the JSON property `gid` + # @return [Fixnum] + attr_accessor :gid + + # [Output Only] Group name. + # Corresponds to the JSON property `groupName` + # @return [String] + attr_accessor :group_name + + # [Output Only] List of user accounts that belong to the group. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gid = args[:gid] if args.key?(:gid) + @group_name = args[:group_name] if args.key?(:group_name) + @members = args[:members] if args.key?(:members) + end + end + + # A detailed view of a Linux user account. + class LinuxUserView + include Google::Apis::Core::Hashable + + # [Output Only] The GECOS (user information) entry for this account. + # Corresponds to the JSON property `gecos` + # @return [String] + attr_accessor :gecos + + # [Output Only] User's default group ID. + # Corresponds to the JSON property `gid` + # @return [Fixnum] + attr_accessor :gid + + # [Output Only] The path to the home directory for this account. + # Corresponds to the JSON property `homeDirectory` + # @return [String] + attr_accessor :home_directory + + # [Output Only] The path to the login shell for this account. + # Corresponds to the JSON property `shell` + # @return [String] + attr_accessor :shell + + # [Output Only] User ID. + # Corresponds to the JSON property `uid` + # @return [Fixnum] + attr_accessor :uid + + # [Output Only] The username of the account. + # Corresponds to the JSON property `username` + # @return [String] + attr_accessor :username + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gecos = args[:gecos] if args.key?(:gecos) + @gid = args[:gid] if args.key?(:gid) + @home_directory = args[:home_directory] if args.key?(:home_directory) + @shell = args[:shell] if args.key?(:shell) + @uid = args[:uid] if args.key?(:uid) + @username = args[:username] if args.key?(:username) + end + end + + # An Operation resource, used to manage asynchronous API requests. + class Operation + include Google::Apis::Core::Hashable + + # [Output Only] Reserved for future use. + # Corresponds to the JSON property `clientOperationId` + # @return [String] + attr_accessor :client_operation_id + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] A textual description of the operation, which is set when the + # operation is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The time that this operation was completed. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + # Corresponds to the JSON property `error` + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation::Error] + attr_accessor :error + + # [Output Only] If the operation fails, this field contains the HTTP error + # message that was returned, such as NOT FOUND. + # Corresponds to the JSON property `httpErrorMessage` + # @return [String] + attr_accessor :http_error_message + + # [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. + # Corresponds to the JSON property `httpErrorStatusCode` + # @return [Fixnum] + attr_accessor :http_error_status_code + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The time that this operation was requested. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] Type of the resource. Always compute#operation for Operation + # resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The type of operation, such as insert, update, or delete, and so + # on. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # [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. + # Corresponds to the JSON property `progress` + # @return [Fixnum] + attr_accessor :progress + + # [Output Only] The URL of the region where the operation resides. Only + # available when performing regional operations. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The time that this operation was started by the server. This + # value is in RFC3339 text format. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # [Output Only] The status of the operation, which can be one of the following: + # PENDING, RUNNING, or DONE. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional textual description of the current status of the + # operation. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # [Output Only] The unique target ID, which identifies a specific incarnation of + # the target resource. + # Corresponds to the JSON property `targetId` + # @return [Fixnum] + attr_accessor :target_id + + # [Output Only] The URL of the resource that the operation modifies. + # Corresponds to the JSON property `targetLink` + # @return [String] + attr_accessor :target_link + + # [Output Only] User who requested the operation, for example: user@example.com. + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # [Output Only] If warning messages are generated during processing of the + # operation, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + # [Output Only] The URL of the zone where the operation resides. Only available + # when performing per-zone operations. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_operation_id = args[:client_operation_id] if args.key?(:client_operation_id) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @end_time = args[:end_time] if args.key?(:end_time) + @error = args[:error] if args.key?(:error) + @http_error_message = args[:http_error_message] if args.key?(:http_error_message) + @http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @progress = args[:progress] if args.key?(:progress) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @target_id = args[:target_id] if args.key?(:target_id) + @target_link = args[:target_link] if args.key?(:target_link) + @user = args[:user] if args.key?(:user) + @warnings = args[:warnings] if args.key?(:warnings) + @zone = args[:zone] if args.key?(:zone) + end + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of Operation resources. + class OperationList + include Google::Apis::Core::Hashable + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of Operation resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#operations for Operations + # resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # A public key for authenticating to guests. + class PublicKey + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Optional expiration timestamp. If provided, the timestamp must be in RFC3339 + # text format. If not provided, the public key never expires. + # Corresponds to the JSON property `expirationTimestamp` + # @return [String] + attr_accessor :expiration_timestamp + + # [Output Only] The fingerprint of the key is defined by RFC4716 to be the MD5 + # digest of the public key. + # Corresponds to the JSON property `fingerprint` + # @return [String] + attr_accessor :fingerprint + + # Public key text in SSH format, defined by RFC4253 section 6.6. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @expiration_timestamp = args[:expiration_timestamp] if args.key?(:expiration_timestamp) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @key = args[:key] if args.key?(:key) + end + end + + # A User resource. + class User + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] A list of URLs to Group resources who contain the user. Users + # are only members of groups in the same project. + # Corresponds to the JSON property `groups` + # @return [Array] + attr_accessor :groups + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always clouduseraccounts#user for users. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource; provided by the client when the resource is created. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Email address of account's owner. This account will be validated to make sure + # it exists. The email can belong to any domain, but it must be tied to a Google + # account. + # Corresponds to the JSON property `owner` + # @return [String] + attr_accessor :owner + + # [Output Only] Public keys that this user may use to login. + # Corresponds to the JSON property `publicKeys` + # @return [Array] + attr_accessor :public_keys + + # [Output Only] Server defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @groups = args[:groups] if args.key?(:groups) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @owner = args[:owner] if args.key?(:owner) + @public_keys = args[:public_keys] if args.key?(:public_keys) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class UserList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of User resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always clouduseraccounts#userList for lists of + # users. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + end + end +end diff --git a/generated/google/apis/clouduseraccounts_vm_beta/representations.rb b/generated/google/apis/clouduseraccounts_vm_beta/representations.rb new file mode 100644 index 000000000..e57c98fc0 --- /dev/null +++ b/generated/google/apis/clouduseraccounts_vm_beta/representations.rb @@ -0,0 +1,352 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ClouduseraccountsVmBeta + + class AuthorizedKeysView + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Group + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupsAddMemberRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupsRemoveMemberRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxAccountViews + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxGetAuthorizedKeysViewResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxGetLinuxAccountViewsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxGroupView + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LinuxUserView + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublicKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class User + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UserList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizedKeysView + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :keys, as: 'keys' + property :sudoer, as: 'sudoer' + end + end + + class Group + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + collection :members, as: 'members' + property :name, as: 'name' + property :self_link, as: 'selfLink' + end + end + + class GroupList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ClouduseraccountsVmBeta::Group, decorator: Google::Apis::ClouduseraccountsVmBeta::Group::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + end + end + + class GroupsAddMemberRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :users, as: 'users' + end + end + + class GroupsRemoveMemberRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :users, as: 'users' + end + end + + class LinuxAccountViews + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :group_views, as: 'groupViews', class: Google::Apis::ClouduseraccountsVmBeta::LinuxGroupView, decorator: Google::Apis::ClouduseraccountsVmBeta::LinuxGroupView::Representation + + property :kind, as: 'kind' + collection :user_views, as: 'userViews', class: Google::Apis::ClouduseraccountsVmBeta::LinuxUserView, decorator: Google::Apis::ClouduseraccountsVmBeta::LinuxUserView::Representation + + end + end + + class LinuxGetAuthorizedKeysViewResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ClouduseraccountsVmBeta::AuthorizedKeysView, decorator: Google::Apis::ClouduseraccountsVmBeta::AuthorizedKeysView::Representation + + end + end + + class LinuxGetLinuxAccountViewsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ClouduseraccountsVmBeta::LinuxAccountViews, decorator: Google::Apis::ClouduseraccountsVmBeta::LinuxAccountViews::Representation + + end + end + + class LinuxGroupView + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gid, as: 'gid' + property :group_name, as: 'groupName' + collection :members, as: 'members' + end + end + + class LinuxUserView + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gecos, as: 'gecos' + property :gid, as: 'gid' + property :home_directory, as: 'homeDirectory' + property :shell, as: 'shell' + property :uid, as: 'uid' + property :username, as: 'username' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_operation_id, as: 'clientOperationId' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :end_time, as: 'endTime' + property :error, as: 'error', class: Google::Apis::ClouduseraccountsVmBeta::Operation::Error, decorator: Google::Apis::ClouduseraccountsVmBeta::Operation::Error::Representation + + property :http_error_message, as: 'httpErrorMessage' + property :http_error_status_code, as: 'httpErrorStatusCode' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + property :kind, as: 'kind' + property :name, as: 'name' + property :operation_type, as: 'operationType' + property :progress, as: 'progress' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :start_time, as: 'startTime' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :target_id, :numeric_string => true, as: 'targetId' + property :target_link, as: 'targetLink' + property :user, as: 'user' + collection :warnings, as: 'warnings', class: Google::Apis::ClouduseraccountsVmBeta::Operation::Warning, decorator: Google::Apis::ClouduseraccountsVmBeta::Operation::Warning::Representation + + property :zone, as: 'zone' + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::ClouduseraccountsVmBeta::Operation::Error::Error, decorator: Google::Apis::ClouduseraccountsVmBeta::Operation::Error::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ClouduseraccountsVmBeta::Operation::Warning::Datum, decorator: Google::Apis::ClouduseraccountsVmBeta::Operation::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class OperationList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ClouduseraccountsVmBeta::Operation, decorator: Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + end + end + + class PublicKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :expiration_timestamp, as: 'expirationTimestamp' + property :fingerprint, as: 'fingerprint' + property :key, as: 'key' + end + end + + class User + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + collection :groups, as: 'groups' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :owner, as: 'owner' + collection :public_keys, as: 'publicKeys', class: Google::Apis::ClouduseraccountsVmBeta::PublicKey, decorator: Google::Apis::ClouduseraccountsVmBeta::PublicKey::Representation + + property :self_link, as: 'selfLink' + end + end + + class UserList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ClouduseraccountsVmBeta::User, decorator: Google::Apis::ClouduseraccountsVmBeta::User::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + end + end + end + end +end diff --git a/generated/google/apis/clouduseraccounts_vm_beta/service.rb b/generated/google/apis/clouduseraccounts_vm_beta/service.rb new file mode 100644 index 000000000..eb3993699 --- /dev/null +++ b/generated/google/apis/clouduseraccounts_vm_beta/service.rb @@ -0,0 +1,908 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ClouduseraccountsVmBeta + # Cloud User Accounts API + # + # Creates and manages users and groups for accessing Google Compute Engine + # virtual machines. + # + # @example + # require 'google/apis/clouduseraccounts_vm_beta' + # + # Clouduseraccounts = Google::Apis::ClouduseraccountsVmBeta # Alias the module + # service = Clouduseraccounts::CloudUserAccountsService.new + # + # @see https://cloud.google.com/compute/docs/access/user-accounts/api/latest/ + class CloudUserAccountsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'clouduseraccounts/vm_beta/projects/') + @batch_path = 'batch' + end + + # Deletes the specified operation resource. + # @param [String] project + # Project ID for this request. + # @param [String] operation + # Name of the Operations resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_global_accounts_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/operations/{operation}', options) + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the specified operation resource. + # @param [String] project + # Project ID for this request. + # @param [String] operation + # Name of the Operations resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_global_accounts_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations/{operation}', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of operation resources contained within the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::OperationList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::OperationList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_global_accounts_operations(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::OperationList::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::OperationList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds users to the specified group. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the group for this request. + # @param [Google::Apis::ClouduseraccountsVmBeta::GroupsAddMemberRequest] groups_add_member_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_group_member(project, group_name, groups_add_member_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups/{groupName}/addMember', options) + command.request_representation = Google::Apis::ClouduseraccountsVmBeta::GroupsAddMemberRequest::Representation + command.request_object = groups_add_member_request_object + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified Group resource. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the Group resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_group(project, group_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/groups/{groupName}', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Group resource. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the Group resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Group] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Group] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_group(project, group_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/groups/{groupName}', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Group::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Group + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Group resource in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ClouduseraccountsVmBeta::Group] group_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_group(project, group_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups', options) + command.request_representation = Google::Apis::ClouduseraccountsVmBeta::Group::Representation + command.request_object = group_object + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of groups contained within the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::GroupList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::GroupList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_groups(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/groups', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::GroupList::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::GroupList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes users from the specified group. + # @param [String] project + # Project ID for this request. + # @param [String] group_name + # Name of the group for this request. + # @param [Google::Apis::ClouduseraccountsVmBeta::GroupsRemoveMemberRequest] groups_remove_member_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_group_member(project, group_name, groups_remove_member_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/groups/{groupName}/removeMember', options) + command.request_representation = Google::Apis::ClouduseraccountsVmBeta::GroupsRemoveMemberRequest::Representation + command.request_object = groups_remove_member_request_object + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.params['groupName'] = group_name unless group_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns a list of authorized public keys for a specific user account. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] user + # The user account for which you want to get a list of authorized public keys. + # @param [String] instance + # The fully-qualified URL of the virtual machine requesting the view. + # @param [Boolean] login + # Whether the view was requested as part of a user-initiated login. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::LinuxGetAuthorizedKeysViewResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::LinuxGetAuthorizedKeysViewResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_linux_authorized_keys_view(project, zone, user, instance, login: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/authorizedKeysView/{user}', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::LinuxGetAuthorizedKeysViewResponse::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::LinuxGetAuthorizedKeysViewResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['user'] = user unless user.nil? + command.query['instance'] = instance unless instance.nil? + command.query['login'] = login unless login.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of user accounts for an instance within a specific project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] instance + # The fully-qualified URL of the virtual machine requesting the views. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::LinuxGetLinuxAccountViewsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::LinuxGetLinuxAccountViewsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_linux_linux_account_views(project, zone, instance, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/linuxAccountViews', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::LinuxGetLinuxAccountViewsResponse::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::LinuxGetLinuxAccountViewsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['instance'] = instance unless instance.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds a public key to the specified User resource with the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user for this request. + # @param [Google::Apis::ClouduseraccountsVmBeta::PublicKey] public_key_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_user_public_key(project, user, public_key_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users/{user}/addPublicKey', options) + command.request_representation = Google::Apis::ClouduseraccountsVmBeta::PublicKey::Representation + command.request_object = public_key_object + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified User resource. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_user(project, user, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/users/{user}', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified User resource. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::User] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::User] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_user(project, user, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/users/{user}', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::User::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::User + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a User resource in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ClouduseraccountsVmBeta::User] user_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_user(project, user_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users', options) + command.request_representation = Google::Apis::ClouduseraccountsVmBeta::User::Representation + command.request_object = user_object + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of users contained within the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter expression for filtering listed resources, in the form filter=` + # expression`. Your `expression` must be in the format: field_name + # comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use filter=name ne example-instance. + # Compute 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. + # The 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. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::UserList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::UserList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_users(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/users', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::UserList::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::UserList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes the specified public key from the user. + # @param [String] project + # Project ID for this request. + # @param [String] user + # Name of the user for this request. + # @param [String] fingerprint + # The fingerprint of the public key to delete. Public keys are identified by + # their fingerprint, which is defined by RFC4716 to be the MD5 digest of the + # public key. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClouduseraccountsVmBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClouduseraccountsVmBeta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_user_public_key(project, user, fingerprint, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/users/{user}/removePublicKey', options) + command.response_representation = Google::Apis::ClouduseraccountsVmBeta::Operation::Representation + command.response_class = Google::Apis::ClouduseraccountsVmBeta::Operation + command.params['project'] = project unless project.nil? + command.params['user'] = user unless user.nil? + command.query['fingerprint'] = fingerprint unless fingerprint.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/compute_alpha.rb b/generated/google/apis/compute_alpha.rb new file mode 100644 index 000000000..e2cd10723 --- /dev/null +++ b/generated/google/apis/compute_alpha.rb @@ -0,0 +1,49 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/compute_alpha/service.rb' +require 'google/apis/compute_alpha/classes.rb' +require 'google/apis/compute_alpha/representations.rb' + +module Google + module Apis + # Compute Engine API + # + # Creates and runs virtual machines on Google Cloud Platform. + # + # @see https://developers.google.com/compute/docs/reference/latest/ + module ComputeAlpha + VERSION = 'Alpha' + REVISION = '20170816' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View and manage your Google Compute Engine resources + AUTH_COMPUTE = 'https://www.googleapis.com/auth/compute' + + # View your Google Compute Engine resources + AUTH_COMPUTE_READONLY = 'https://www.googleapis.com/auth/compute.readonly' + + # Manage your data and permissions in Google Cloud Storage + AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control' + + # View your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only' + + # Manage your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write' + end + end +end diff --git a/generated/google/apis/compute_alpha/classes.rb b/generated/google/apis/compute_alpha/classes.rb new file mode 100644 index 000000000..5b0cbd855 --- /dev/null +++ b/generated/google/apis/compute_alpha/classes.rb @@ -0,0 +1,23796 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ComputeAlpha + + # A specification of the type and number of accelerator cards attached to the + # instance. + class AcceleratorConfig + include Google::Apis::Core::Hashable + + # The number of the guest accelerator cards exposed to this instance. + # Corresponds to the JSON property `acceleratorCount` + # @return [Fixnum] + attr_accessor :accelerator_count + + # Full or partial URL of the accelerator type resource to expose to this + # instance. + # Corresponds to the JSON property `acceleratorType` + # @return [String] + attr_accessor :accelerator_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @accelerator_count = args[:accelerator_count] if args.key?(:accelerator_count) + @accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type) + end + end + + # An Accelerator Type resource. + class AcceleratorType + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Deprecation status for a public resource. + # Corresponds to the JSON property `deprecated` + # @return [Google::Apis::ComputeAlpha::DeprecationStatus] + attr_accessor :deprecated + + # [Output Only] An optional textual description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The type of the resource. Always compute#acceleratorType for + # accelerator types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Maximum accelerator cards allowed per instance. + # Corresponds to the JSON property `maximumCardsPerInstance` + # @return [Fixnum] + attr_accessor :maximum_cards_per_instance + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined fully-qualified URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The name of the zone where the accelerator type resides, such as + # us-central1-a. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @maximum_cards_per_instance = args[:maximum_cards_per_instance] if args.key?(:maximum_cards_per_instance) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class AcceleratorTypeAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of AcceleratorTypesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList + # for aggregated lists of accelerator types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of accelerator types. + class AcceleratorTypeList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of AcceleratorType resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#acceleratorTypeList for lists + # of accelerator types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AcceleratorTypeList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class AcceleratorTypesScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of accelerator types contained in this scope. + # Corresponds to the JSON property `acceleratorTypes` + # @return [Array] + attr_accessor :accelerator_types + + # [Output Only] An informational warning that appears when the accelerator types + # list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AcceleratorTypesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @accelerator_types = args[:accelerator_types] if args.key?(:accelerator_types) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] An informational warning that appears when the accelerator types + # list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # An access configuration attached to an instance's network interface. Only one + # access config per instance is supported. + class AccessConfig + include Google::Apis::Core::Hashable + + # [Output Only] Type of the resource. Always compute#accessConfig for access + # configs. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of this access configuration. The default and recommended name is + # External NAT but you can use any arbitrary string you would like. For example, + # My external IP or Network Access. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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. + # Corresponds to the JSON property `natIP` + # @return [String] + attr_accessor :nat_ip + + # This signifies the networking tier used for configuring this access + # configuration and can only take the following values: PREMIUM, STANDARD. + # If an AccessConfig is specified without a valid external IP address, an + # ephemeral IP will be created with this networkTier. + # If an AccessConfig with a valid external IP address is specified, it must + # match that of the networkTier associated with the Address resource owning that + # IP. + # Corresponds to the JSON property `networkTier` + # @return [String] + attr_accessor :network_tier + + # [Output Only] The public DNS domain name for the instance. + # Corresponds to the JSON property `publicDnsName` + # @return [String] + attr_accessor :public_dns_name + + # The DNS domain name for the public PTR record. This field can only be set when + # the set_public_ptr field is enabled. + # Corresponds to the JSON property `publicPtrDomainName` + # @return [String] + attr_accessor :public_ptr_domain_name + + # Specifies whether a public DNS ?A? record should be created for the external + # IP address of this access configuration. + # Corresponds to the JSON property `setPublicDns` + # @return [Boolean] + attr_accessor :set_public_dns + alias_method :set_public_dns?, :set_public_dns + + # Specifies whether a public DNS ?PTR? record should be created to map the + # external IP address of the instance to a DNS domain name. + # Corresponds to the JSON property `setPublicPtr` + # @return [Boolean] + attr_accessor :set_public_ptr + alias_method :set_public_ptr?, :set_public_ptr + + # The type of configuration. The default and only option is ONE_TO_ONE_NAT. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @nat_ip = args[:nat_ip] if args.key?(:nat_ip) + @network_tier = args[:network_tier] if args.key?(:network_tier) + @public_dns_name = args[:public_dns_name] if args.key?(:public_dns_name) + @public_ptr_domain_name = args[:public_ptr_domain_name] if args.key?(:public_ptr_domain_name) + @set_public_dns = args[:set_public_dns] if args.key?(:set_public_dns) + @set_public_ptr = args[:set_public_ptr] if args.key?(:set_public_ptr) + @type = args[:type] if args.key?(:type) + end + end + + # A reserved address resource. + class Address + include Google::Apis::Core::Hashable + + # The static external IP address represented by this resource. + # Corresponds to the JSON property `address` + # @return [String] + attr_accessor :address + + # The type of address to reserve. If unspecified, defaults to EXTERNAL. + # Corresponds to the JSON property `addressType` + # @return [String] + attr_accessor :address_type + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The IP Version that will be used by this address. Valid options are IPV4 or + # IPV6. This can only be specified for a global address. + # Corresponds to the JSON property `ipVersion` + # @return [String] + attr_accessor :ip_version + + # [Output Only] Type of the resource. Always compute#address for addresses. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # A fingerprint for the labels being applied to this Address, which is + # essentially a hash of the labels set used for optimistic locking. The + # fingerprint is initially generated by Compute Engine and changes after every + # request to modify or update labels. You must always provide an up-to-date + # fingerprint hash in order to update or change labels. + # To see the latest fingerprint, make a get() request to retrieve an Address. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this Address resource. These can be later modified by the + # setLabels method. Each label key/value must comply with RFC1035. Label values + # may be empty. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # This signifies the networking tier used for configuring this Address and can + # only take the following values: PREMIUM , STANDARD. + # If this field is not specified, it is assumed to be PREMIUM. + # Corresponds to the JSON property `networkTier` + # @return [String] + attr_accessor :network_tier + + # [Output Only] URL of the region where the regional address resides. This field + # is not applicable to global addresses. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [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. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # For external addresses, this field should not be used. + # The URL of the subnetwork in which to reserve the address. If an IP address is + # specified, it must be within the subnetwork's IP range. + # Corresponds to the JSON property `subnetwork` + # @return [String] + attr_accessor :subnetwork + + # [Output Only] The URLs of the resources that are using this address. + # Corresponds to the JSON property `users` + # @return [Array] + attr_accessor :users + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @address = args[:address] if args.key?(:address) + @address_type = args[:address_type] if args.key?(:address_type) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @ip_version = args[:ip_version] if args.key?(:ip_version) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @network_tier = args[:network_tier] if args.key?(:network_tier) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @subnetwork = args[:subnetwork] if args.key?(:subnetwork) + @users = args[:users] if args.key?(:users) + end + end + + # + class AddressAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of AddressesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#addressAggregatedList for + # aggregated lists of addresses. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AddressAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of addresses. + class AddressList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Address resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#addressList for lists of + # addresses. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AddressList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class AddressesScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of addresses contained in this scope. + # Corresponds to the JSON property `addresses` + # @return [Array] + attr_accessor :addresses + + # [Output Only] Informational warning which replaces the list of addresses when + # the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AddressesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @addresses = args[:addresses] if args.key?(:addresses) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of addresses when + # the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # An alias IP range attached to an instance's network interface. + class AliasIpRange + include Google::Apis::Core::Hashable + + # The IP CIDR range represented by this alias IP range. This IP CIDR range must + # belong to the specified subnetwork and cannot contain IP addresses reserved by + # system or used by other network interfaces. This range may be a single IP + # address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10. + # 1.2.0/24). + # Corresponds to the JSON property `ipCidrRange` + # @return [String] + attr_accessor :ip_cidr_range + + # Optional subnetwork secondary range name specifying the secondary range from + # which to allocate the IP CIDR range for this alias IP range. If left + # unspecified, the primary range of the subnetwork will be used. + # Corresponds to the JSON property `subnetworkRangeName` + # @return [String] + attr_accessor :subnetwork_range_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range) + @subnetwork_range_name = args[:subnetwork_range_name] if args.key?(:subnetwork_range_name) + end + end + + # An instance-attached disk resource. + class AttachedDisk + include Google::Apis::Core::Hashable + + # Specifies whether the disk will be auto-deleted when the instance is deleted ( + # but not when the disk is detached from the instance). + # Corresponds to the JSON property `autoDelete` + # @return [Boolean] + attr_accessor :auto_delete + alias_method :auto_delete?, :auto_delete + + # Indicates that this is a boot disk. The virtual machine will use the first + # partition of the disk for its root filesystem. + # Corresponds to the JSON property `boot` + # @return [Boolean] + attr_accessor :boot + alias_method :boot?, :boot + + # 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. + # If 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. + # Corresponds to the JSON property `deviceName` + # @return [String] + attr_accessor :device_name + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `diskEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :disk_encryption_key + + # The size of the disk in base-2 GB. This supersedes disk_size_gb in + # InitializeParams. + # Corresponds to the JSON property `diskSizeGb` + # @return [Fixnum] + attr_accessor :disk_size_gb + + # 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. + # Corresponds to the JSON property `index` + # @return [Fixnum] + attr_accessor :index + + # [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. + # This property is mutually exclusive with the source property; you can only + # define one or the other, but not both. + # Corresponds to the JSON property `initializeParams` + # @return [Google::Apis::ComputeAlpha::AttachedDiskInitializeParams] + attr_accessor :initialize_params + + # 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. + # Corresponds to the JSON property `interface` + # @return [String] + attr_accessor :interface + + # [Output Only] Type of the resource. Always compute#attachedDisk for attached + # disks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Any valid publicly visible licenses. + # Corresponds to the JSON property `licenses` + # @return [Array] + attr_accessor :licenses + + # 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. + # Corresponds to the JSON property `mode` + # @return [String] + attr_accessor :mode + + # Specifies a valid partial or full URL to an existing Persistent Disk resource. + # When creating a new instance, one of initializeParams.sourceImage or disks. + # source is required. + # If desired, you can also attach existing non-root persistent disks using this + # property. This field is only applicable for persistent disks. + # Note that for InstanceTemplate, specify the disk name, not the URL for the + # disk. + # Corresponds to the JSON property `source` + # @return [String] + attr_accessor :source + + # Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, + # the default is PERSISTENT. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_delete = args[:auto_delete] if args.key?(:auto_delete) + @boot = args[:boot] if args.key?(:boot) + @device_name = args[:device_name] if args.key?(:device_name) + @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key) + @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) + @index = args[:index] if args.key?(:index) + @initialize_params = args[:initialize_params] if args.key?(:initialize_params) + @interface = args[:interface] if args.key?(:interface) + @kind = args[:kind] if args.key?(:kind) + @licenses = args[:licenses] if args.key?(:licenses) + @mode = args[:mode] if args.key?(:mode) + @source = args[:source] if args.key?(:source) + @type = args[:type] if args.key?(:type) + end + end + + # [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. + # This property is mutually exclusive with the source property; you can only + # define one or the other, but not both. + class AttachedDiskInitializeParams + include Google::Apis::Core::Hashable + + # Specifies the disk name. If not specified, the default is to use the name of + # the instance. + # Corresponds to the JSON property `diskName` + # @return [String] + attr_accessor :disk_name + + # Specifies the size of the disk in base-2 GB. + # Corresponds to the JSON property `diskSizeGb` + # @return [Fixnum] + attr_accessor :disk_size_gb + + # [Deprecated] Storage type of the disk. + # Corresponds to the JSON property `diskStorageType` + # @return [String] + attr_accessor :disk_storage_type + + # 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: + # https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd- + # standard + # Other values include pd-ssd and local-ssd. If you define this field, you can + # provide either the full or partial URL. For example, the following are valid + # values: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/ + # diskType + # - projects/project/zones/zone/diskTypes/diskType + # - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the + # name of the disk type, not URL. + # Corresponds to the JSON property `diskType` + # @return [String] + attr_accessor :disk_type + + # The source image to create this disk. When creating a new instance, one of + # initializeParams.sourceImage or disks.source is required. + # To 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: + # projects/debian-cloud/global/images/family/debian-8 + # Alternatively, use a specific version of a public operating system image: + # projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD + # To create a disk with a private image that you created, specify the image name + # in the following format: + # global/images/my-private-image + # You 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: + # global/images/family/my-private-family + # If the source image is deleted later, this field will not be set. + # Corresponds to the JSON property `sourceImage` + # @return [String] + attr_accessor :source_image + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `sourceImageEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :source_image_encryption_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disk_name = args[:disk_name] if args.key?(:disk_name) + @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) + @disk_storage_type = args[:disk_storage_type] if args.key?(:disk_storage_type) + @disk_type = args[:disk_type] if args.key?(:disk_type) + @source_image = args[:source_image] if args.key?(:source_image) + @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key) + end + end + + # Specifies the audit configuration for a service. The configuration determines + # which permission types are logged, and what identities, if any, are exempted + # from logging. An AuditConfig must have one or more AuditLogConfigs. + # If there are AuditConfigs for both `allServices` and a specific service, the + # union of the two AuditConfigs is used for that service: the log_types + # specified in each AuditConfig are enabled, and the exempted_members in each + # AuditConfig are exempted. + # Example Policy with multiple AuditConfigs: + # ` "audit_configs": [ ` "service": "allServices" "audit_log_configs": [ ` " + # log_type": "DATA_READ", "exempted_members": [ "user:foo@gmail.com" ] `, ` " + # log_type": "DATA_WRITE", `, ` "log_type": "ADMIN_READ", ` ] `, ` "service": " + # fooservice.googleapis.com" "audit_log_configs": [ ` "log_type": "DATA_READ", `, + # ` "log_type": "DATA_WRITE", "exempted_members": [ "user:bar@gmail.com" ] ` ] ` + # ] ` + # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + # logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail. + # com from DATA_WRITE logging. + class AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # Specifies a service that will be enabled for audit logging. For example, ` + # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special + # value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. Example: + # ` "audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ " + # user:foo@gmail.com" ] `, ` "log_type": "DATA_WRITE", ` ] ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail. + # com from DATA_READ logging. + class AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of permission. + # Follows the same format of [Binding.members][]. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Authorization-related information used by Cloud Audit Logging. + class AuthorizationLoggingOptions + include Google::Apis::Core::Hashable + + # The type of the permission that was checked. + # Corresponds to the JSON property `permissionType` + # @return [String] + attr_accessor :permission_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permission_type = args[:permission_type] if args.key?(:permission_type) + end + end + + # 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. + class Autoscaler + include Google::Apis::Core::Hashable + + # Cloud Autoscaler policy. + # Corresponds to the JSON property `autoscalingPolicy` + # @return [Google::Apis::ComputeAlpha::AutoscalingPolicy] + attr_accessor :autoscaling_policy + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#autoscaler for autoscalers. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] URL of the region where the instance group resides (for + # autoscalers living in regional scope). + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The status of the autoscaler configuration. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] Human-readable details about the current state of the autoscaler. + # Read the documentation for Commonly returned status messages for examples of + # status messages you might encounter. + # Corresponds to the JSON property `statusDetails` + # @return [Array] + attr_accessor :status_details + + # URL of the managed instance group that this autoscaler will scale. + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # [Output Only] URL of the zone where the instance group resides (for + # autoscalers living in zonal scope). + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @autoscaling_policy = args[:autoscaling_policy] if args.key?(:autoscaling_policy) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @status_details = args[:status_details] if args.key?(:status_details) + @target = args[:target] if args.key?(:target) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class AutoscalerAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of AutoscalersScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#autoscalerAggregatedList for + # aggregated lists of autoscalers. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AutoscalerAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of Autoscaler resources. + class AutoscalerList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Autoscaler resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#autoscalerList for lists of + # autoscalers. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AutoscalerList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class AutoscalerStatusDetails + include Google::Apis::Core::Hashable + + # The status message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + # The type of error returned. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @message = args[:message] if args.key?(:message) + @type = args[:type] if args.key?(:type) + end + end + + # + class AutoscalersScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of autoscalers contained in this scope. + # Corresponds to the JSON property `autoscalers` + # @return [Array] + attr_accessor :autoscalers + + # [Output Only] Informational warning which replaces the list of autoscalers + # when the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::AutoscalersScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @autoscalers = args[:autoscalers] if args.key?(:autoscalers) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of autoscalers + # when the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Cloud Autoscaler policy. + class AutoscalingPolicy + include Google::Apis::Core::Hashable + + # 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. + # Virtual 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. + # Corresponds to the JSON property `coolDownPeriodSec` + # @return [Fixnum] + attr_accessor :cool_down_period_sec + + # CPU utilization policy. + # Corresponds to the JSON property `cpuUtilization` + # @return [Google::Apis::ComputeAlpha::AutoscalingPolicyCpuUtilization] + attr_accessor :cpu_utilization + + # Configuration parameters of autoscaling based on a custom metric. + # Corresponds to the JSON property `customMetricUtilizations` + # @return [Array] + attr_accessor :custom_metric_utilizations + + # Configuration parameters of autoscaling based on load balancing. + # Corresponds to the JSON property `loadBalancingUtilization` + # @return [Google::Apis::ComputeAlpha::AutoscalingPolicyLoadBalancingUtilization] + attr_accessor :load_balancing_utilization + + # 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. + # Corresponds to the JSON property `maxNumReplicas` + # @return [Fixnum] + attr_accessor :max_num_replicas + + # 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. + # Corresponds to the JSON property `minNumReplicas` + # @return [Fixnum] + attr_accessor :min_num_replicas + + # Defines operating mode for this policy. + # Corresponds to the JSON property `mode` + # @return [String] + attr_accessor :mode + + # Configuration parameters of autoscaling based on queuing system. + # Corresponds to the JSON property `queueBasedScaling` + # @return [Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScaling] + attr_accessor :queue_based_scaling + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cool_down_period_sec = args[:cool_down_period_sec] if args.key?(:cool_down_period_sec) + @cpu_utilization = args[:cpu_utilization] if args.key?(:cpu_utilization) + @custom_metric_utilizations = args[:custom_metric_utilizations] if args.key?(:custom_metric_utilizations) + @load_balancing_utilization = args[:load_balancing_utilization] if args.key?(:load_balancing_utilization) + @max_num_replicas = args[:max_num_replicas] if args.key?(:max_num_replicas) + @min_num_replicas = args[:min_num_replicas] if args.key?(:min_num_replicas) + @mode = args[:mode] if args.key?(:mode) + @queue_based_scaling = args[:queue_based_scaling] if args.key?(:queue_based_scaling) + end + end + + # CPU utilization policy. + class AutoscalingPolicyCpuUtilization + include Google::Apis::Core::Hashable + + # 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. + # If 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. + # If 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. + # Corresponds to the JSON property `utilizationTarget` + # @return [Float] + attr_accessor :utilization_target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @utilization_target = args[:utilization_target] if args.key?(:utilization_target) + end + end + + # Custom utilization metric policy. + class AutoscalingPolicyCustomMetricUtilization + include Google::Apis::Core::Hashable + + # A filter string, compatible with a Stackdriver Monitoring filter string for + # TimeSeries.list API call. This filter is used to select a specific TimeSeries + # for the purpose of autoscaling and to determine whether the metric is + # exporting per-instance or global data. + # For the filter to be valid for autoscaling purposes, the following rules apply: + # + # - You can only use the AND operator for joining selectors. + # - You can only use direct equality comparison operator (=) without any + # functions for each selector. + # - You can specify the metric in both the filter string and in the metric field. + # However, if specified in both places, the metric must be identical. + # - The monitored resource type determines what kind of values are expected for + # the metric. If it is a gce_instance, the autoscaler expects the metric to + # include a separate TimeSeries for each instance in a group. In such a case, + # you cannot filter on resource labels. + # If the resource type is any other value, the autoscaler expects this metric to + # contain values that apply to the entire autoscaled instance group and resource + # label filtering can be performed to point autoscaler at the correct TimeSeries + # to scale upon. This is / called a global metric for the purpose of autoscaling. + # If not specified, the type defaults to gce_instance. + # You should provide a filter that is selective enough to pick just one + # TimeSeries for the autoscaled group or for each of the instances (if you are + # using gce_instance resource type). If multiple TimeSeries are returned upon + # the query execution, the autoscaler will sum their respective values to obtain + # its scaling value. + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + + # The identifier (type) of the Stackdriver 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 have a value type of INT64 or DOUBLE. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + # If scaling is based on a global metric value that represents the total amount + # of work to be done or resource usage, set this value to an amount assigned for + # a single instance of the scaled group. Autoscaler will keep the number of + # instances proportional to the value of this metric, the metric itself should + # not change value due to group resizing. + # A good metric to use with the target is for example pubsub.googleapis.com/ + # subscription/num_undelivered_messages or a custom metric exporting the total + # number of requests coming to your instances. + # A bad example would be a metric exporting an average or median latency, since + # this value can't include a chunk assignable to a single instance, it could be + # better used with utilization_target instead. + # Corresponds to the JSON property `singleInstanceAssignment` + # @return [Float] + attr_accessor :single_instance_assignment + + # The target value of the metric that autoscaler should maintain. This must be a + # positive value. + # For example, a good metric to use as a utilization_target is compute. + # googleapis.com/instance/network/received_bytes_count. The autoscaler will work + # to keep this value constant for each of the instances. + # Corresponds to the JSON property `utilizationTarget` + # @return [Float] + attr_accessor :utilization_target + + # Defines how target utilization value is expressed for a Stackdriver Monitoring + # metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, + # the default is GAUGE. + # Corresponds to the JSON property `utilizationTargetType` + # @return [String] + attr_accessor :utilization_target_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @filter = args[:filter] if args.key?(:filter) + @metric = args[:metric] if args.key?(:metric) + @single_instance_assignment = args[:single_instance_assignment] if args.key?(:single_instance_assignment) + @utilization_target = args[:utilization_target] if args.key?(:utilization_target) + @utilization_target_type = args[:utilization_target_type] if args.key?(:utilization_target_type) + end + end + + # Configuration parameters of autoscaling based on load balancing. + class AutoscalingPolicyLoadBalancingUtilization + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `utilizationTarget` + # @return [Float] + attr_accessor :utilization_target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @utilization_target = args[:utilization_target] if args.key?(:utilization_target) + end + end + + # Configuration parameters of autoscaling based on queuing system. + class AutoscalingPolicyQueueBasedScaling + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `acceptableBacklogPerInstance` + # @return [Float] + attr_accessor :acceptable_backlog_per_instance + + # Configuration parameters for scaling based on Cloud Pub/Sub subscription queue. + # Corresponds to the JSON property `cloudPubSub` + # @return [Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScalingCloudPubSub] + attr_accessor :cloud_pub_sub + + # 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. + # Corresponds to the JSON property `singleWorkerThroughputPerSec` + # @return [Float] + attr_accessor :single_worker_throughput_per_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @acceptable_backlog_per_instance = args[:acceptable_backlog_per_instance] if args.key?(:acceptable_backlog_per_instance) + @cloud_pub_sub = args[:cloud_pub_sub] if args.key?(:cloud_pub_sub) + @single_worker_throughput_per_sec = args[:single_worker_throughput_per_sec] if args.key?(:single_worker_throughput_per_sec) + end + end + + # Configuration parameters for scaling based on Cloud Pub/Sub subscription queue. + class AutoscalingPolicyQueueBasedScalingCloudPubSub + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + # 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. + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @subscription = args[:subscription] if args.key?(:subscription) + @topic = args[:topic] if args.key?(:topic) + end + end + + # Message containing information of one individual backend. + class Backend + include Google::Apis::Core::Hashable + + # 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). + # For Internal Load Balancing, the default and only supported mode is CONNECTION. + # Corresponds to the JSON property `balancingMode` + # @return [String] + attr_accessor :balancing_mode + + # 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]. + # This cannot be used for internal load balancing. + # Corresponds to the JSON property `capacityScaler` + # @return [Float] + attr_accessor :capacity_scaler + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # This field designates whether this is a failover backend. More than one + # failover backend can be configured for a given BackendService. + # Corresponds to the JSON property `failover` + # @return [Boolean] + attr_accessor :failover + alias_method :failover?, :failover + + # The fully-qualified URL of a Instance Group resource. This instance group + # defines the list of instances that serve traffic. Member virtual machine + # instances from each instance group must live in the same zone as the instance + # group itself. No two backends in a backend service are allowed to use same + # Instance Group resource. + # Note that you must specify an Instance Group resource using the fully- + # qualified URL, rather than a partial URL. + # When the BackendService has load balancing scheme INTERNAL, the instance group + # must be within the same region as the BackendService. + # Corresponds to the JSON property `group` + # @return [String] + attr_accessor :group + + # 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. + # This cannot be used for internal load balancing. + # Corresponds to the JSON property `maxConnections` + # @return [Fixnum] + attr_accessor :max_connections + + # 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. + # This cannot be used for internal load balancing. + # Corresponds to the JSON property `maxConnectionsPerInstance` + # @return [Fixnum] + attr_accessor :max_connections_per_instance + + # 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. + # This cannot be used for internal load balancing. + # Corresponds to the JSON property `maxRate` + # @return [Fixnum] + attr_accessor :max_rate + + # 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. + # This cannot be used for internal load balancing. + # Corresponds to the JSON property `maxRatePerInstance` + # @return [Float] + attr_accessor :max_rate_per_instance + + # 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]. + # This cannot be used for internal load balancing. + # Corresponds to the JSON property `maxUtilization` + # @return [Float] + attr_accessor :max_utilization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @balancing_mode = args[:balancing_mode] if args.key?(:balancing_mode) + @capacity_scaler = args[:capacity_scaler] if args.key?(:capacity_scaler) + @description = args[:description] if args.key?(:description) + @failover = args[:failover] if args.key?(:failover) + @group = args[:group] if args.key?(:group) + @max_connections = args[:max_connections] if args.key?(:max_connections) + @max_connections_per_instance = args[:max_connections_per_instance] if args.key?(:max_connections_per_instance) + @max_rate = args[:max_rate] if args.key?(:max_rate) + @max_rate_per_instance = args[:max_rate_per_instance] if args.key?(:max_rate_per_instance) + @max_utilization = args[:max_utilization] if args.key?(:max_utilization) + end + end + + # A BackendBucket resource. This resource defines a Cloud Storage bucket. + class BackendBucket + include Google::Apis::Core::Hashable + + # Cloud Storage bucket name. + # Corresponds to the JSON property `bucketName` + # @return [String] + attr_accessor :bucket_name + + # Message containing Cloud CDN configuration for a backend bucket. + # Corresponds to the JSON property `cdnPolicy` + # @return [Google::Apis::ComputeAlpha::BackendBucketCdnPolicy] + attr_accessor :cdn_policy + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # If true, enable Cloud CDN for this BackendBucket. + # Corresponds to the JSON property `enableCdn` + # @return [Boolean] + attr_accessor :enable_cdn + alias_method :enable_cdn?, :enable_cdn + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Type of the resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_name = args[:bucket_name] if args.key?(:bucket_name) + @cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # Message containing Cloud CDN configuration for a backend bucket. + class BackendBucketCdnPolicy + include Google::Apis::Core::Hashable + + # Number of seconds up to which the response to a signed URL request will be + # cached in the CDN. After this time period, the Signed URL will be revalidated + # before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN + # will internally act as though all responses from this bucket had a ?Cache- + # Control: public, max-age=[TTL]? header, regardless of any existing Cache- + # Control header. The actual headers served in responses will not be altered. + # Corresponds to the JSON property `signedUrlCacheMaxAgeSec` + # @return [Fixnum] + attr_accessor :signed_url_cache_max_age_sec + + # [Output Only] Names of the keys currently configured for Cloud CDN Signed URL + # on this backend bucket. + # Corresponds to the JSON property `signedUrlKeyNames` + # @return [Array] + attr_accessor :signed_url_key_names + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec) + @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names) + end + end + + # Contains a list of BackendBucket resources. + class BackendBucketList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of BackendBucket resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::BackendBucketList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A BackendService resource. This resource defines a group of backend virtual + # machines and their serving capacity. + class BackendService + include Google::Apis::Core::Hashable + + # 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. + # When the load balancing scheme is INTERNAL, this field is not used. + # Corresponds to the JSON property `affinityCookieTtlSec` + # @return [Fixnum] + attr_accessor :affinity_cookie_ttl_sec + + # The list of backends that serve this BackendService. + # Corresponds to the JSON property `backends` + # @return [Array] + attr_accessor :backends + + # Message containing Cloud CDN configuration for a backend service. + # Corresponds to the JSON property `cdnPolicy` + # @return [Google::Apis::ComputeAlpha::BackendServiceCdnPolicy] + attr_accessor :cdn_policy + + # Message containing connection draining configuration. + # Corresponds to the JSON property `connectionDraining` + # @return [Google::Apis::ComputeAlpha::ConnectionDraining] + attr_accessor :connection_draining + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Headers that the HTTP/S load balancer should add to proxied requests. + # Corresponds to the JSON property `customRequestHeaders` + # @return [Array] + attr_accessor :custom_request_headers + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # If true, enable Cloud CDN for this BackendService. + # When the load balancing scheme is INTERNAL, this field is not used. + # Corresponds to the JSON property `enableCDN` + # @return [Boolean] + attr_accessor :enable_cdn + alias_method :enable_cdn?, :enable_cdn + + # The value of the field must be in [0, 1]. If set, 'backends[].failover' must + # be set. They together define the fallback behavior of the primary backend: if + # the ratio of the healthy VMs in the primary backend is at or below this number, + # traffic arriving at the load-balanced IP will be directed to the failover + # backend. + # In case where 'failoverRatio' is not set or all the VMs in the backup backend + # are unhealthy, the traffic will be directed back to the primary backend in the + # "force" mode, where traffic will be spread to the healthy VMs with the best + # effort, or to all VMs when no VM is healthy. + # This field is only used with l4 load balancing. + # Corresponds to the JSON property `failoverRatio` + # @return [Float] + attr_accessor :failover_ratio + + # 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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for + # health checking this BackendService. Currently at most one health check can be + # specified, and a health check is required for Compute Engine backend services. + # A health check must not be specified for App Engine backend and Cloud Function + # backend. + # For internal load balancing, a URL to a HealthCheck resource must be specified + # instead. + # Corresponds to the JSON property `healthChecks` + # @return [Array] + attr_accessor :health_checks + + # Identity-Aware Proxy + # Corresponds to the JSON property `iap` + # @return [Google::Apis::ComputeAlpha::BackendServiceIap] + attr_accessor :iap + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of resource. Always compute#backendService for backend + # services. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Indicates whether the backend service will be used with internal or external + # load balancing. A backend service created for one type of load balancing + # cannot be used with the other. Possible values are INTERNAL and EXTERNAL. + # Corresponds to the JSON property `loadBalancingScheme` + # @return [String] + attr_accessor :load_balancing_scheme + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Deprecated in favor of portName. The TCP port to connect on the backend. The + # default value is 80. + # This cannot be used for internal load balancing. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # 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. + # When the load balancing scheme is INTERNAL, this field is not used. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + # The protocol this BackendService uses to communicate with backends. + # Possible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP. + # For internal load balancing, the possible values are TCP and UDP, and the + # default is TCP. + # Corresponds to the JSON property `protocol` + # @return [String] + attr_accessor :protocol + + # [Output Only] URL of the region where the regional backend service resides. + # This field is not applicable to global backend services. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] The resource URL for the security policy associated with this + # backend service. + # Corresponds to the JSON property `securityPolicy` + # @return [String] + attr_accessor :security_policy + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Type of session affinity to use. The default is NONE. + # When the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or + # GENERATED_COOKIE. + # When the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, + # CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. + # When the protocol is UDP, this field is not used. + # Corresponds to the JSON property `sessionAffinity` + # @return [String] + attr_accessor :session_affinity + + # How many seconds to wait for the backend before considering it a failed + # request. Default is 30 seconds. + # Corresponds to the JSON property `timeoutSec` + # @return [Fixnum] + attr_accessor :timeout_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @affinity_cookie_ttl_sec = args[:affinity_cookie_ttl_sec] if args.key?(:affinity_cookie_ttl_sec) + @backends = args[:backends] if args.key?(:backends) + @cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy) + @connection_draining = args[:connection_draining] if args.key?(:connection_draining) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers) + @description = args[:description] if args.key?(:description) + @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn) + @failover_ratio = args[:failover_ratio] if args.key?(:failover_ratio) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @health_checks = args[:health_checks] if args.key?(:health_checks) + @iap = args[:iap] if args.key?(:iap) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme) + @name = args[:name] if args.key?(:name) + @port = args[:port] if args.key?(:port) + @port_name = args[:port_name] if args.key?(:port_name) + @protocol = args[:protocol] if args.key?(:protocol) + @region = args[:region] if args.key?(:region) + @security_policy = args[:security_policy] if args.key?(:security_policy) + @self_link = args[:self_link] if args.key?(:self_link) + @session_affinity = args[:session_affinity] if args.key?(:session_affinity) + @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec) + end + end + + # Contains a list of BackendServicesScopedList. + class BackendServiceAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of BackendServicesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::BackendServiceAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Message containing Cloud CDN configuration for a backend service. + class BackendServiceCdnPolicy + include Google::Apis::Core::Hashable + + # Message containing what to include in the cache key for a request for Cloud + # CDN. + # Corresponds to the JSON property `cacheKeyPolicy` + # @return [Google::Apis::ComputeAlpha::CacheKeyPolicy] + attr_accessor :cache_key_policy + + # Number of seconds up to which the response to a signed URL request will be + # cached in the CDN. After this time period, the Signed URL will be revalidated + # before being served. Defaults to 1hr (3600s). If this field is set, Cloud CDN + # will internally act as though all responses from this backend had a ?Cache- + # Control: public, max-age=[TTL]? header, regardless of any existing Cache- + # Control header. The actual headers served in responses will not be altered. + # Corresponds to the JSON property `signedUrlCacheMaxAgeSec` + # @return [Fixnum] + attr_accessor :signed_url_cache_max_age_sec + + # [Output Only] Names of the keys currently configured for Cloud CDN Signed URL + # on this backend service. + # Corresponds to the JSON property `signedUrlKeyNames` + # @return [Array] + attr_accessor :signed_url_key_names + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy) + @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec) + @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names) + end + end + + # + class BackendServiceGroupHealth + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `healthStatus` + # @return [Array] + attr_accessor :health_status + + # [Output Only] Type of resource. Always compute#backendServiceGroupHealth for + # the health of backend services. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_status = args[:health_status] if args.key?(:health_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # Identity-Aware Proxy + class BackendServiceIap + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # + # Corresponds to the JSON property `oauth2ClientId` + # @return [String] + attr_accessor :oauth2_client_id + + # + # Corresponds to the JSON property `oauth2ClientSecret` + # @return [String] + attr_accessor :oauth2_client_secret + + # [Output Only] SHA256 hash value for the field oauth2_client_secret above. + # Corresponds to the JSON property `oauth2ClientSecretSha256` + # @return [String] + attr_accessor :oauth2_client_secret_sha256 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + @oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id) + @oauth2_client_secret = args[:oauth2_client_secret] if args.key?(:oauth2_client_secret) + @oauth2_client_secret_sha256 = args[:oauth2_client_secret_sha256] if args.key?(:oauth2_client_secret_sha256) + end + end + + # Contains a list of BackendService resources. + class BackendServiceList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of BackendService resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#backendServiceList for lists of + # backend services. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::BackendServiceList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class BackendServiceReference + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `backendService` + # @return [String] + attr_accessor :backend_service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @backend_service = args[:backend_service] if args.key?(:backend_service) + end + end + + # + class BackendServicesScopedList + include Google::Apis::Core::Hashable + + # List of BackendServices contained in this scope. + # Corresponds to the JSON property `backendServices` + # @return [Array] + attr_accessor :backend_services + + # Informational warning which replaces the list of backend services when the + # list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::BackendServicesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @backend_services = args[:backend_services] if args.key?(:backend_services) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of backend services when the + # list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # Represents an expression text. Example: + # title: "User account presence" description: "Determines whether the request + # has a user account" expression: "size(request.user) > 0" + # Corresponds to the JSON property `condition` + # @return [Google::Apis::ComputeAlpha::Expr] + attr_accessor :condition + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor` + # , or `roles/owner`. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # + class CacheInvalidationRule + include Google::Apis::Core::Hashable + + # If set, this invalidation rule will only apply to requests with a Host header + # matching host. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @host = args[:host] if args.key?(:host) + @path = args[:path] if args.key?(:path) + end + end + + # Message containing what to include in the cache key for a request for Cloud + # CDN. + class CacheKeyPolicy + include Google::Apis::Core::Hashable + + # If true, requests to different hosts will be cached separately. + # Corresponds to the JSON property `includeHost` + # @return [Boolean] + attr_accessor :include_host + alias_method :include_host?, :include_host + + # If true, http and https requests will be cached separately. + # Corresponds to the JSON property `includeProtocol` + # @return [Boolean] + attr_accessor :include_protocol + alias_method :include_protocol?, :include_protocol + + # If true, include query string parameters in the cache key according to + # query_string_whitelist and query_string_blacklist. If neither is set, the + # entire query string will be included. If false, the query string will be + # excluded from the cache key entirely. + # Corresponds to the JSON property `includeQueryString` + # @return [Boolean] + attr_accessor :include_query_string + alias_method :include_query_string?, :include_query_string + + # Names of query string parameters to exclude in cache keys. All other + # parameters will be included. Either specify query_string_whitelist or + # query_string_blacklist, not both. '&' and '=' will be percent encoded and not + # treated as delimiters. + # Corresponds to the JSON property `queryStringBlacklist` + # @return [Array] + attr_accessor :query_string_blacklist + + # Names of query string parameters to include in cache keys. All other + # parameters will be excluded. Either specify query_string_whitelist or + # query_string_blacklist, not both. '&' and '=' will be percent encoded and not + # treated as delimiters. + # Corresponds to the JSON property `queryStringWhitelist` + # @return [Array] + attr_accessor :query_string_whitelist + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @include_host = args[:include_host] if args.key?(:include_host) + @include_protocol = args[:include_protocol] if args.key?(:include_protocol) + @include_query_string = args[:include_query_string] if args.key?(:include_query_string) + @query_string_blacklist = args[:query_string_blacklist] if args.key?(:query_string_blacklist) + @query_string_whitelist = args[:query_string_whitelist] if args.key?(:query_string_whitelist) + end + end + + # Represents a Commitment resource. Creating a Commitment resource means that + # you are purchasing a committed use contract with an explicit start and end + # time. You can create commitments based on vCPUs and memory usage and receive + # discounted rates. For full details, read Signing Up for Committed Use + # Discounts. + # Committed use discounts are subject to Google Cloud Platform's Service + # Specific Terms. By purchasing a committed use discount, you agree to these + # terms. Committed use discounts will not renew, so you must purchase a new + # commitment to continue receiving discounts. + class Commitment + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Commitment end time in RFC3339 text format. + # Corresponds to the JSON property `endTimestamp` + # @return [String] + attr_accessor :end_timestamp + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#commitment for commitments. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The plan for this commitment, which determines duration and discount rate. The + # currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 + # years). + # Corresponds to the JSON property `plan` + # @return [String] + attr_accessor :plan + + # [Output Only] URL of the region where this commitment may be used. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # List of commitment amounts for particular resources. Note that VCPU and MEMORY + # resource commitments must occur together. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Commitment start time in RFC3339 text format. + # Corresponds to the JSON property `startTimestamp` + # @return [String] + attr_accessor :start_timestamp + + # [Output Only] Status of the commitment with regards to eventual expiration ( + # each commitment has an end date defined). One of the following values: + # NOT_YET_ACTIVE, ACTIVE, EXPIRED. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional, human-readable explanation of the status. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @end_timestamp = args[:end_timestamp] if args.key?(:end_timestamp) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @plan = args[:plan] if args.key?(:plan) + @region = args[:region] if args.key?(:region) + @resources = args[:resources] if args.key?(:resources) + @self_link = args[:self_link] if args.key?(:self_link) + @start_timestamp = args[:start_timestamp] if args.key?(:start_timestamp) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + end + end + + # + class CommitmentAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of CommitmentsScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#commitmentAggregatedList for + # aggregated lists of commitments. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::CommitmentAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of Commitment resources. + class CommitmentList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Commitment resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#commitmentList for lists of + # commitments. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::CommitmentList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class CommitmentsScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of commitments contained in this scope. + # Corresponds to the JSON property `commitments` + # @return [Array] + attr_accessor :commitments + + # [Output Only] Informational warning which replaces the list of commitments + # when the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::CommitmentsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @commitments = args[:commitments] if args.key?(:commitments) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of commitments + # when the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A condition to be met. + class Condition + include Google::Apis::Core::Hashable + + # Trusted attributes supplied by the IAM system. + # Corresponds to the JSON property `iam` + # @return [String] + attr_accessor :iam + + # An operator to apply the subject with. + # Corresponds to the JSON property `op` + # @return [String] + attr_accessor :op + + # Trusted attributes discharged by the service. + # Corresponds to the JSON property `svc` + # @return [String] + attr_accessor :svc + + # Trusted attributes supplied by any service that owns resources and uses the + # IAM system for access control. + # Corresponds to the JSON property `sys` + # @return [String] + attr_accessor :sys + + # DEPRECATED. Use 'values' instead. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + # The objects of the condition. This is mutually exclusive with 'value'. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @iam = args[:iam] if args.key?(:iam) + @op = args[:op] if args.key?(:op) + @svc = args[:svc] if args.key?(:svc) + @sys = args[:sys] if args.key?(:sys) + @value = args[:value] if args.key?(:value) + @values = args[:values] if args.key?(:values) + end + end + + # Message containing connection draining configuration. + class ConnectionDraining + include Google::Apis::Core::Hashable + + # Time for which instance will be drained (not accept new connections, but still + # work to finish started). + # Corresponds to the JSON property `drainingTimeoutSec` + # @return [Fixnum] + attr_accessor :draining_timeout_sec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @draining_timeout_sec = args[:draining_timeout_sec] if args.key?(:draining_timeout_sec) + end + end + + # Represents a customer-supplied encryption key + class CustomerEncryptionKey + include Google::Apis::Core::Hashable + + # The name of the encryption key that is stored in Google Cloud KMS. + # Corresponds to the JSON property `kmsKeyName` + # @return [String] + attr_accessor :kms_key_name + + # Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 + # base64 to either encrypt or decrypt this resource. + # Corresponds to the JSON property `rawKey` + # @return [String] + attr_accessor :raw_key + + # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied + # encryption key to either encrypt or decrypt this resource. + # The key must meet the following requirements before you can provide it to + # Compute Engine: + # - The key is wrapped using a RSA public key certificate provided by Google. + # - After being wrapped, the key must be encoded in RFC 4648 base64 encoding. + # Get the RSA public key certificate provided by Google at: + # https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem + # Corresponds to the JSON property `rsaEncryptedKey` + # @return [String] + attr_accessor :rsa_encrypted_key + + # [Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer- + # supplied encryption key that protects this resource. + # Corresponds to the JSON property `sha256` + # @return [String] + attr_accessor :sha256 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name) + @raw_key = args[:raw_key] if args.key?(:raw_key) + @rsa_encrypted_key = args[:rsa_encrypted_key] if args.key?(:rsa_encrypted_key) + @sha256 = args[:sha256] if args.key?(:sha256) + end + end + + # + class CustomerEncryptionKeyProtectedDisk + include Google::Apis::Core::Hashable + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `diskEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :disk_encryption_key + + # Specifies a valid partial or full URL to an existing Persistent Disk resource. + # This field is only applicable for persistent disks. + # Corresponds to the JSON property `source` + # @return [String] + attr_accessor :source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key) + @source = args[:source] if args.key?(:source) + end + end + + # Deprecation status for a public resource. + class DeprecationStatus + include Google::Apis::Core::Hashable + + # An optional RFC3339 timestamp on or after which the state of this resource is + # intended to change to DELETED. This is only informational and the status will + # not change unless the client explicitly changes it. + # Corresponds to the JSON property `deleted` + # @return [String] + attr_accessor :deleted + + # An optional RFC3339 timestamp on or after which the state of this resource is + # intended to change to DEPRECATED. This is only informational and the status + # will not change unless the client explicitly changes it. + # Corresponds to the JSON property `deprecated` + # @return [String] + attr_accessor :deprecated + + # An optional RFC3339 timestamp on or after which the state of this resource is + # intended to change to OBSOLETE. This is only informational and the status will + # not change unless the client explicitly changes it. + # Corresponds to the JSON property `obsolete` + # @return [String] + attr_accessor :obsolete + + # 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. + # Corresponds to the JSON property `replacement` + # @return [String] + attr_accessor :replacement + + # 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. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deleted = args[:deleted] if args.key?(:deleted) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @obsolete = args[:obsolete] if args.key?(:obsolete) + @replacement = args[:replacement] if args.key?(:replacement) + @state = args[:state] if args.key?(:state) + end + end + + # A Disk resource. + class Disk + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `diskEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :disk_encryption_key + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#disk for disks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # 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. + # To see the latest fingerprint, make a get() request to retrieve a disk. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this disk. These can be later modified by the setLabels + # method. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # [Output Only] Last attach timestamp in RFC3339 text format. + # Corresponds to the JSON property `lastAttachTimestamp` + # @return [String] + attr_accessor :last_attach_timestamp + + # [Output Only] Last detach timestamp in RFC3339 text format. + # Corresponds to the JSON property `lastDetachTimestamp` + # @return [String] + attr_accessor :last_detach_timestamp + + # Integer license codes indicating which licenses are attached to this disk. + # Corresponds to the JSON property `licenseCodes` + # @return [Array] + attr_accessor :license_codes + + # Any applicable publicly visible licenses. + # Corresponds to the JSON property `licenses` + # @return [Array] + attr_accessor :licenses + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Internal use only. + # Corresponds to the JSON property `options` + # @return [String] + attr_accessor :options + + # Physical block size of the persistent disk, in bytes. If not present in a + # request, a default value is used. Initially only 4096 is supported, but other + # powers of two may be added. If an unsupported value is requested, the error + # message will list the supported values, but even a supported value may be + # allowed for only some projects. + # Corresponds to the JSON property `physicalBlockSizeBytes` + # @return [Fixnum] + attr_accessor :physical_block_size_bytes + + # [Output Only] URL of the region where the disk resides. Only applicable for + # regional resources. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # URLs of the zones where the disk should be replicated to. Only applicable for + # regional resources. + # Corresponds to the JSON property `replicaZones` + # @return [Array] + attr_accessor :replica_zones + + # [Output Only] Server-defined fully-qualified URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # 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. + # If you specify this field along with sourceImage or sourceSnapshot, the value + # of sizeGb must not be less than the size of the sourceImage or the size of the + # snapshot. Acceptable values are 1 to 65536, inclusive. + # Corresponds to the JSON property `sizeGb` + # @return [Fixnum] + attr_accessor :size_gb + + # The source image used to create this disk. If the source image is deleted, + # this field will not be set. + # To 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: + # projects/debian-cloud/global/images/family/debian-8 + # Alternatively, use a specific version of a public operating system image: + # projects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD + # To create a disk with a private image that you created, specify the image name + # in the following format: + # global/images/my-private-image + # You 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: + # global/images/family/my-private-family + # Corresponds to the JSON property `sourceImage` + # @return [String] + attr_accessor :source_image + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `sourceImageEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :source_image_encryption_key + + # [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. + # Corresponds to the JSON property `sourceImageId` + # @return [String] + attr_accessor :source_image_id + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/global/snapshots/ + # snapshot + # - projects/project/global/snapshots/snapshot + # - global/snapshots/snapshot + # Corresponds to the JSON property `sourceSnapshot` + # @return [String] + attr_accessor :source_snapshot + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `sourceSnapshotEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :source_snapshot_encryption_key + + # [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. + # Corresponds to the JSON property `sourceSnapshotId` + # @return [String] + attr_accessor :source_snapshot_id + + # [Output Only] The status of disk creation. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Deprecated] Storage type of the persistent disk. + # Corresponds to the JSON property `storageType` + # @return [String] + attr_accessor :storage_type + + # URL of the disk type resource describing which disk type to use to create the + # disk. Provide this when creating the disk. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # [Output Only] Links to the users of the disk (attached instances) in form: + # project/zones/zone/instances/instance + # Corresponds to the JSON property `users` + # @return [Array] + attr_accessor :users + + # [Output Only] URL of the zone where the disk resides. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @last_attach_timestamp = args[:last_attach_timestamp] if args.key?(:last_attach_timestamp) + @last_detach_timestamp = args[:last_detach_timestamp] if args.key?(:last_detach_timestamp) + @license_codes = args[:license_codes] if args.key?(:license_codes) + @licenses = args[:licenses] if args.key?(:licenses) + @name = args[:name] if args.key?(:name) + @options = args[:options] if args.key?(:options) + @physical_block_size_bytes = args[:physical_block_size_bytes] if args.key?(:physical_block_size_bytes) + @region = args[:region] if args.key?(:region) + @replica_zones = args[:replica_zones] if args.key?(:replica_zones) + @self_link = args[:self_link] if args.key?(:self_link) + @size_gb = args[:size_gb] if args.key?(:size_gb) + @source_image = args[:source_image] if args.key?(:source_image) + @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key) + @source_image_id = args[:source_image_id] if args.key?(:source_image_id) + @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot) + @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key) + @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id) + @status = args[:status] if args.key?(:status) + @storage_type = args[:storage_type] if args.key?(:storage_type) + @type = args[:type] if args.key?(:type) + @users = args[:users] if args.key?(:users) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class DiskAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of DisksScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#diskAggregatedList for + # aggregated lists of persistent disks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::DiskAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A list of Disk resources. + class DiskList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Disk resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#diskList for lists of disks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::DiskList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class DiskMoveRequest + include Google::Apis::Core::Hashable + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone + # - projects/project/zones/zone + # - zones/zone + # Corresponds to the JSON property `destinationZone` + # @return [String] + attr_accessor :destination_zone + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk + # - projects/project/zones/zone/disks/disk + # - zones/zone/disks/disk + # Corresponds to the JSON property `targetDisk` + # @return [String] + attr_accessor :target_disk + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination_zone = args[:destination_zone] if args.key?(:destination_zone) + @target_disk = args[:target_disk] if args.key?(:target_disk) + end + end + + # A DiskType resource. + class DiskType + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] Server-defined default disk size in GB. + # Corresponds to the JSON property `defaultDiskSizeGb` + # @return [Fixnum] + attr_accessor :default_disk_size_gb + + # Deprecation status for a public resource. + # Corresponds to the JSON property `deprecated` + # @return [Google::Apis::ComputeAlpha::DeprecationStatus] + attr_accessor :deprecated + + # [Output Only] An optional description of this resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#diskType for disk types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] An optional textual description of the valid disk size, such as " + # 10GB-10TB". + # Corresponds to the JSON property `validDiskSize` + # @return [String] + attr_accessor :valid_disk_size + + # [Output Only] URL of the zone where the disk type resides. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @default_disk_size_gb = args[:default_disk_size_gb] if args.key?(:default_disk_size_gb) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @valid_disk_size = args[:valid_disk_size] if args.key?(:valid_disk_size) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class DiskTypeAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of DiskTypesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#diskTypeAggregatedList. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::DiskTypeAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of disk types. + class DiskTypeList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of DiskType resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#diskTypeList for disk types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::DiskTypeList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class DiskTypesScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of disk types contained in this scope. + # Corresponds to the JSON property `diskTypes` + # @return [Array] + attr_accessor :disk_types + + # [Output Only] Informational warning which replaces the list of disk types when + # the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::DiskTypesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disk_types = args[:disk_types] if args.key?(:disk_types) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of disk types when + # the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class DisksResizeRequest + include Google::Apis::Core::Hashable + + # The new size of the persistent disk, which is specified in GB. + # Corresponds to the JSON property `sizeGb` + # @return [Fixnum] + attr_accessor :size_gb + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @size_gb = args[:size_gb] if args.key?(:size_gb) + end + end + + # + class DisksScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of disks contained in this scope. + # Corresponds to the JSON property `disks` + # @return [Array] + attr_accessor :disks + + # [Output Only] Informational warning which replaces the list of disks when the + # list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::DisksScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disks = args[:disks] if args.key?(:disks) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of disks when the + # list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class DistributionPolicy + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `zones` + # @return [Array] + attr_accessor :zones + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @zones = args[:zones] if args.key?(:zones) + end + end + + # + class DistributionPolicyZoneConfiguration + include Google::Apis::Core::Hashable + + # URL of the zone where managed instance group is spawning instances (for + # regional resources). Zone has to belong to the region where managed instance + # group is located. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @zone = args[:zone] if args.key?(:zone) + end + end + + # Represents an expression text. Example: + # title: "User account presence" description: "Determines whether the request + # has a user account" expression: "size(request.user) > 0" + class Expr + include Google::Apis::Core::Hashable + + # An optional description of the expression. This is a longer text which + # describes the expression, e.g. when hovered over it in a UI. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Textual representation of an expression in Common Expression Language syntax. + # The application context of the containing message determines which well-known + # feature set of CEL is supported. + # Corresponds to the JSON property `expression` + # @return [String] + attr_accessor :expression + + # An optional string indicating the location of the expression for error + # reporting, e.g. a file name and a position in the file. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # An optional title for the expression, i.e. a short string describing its + # purpose. This can be used e.g. in UIs which allow to enter the expression. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @expression = args[:expression] if args.key?(:expression) + @location = args[:location] if args.key?(:location) + @title = args[:title] if args.key?(:title) + end + end + + # Represents a Firewall resource. + class Firewall + include Google::Apis::Core::Hashable + + # The list of ALLOW rules specified by this firewall. Each rule specifies a + # protocol and port-range tuple that describes a permitted connection. + # Corresponds to the JSON property `allowed` + # @return [Array] + attr_accessor :allowed + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # The list of DENY rules specified by this firewall. Each rule specifies a + # protocol and port-range tuple that describes a permitted connection. + # Corresponds to the JSON property `denied` + # @return [Array] + attr_accessor :denied + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # If destination ranges are specified, the firewall will apply only to traffic + # that has destination IP address in these ranges. These ranges must be + # expressed in CIDR format. Only IPv4 is supported. + # Corresponds to the JSON property `destinationRanges` + # @return [Array] + attr_accessor :destination_ranges + + # Direction of traffic to which this firewall applies; default is INGRESS. Note: + # For INGRESS traffic, it is NOT supported to specify destinationRanges; For + # EGRESS traffic, it is NOT supported to specify sourceRanges OR sourceTags. + # Corresponds to the JSON property `direction` + # @return [String] + attr_accessor :direction + + # This field denotes whether to enable logging for a particular firewall rule. + # If logging is enabled, logs will be exported to the configured export + # destination for all firewall logs in the network. Logs may be exported to + # BigQuery or Pub/Sub. + # Corresponds to the JSON property `enableLogging` + # @return [Boolean] + attr_accessor :enable_logging + alias_method :enable_logging?, :enable_logging + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#firewall for firewall rules. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # URL of the network resource for this firewall rule. If not specified when + # creating a firewall rule, the default network is used: + # global/networks/default + # If 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: + # - https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my- + # network + # - projects/myproject/global/networks/my-network + # - global/networks/default + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # Priority for this rule. This is an integer between 0 and 65535, both inclusive. + # When not specified, the value assumed is 1000. Relative priorities determine + # precedence of conflicting rules. Lower value of priority implies higher + # precedence (eg, a rule with priority 0 has higher precedence than a rule with + # priority 1). DENY rules take precedence over ALLOW rules having equal priority. + # Corresponds to the JSON property `priority` + # @return [Fixnum] + attr_accessor :priority + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # If source ranges are specified, the firewall will apply only to traffic that + # has source IP address in these ranges. These ranges must be expressed in CIDR + # format. One or both of sourceRanges and sourceTags may be set. If both + # properties are set, the firewall will apply to traffic that has source IP + # address within sourceRanges OR the source IP that belongs to a tag listed in + # the sourceTags property. The connection does not need to match both properties + # for the firewall to apply. Only IPv4 is supported. + # Corresponds to the JSON property `sourceRanges` + # @return [Array] + attr_accessor :source_ranges + + # If source service accounts are specified, the firewall will apply only to + # traffic originating from an instance with a service account in this list. + # Source service accounts cannot be used to control traffic to an instance's + # external IP address because service accounts are associated with an instance, + # not an IP address. sourceRanges can be set at the same time as + # sourceServiceAccounts. If both are set, the firewall will apply to traffic + # that has source IP address within sourceRanges OR the source IP belongs to an + # instance with service account listed in sourceServiceAccount. The connection + # does not need to match both properties for the firewall to apply. + # sourceServiceAccounts cannot be used at the same time as sourceTags or + # targetTags. + # Corresponds to the JSON property `sourceServiceAccounts` + # @return [Array] + attr_accessor :source_service_accounts + + # If source tags are specified, the firewall rule applies only to traffic with + # source IPs that match the primary network interfaces of VM instances that have + # the tag and are in the same VPC network. Source tags cannot be used to control + # traffic to an instance's external IP address, it only applies to traffic + # between instances in the same virtual network. Because tags are associated + # with instances, not IP addresses. One or both of sourceRanges and sourceTags + # may be set. If both properties are set, the firewall will apply to traffic + # that has source IP address within sourceRanges OR the source IP that belongs + # to a tag listed in the sourceTags property. The connection does not need to + # match both properties for the firewall to apply. + # Corresponds to the JSON property `sourceTags` + # @return [Array] + attr_accessor :source_tags + + # A list of service accounts indicating sets of instances located in the network + # that may make network connections as specified in allowed[]. + # targetServiceAccounts cannot be used at the same time as targetTags or + # sourceTags. If neither targetServiceAccounts nor targetTags are specified, the + # firewall rule applies to all instances on the specified network. + # Corresponds to the JSON property `targetServiceAccounts` + # @return [Array] + attr_accessor :target_service_accounts + + # 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. + # Corresponds to the JSON property `targetTags` + # @return [Array] + attr_accessor :target_tags + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allowed = args[:allowed] if args.key?(:allowed) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @denied = args[:denied] if args.key?(:denied) + @description = args[:description] if args.key?(:description) + @destination_ranges = args[:destination_ranges] if args.key?(:destination_ranges) + @direction = args[:direction] if args.key?(:direction) + @enable_logging = args[:enable_logging] if args.key?(:enable_logging) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @priority = args[:priority] if args.key?(:priority) + @self_link = args[:self_link] if args.key?(:self_link) + @source_ranges = args[:source_ranges] if args.key?(:source_ranges) + @source_service_accounts = args[:source_service_accounts] if args.key?(:source_service_accounts) + @source_tags = args[:source_tags] if args.key?(:source_tags) + @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts) + @target_tags = args[:target_tags] if args.key?(:target_tags) + end + + # + class Allowed + include Google::Apis::Core::Hashable + + # The IP protocol to which this rule applies. The protocol type is required when + # creating a firewall rule. This value can either be one of the following well + # known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP + # protocol number. + # Corresponds to the JSON property `IPProtocol` + # @return [String] + attr_accessor :ip_protocol + + # 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. + # Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. + # Corresponds to the JSON property `ports` + # @return [Array] + attr_accessor :ports + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_protocol = args[:ip_protocol] if args.key?(:ip_protocol) + @ports = args[:ports] if args.key?(:ports) + end + end + + # + class Denied + include Google::Apis::Core::Hashable + + # The IP protocol to which this rule applies. The protocol type is required when + # creating a firewall rule. This value can either be one of the following well + # known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP + # protocol number. + # Corresponds to the JSON property `IPProtocol` + # @return [String] + attr_accessor :ip_protocol + + # 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. + # Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. + # Corresponds to the JSON property `ports` + # @return [Array] + attr_accessor :ports + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_protocol = args[:ip_protocol] if args.key?(:ip_protocol) + @ports = args[:ports] if args.key?(:ports) + end + end + end + + # Contains a list of firewalls. + class FirewallList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Firewall resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#firewallList for lists of + # firewalls. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::FirewallList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Encapsulates numeric value that can be either absolute or relative. + class FixedOrPercent + include Google::Apis::Core::Hashable + + # [Output Only] Absolute value calculated based on mode: mode = fixed -> + # calculated = fixed = percent -> calculated = ceiling(percent/100 * base_value) + # Corresponds to the JSON property `calculated` + # @return [Fixnum] + attr_accessor :calculated + + # fixed must be non-negative. + # Corresponds to the JSON property `fixed` + # @return [Fixnum] + attr_accessor :fixed + + # percent must belong to [0, 100]. + # Corresponds to the JSON property `percent` + # @return [Fixnum] + attr_accessor :percent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @calculated = args[:calculated] if args.key?(:calculated) + @fixed = args[:fixed] if args.key?(:fixed) + @percent = args[:percent] if args.key?(:percent) + end + end + + # A ForwardingRule resource. A ForwardingRule resource specifies which pool of + # target virtual machines to forward a packet to if it matches the given [ + # IPAddress, IPProtocol, ports] tuple. + class ForwardingRule + include Google::Apis::Core::Hashable + + # The 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. By default, this field is empty and an ephemeral IPv4 address from the + # same scope (global or regional) will be assigned. A regional forwarding rule + # supports IPv4 only. A global forwarding rule supports either IPv4 or IPv6. + # When 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. + # Corresponds to the JSON property `IPAddress` + # @return [String] + attr_accessor :ip_address + + # The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, + # AH, SCTP or ICMP. + # When the load balancing scheme is INTERNAL, only TCP and UDP are valid. + # Corresponds to the JSON property `IPProtocol` + # @return [String] + attr_accessor :ip_protocol + + # This field is not used for external load balancing. + # For internal load balancing, this field identifies the BackendService resource + # to receive the matched traffic. + # Corresponds to the JSON property `backendService` + # @return [String] + attr_accessor :backend_service + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The IP Version that will be used by this forwarding rule. Valid options are + # IPV4 or IPV6. This can only be specified for a global forwarding rule. + # Corresponds to the JSON property `ipVersion` + # @return [String] + attr_accessor :ip_version + + # [Output Only] Type of the resource. Always compute#forwardingRule for + # Forwarding Rule resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # A fingerprint for the labels being applied to this resource, which is + # essentially a hash of the labels set used for optimistic locking. The + # fingerprint is initially generated by Compute Engine and changes after every + # request to modify or update labels. You must always provide an up-to-date + # fingerprint hash in order to update or change labels. + # To see the latest fingerprint, make a get() request to retrieve a + # ForwardingRule. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this resource. These can be later modified by the setLabels + # method. Each label key/value pair must comply with RFC1035. Label values may + # be empty. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # 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) + # Corresponds to the JSON property `loadBalancingScheme` + # @return [String] + attr_accessor :load_balancing_scheme + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # This field is not used for external load balancing. + # For 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. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # This signifies the networking tier used for configuring this load balancer and + # can only take the following values: PREMIUM , STANDARD. + # For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For + # GlobalForwardingRule, the valid value is PREMIUM. + # If this field is not specified, it is assumed to be PREMIUM. If IPAddress is + # specified, this value must be equal to the networkTier of the Address. + # Corresponds to the JSON property `networkTier` + # @return [String] + attr_accessor :network_tier + + # This field is used along with the target field for TargetHttpProxy, + # TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, + # TargetInstance. + # 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. + # Some types of forwarding target have constraints on the acceptable ports: + # - TargetHttpProxy: 80, 8080 + # - TargetHttpsProxy: 443 + # - TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, + # 5222 + # - TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, + # 5222 + # - TargetVpnGateway: 500, 4500 + # - + # Corresponds to the JSON property `portRange` + # @return [String] + attr_accessor :port_range + + # This field is used along with the backend_service field for internal load + # balancing. + # When 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. + # You may specify a maximum of up to 5 ports. + # Corresponds to the JSON property `ports` + # @return [Array] + attr_accessor :ports + + # [Output Only] URL of the region where the regional forwarding rule resides. + # This field is not applicable to global forwarding rules. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # An optional prefix to the service name for this Forwarding Rule. If specified, + # will be the first label of the fully qualified service name. + # The label must be 1-63 characters long, and comply with RFC1035. Specifically, + # the label must be 1-63 characters long and match the regular expression [a-z]([ + # -a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # This field is only used for internal load balancing. + # Corresponds to the JSON property `serviceLabel` + # @return [String] + attr_accessor :service_label + + # [Output Only] The internal fully qualified service name for this Forwarding + # Rule. + # This field is only used for internal load balancing. + # Corresponds to the JSON property `serviceName` + # @return [String] + attr_accessor :service_name + + # This field is not used for external load balancing. + # For internal load balancing, this field identifies the subnetwork that the + # load balanced IP should belong to for this Forwarding Rule. + # If 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. + # Corresponds to the JSON property `subnetwork` + # @return [String] + attr_accessor :subnetwork + + # The URL of the target resource to receive the matched traffic. For regional + # forwarding rules, this target must live in the same region as the forwarding + # rule. For global forwarding rules, this target must be a global load balancing + # resource. The forwarded traffic must be of a type appropriate to the target + # object. + # This field is not used for internal load balancing. + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @ip_protocol = args[:ip_protocol] if args.key?(:ip_protocol) + @backend_service = args[:backend_service] if args.key?(:backend_service) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @ip_version = args[:ip_version] if args.key?(:ip_version) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @network_tier = args[:network_tier] if args.key?(:network_tier) + @port_range = args[:port_range] if args.key?(:port_range) + @ports = args[:ports] if args.key?(:ports) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @service_label = args[:service_label] if args.key?(:service_label) + @service_name = args[:service_name] if args.key?(:service_name) + @subnetwork = args[:subnetwork] if args.key?(:subnetwork) + @target = args[:target] if args.key?(:target) + end + end + + # + class ForwardingRuleAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of ForwardingRulesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#forwardingRuleAggregatedList + # for lists of forwarding rules. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of ForwardingRule resources. + class ForwardingRuleList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of ForwardingRule resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::ForwardingRuleList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class ForwardingRuleReference + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `forwardingRule` + # @return [String] + attr_accessor :forwarding_rule + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule) + end + end + + # + class ForwardingRulesScopedList + include Google::Apis::Core::Hashable + + # List of forwarding rules contained in this scope. + # Corresponds to the JSON property `forwardingRules` + # @return [Array] + attr_accessor :forwarding_rules + + # Informational warning which replaces the list of forwarding rules when the + # list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::ForwardingRulesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of forwarding rules when the + # list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class GlobalSetLabelsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # 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": ""). + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + end + end + + # A guest attributes entry. + class GuestAttributes + include Google::Apis::Core::Hashable + + # [Output Only] Type of the resource. Always compute#guestAttributes for guest + # attributes entry. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The key to search for. + # Corresponds to the JSON property `variableKey` + # @return [String] + attr_accessor :variable_key + + # [Output Only] The value found for the requested key. + # Corresponds to the JSON property `variableValue` + # @return [String] + attr_accessor :variable_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @self_link = args[:self_link] if args.key?(:self_link) + @variable_key = args[:variable_key] if args.key?(:variable_key) + @variable_value = args[:variable_value] if args.key?(:variable_value) + end + end + + # Guest OS features. + class GuestOsFeature + include Google::Apis::Core::Hashable + + # The type of supported feature. Currently only VIRTIO_SCSI_MULTIQUEUE is + # supported. For newer Windows images, the server might also populate this + # property with the value WINDOWS to indicate that this is a Windows image. This + # value is purely informational and does not enable or disable any features. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @type = args[:type] if args.key?(:type) + end + end + + # + class Http2HealthCheck + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # The TCP port number for the health check request. The default value is 443. + # Valid values are 1 through 65535. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # Port name as defined in InstanceGroup#NamedPort#name. If both port and + # port_name are defined, port takes precedence. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + # Specifies the type of proxy header to append before sending data to the + # backend, either NONE or PROXY_V1. The default is NONE. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + # The request path of the HTTP/2 health check request. The default value is /. + # Corresponds to the JSON property `requestPath` + # @return [String] + attr_accessor :request_path + + # The string to match anywhere in the first 1024 bytes of the response body. If + # left empty (the default value), the status code determines health. The + # response data can only be ASCII. + # Corresponds to the JSON property `response` + # @return [String] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @host = args[:host] if args.key?(:host) + @port = args[:port] if args.key?(:port) + @port_name = args[:port_name] if args.key?(:port_name) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + @request_path = args[:request_path] if args.key?(:request_path) + @response = args[:response] if args.key?(:response) + end + end + + # + class HttpHealthCheck + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # The TCP port number for the health check request. The default value is 80. + # Valid values are 1 through 65535. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # Port name as defined in InstanceGroup#NamedPort#name. If both port and + # port_name are defined, port takes precedence. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + # Specifies the type of proxy header to append before sending data to the + # backend, either NONE or PROXY_V1. The default is NONE. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + # The request path of the HTTP health check request. The default value is /. + # Corresponds to the JSON property `requestPath` + # @return [String] + attr_accessor :request_path + + # The string to match anywhere in the first 1024 bytes of the response body. If + # left empty (the default value), the status code determines health. The + # response data can only be ASCII. + # Corresponds to the JSON property `response` + # @return [String] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @host = args[:host] if args.key?(:host) + @port = args[:port] if args.key?(:port) + @port_name = args[:port_name] if args.key?(:port_name) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + @request_path = args[:request_path] if args.key?(:request_path) + @response = args[:response] if args.key?(:response) + end + end + + # + class HttpsHealthCheck + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # The TCP port number for the health check request. The default value is 443. + # Valid values are 1 through 65535. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # Port name as defined in InstanceGroup#NamedPort#name. If both port and + # port_name are defined, port takes precedence. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + # Specifies the type of proxy header to append before sending data to the + # backend, either NONE or PROXY_V1. The default is NONE. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + # The request path of the HTTPS health check request. The default value is /. + # Corresponds to the JSON property `requestPath` + # @return [String] + attr_accessor :request_path + + # The string to match anywhere in the first 1024 bytes of the response body. If + # left empty (the default value), the status code determines health. The + # response data can only be ASCII. + # Corresponds to the JSON property `response` + # @return [String] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @host = args[:host] if args.key?(:host) + @port = args[:port] if args.key?(:port) + @port_name = args[:port_name] if args.key?(:port_name) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + @request_path = args[:request_path] if args.key?(:request_path) + @response = args[:response] if args.key?(:response) + end + end + + # An HealthCheck resource. This resource defines a template for how individual + # virtual machines should be checked for health, via one of the supported + # protocols. + class HealthCheck + include Google::Apis::Core::Hashable + + # How often (in seconds) to send a health check. The default value is 5 seconds. + # Corresponds to the JSON property `checkIntervalSec` + # @return [Fixnum] + attr_accessor :check_interval_sec + + # [Output Only] Creation timestamp in 3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # A so-far unhealthy instance will be marked healthy after this many consecutive + # successes. The default value is 2. + # Corresponds to the JSON property `healthyThreshold` + # @return [Fixnum] + attr_accessor :healthy_threshold + + # + # Corresponds to the JSON property `http2HealthCheck` + # @return [Google::Apis::ComputeAlpha::Http2HealthCheck] + attr_accessor :http2_health_check + + # + # Corresponds to the JSON property `httpHealthCheck` + # @return [Google::Apis::ComputeAlpha::HttpHealthCheck] + attr_accessor :http_health_check + + # + # Corresponds to the JSON property `httpsHealthCheck` + # @return [Google::Apis::ComputeAlpha::HttpsHealthCheck] + attr_accessor :https_health_check + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Type of the resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # + # Corresponds to the JSON property `sslHealthCheck` + # @return [Google::Apis::ComputeAlpha::SslHealthCheck] + attr_accessor :ssl_health_check + + # + # Corresponds to the JSON property `tcpHealthCheck` + # @return [Google::Apis::ComputeAlpha::TcpHealthCheck] + attr_accessor :tcp_health_check + + # 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. + # Corresponds to the JSON property `timeoutSec` + # @return [Fixnum] + attr_accessor :timeout_sec + + # Specifies the type of the healthCheck, either TCP, SSL, HTTP or HTTPS. If not + # specified, the default is TCP. Exactly one of the protocol-specific health + # check field must be specified, which must match type field. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # + # Corresponds to the JSON property `udpHealthCheck` + # @return [Google::Apis::ComputeAlpha::UdpHealthCheck] + attr_accessor :udp_health_check + + # A so-far healthy instance will be marked unhealthy after this many consecutive + # failures. The default value is 2. + # Corresponds to the JSON property `unhealthyThreshold` + # @return [Fixnum] + attr_accessor :unhealthy_threshold + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval_sec = args[:check_interval_sec] if args.key?(:check_interval_sec) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold) + @http2_health_check = args[:http2_health_check] if args.key?(:http2_health_check) + @http_health_check = args[:http_health_check] if args.key?(:http_health_check) + @https_health_check = args[:https_health_check] if args.key?(:https_health_check) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @ssl_health_check = args[:ssl_health_check] if args.key?(:ssl_health_check) + @tcp_health_check = args[:tcp_health_check] if args.key?(:tcp_health_check) + @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec) + @type = args[:type] if args.key?(:type) + @udp_health_check = args[:udp_health_check] if args.key?(:udp_health_check) + @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold) + end + end + + # Contains a list of HealthCheck resources. + class HealthCheckList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of HealthCheck resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HealthCheckList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A full or valid partial URL to a health check. For example, the following are + # valid URLs: + # - https://www.googleapis.com/compute/beta/projects/project-id/global/ + # httpHealthChecks/health-check + # - projects/project-id/global/httpHealthChecks/health-check + # - global/httpHealthChecks/health-check + class HealthCheckReference + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `healthCheck` + # @return [String] + attr_accessor :health_check + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_check = args[:health_check] if args.key?(:health_check) + end + end + + # + class HealthStatus + include Google::Apis::Core::Hashable + + # Health state of the instance. + # Corresponds to the JSON property `healthState` + # @return [String] + attr_accessor :health_state + + # URL of the instance resource. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # The IP address represented by this resource. + # Corresponds to the JSON property `ipAddress` + # @return [String] + attr_accessor :ip_address + + # The port on the instance. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_state = args[:health_state] if args.key?(:health_state) + @instance = args[:instance] if args.key?(:instance) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @port = args[:port] if args.key?(:port) + end + end + + # + class HealthStatusForNetworkEndpoint + include Google::Apis::Core::Hashable + + # URL of the backend service associated with the health state of the network + # endpoint. + # Corresponds to the JSON property `backendService` + # @return [Google::Apis::ComputeAlpha::BackendServiceReference] + attr_accessor :backend_service + + # URL of the forwarding rule associated with the health state of the network + # endpoint. + # Corresponds to the JSON property `forwardingRule` + # @return [Google::Apis::ComputeAlpha::ForwardingRuleReference] + attr_accessor :forwarding_rule + + # A full or valid partial URL to a health check. For example, the following are + # valid URLs: + # - https://www.googleapis.com/compute/beta/projects/project-id/global/ + # httpHealthChecks/health-check + # - projects/project-id/global/httpHealthChecks/health-check + # - global/httpHealthChecks/health-check + # Corresponds to the JSON property `healthCheck` + # @return [Google::Apis::ComputeAlpha::HealthCheckReference] + attr_accessor :health_check + + # Health state of the network endpoint determined based on the health checks + # configured. + # Corresponds to the JSON property `healthState` + # @return [String] + attr_accessor :health_state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @backend_service = args[:backend_service] if args.key?(:backend_service) + @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule) + @health_check = args[:health_check] if args.key?(:health_check) + @health_state = args[:health_state] if args.key?(:health_state) + end + end + + # + class Host + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] An optional textual description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Full or partial URL of the host type resource to use for this host, in the + # format: zones/zone/hostTypes/host-type. This is provided by the client when + # the host is created. For example, the following is a valid partial url to a + # predefined host type: + # zones/us-central1-b/hostTypes/n1-host-64-416 + # Corresponds to the JSON property `hostType` + # @return [String] + attr_accessor :host_type + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # A list of resource URLs to the virtual machine instances in this host. They + # must live in zones contained in the same region as this host. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # [Output Only] The type of the resource. Always compute#host for host. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # 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. + # To see the latest fingerprint, make get() request to the host. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this host. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The status of the host. One of the following values: CREATING, + # READY, REPAIR, and DELETING. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional, human-readable explanation of the status. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # [Output Only] The name of the zone where the host resides, such as us-central1- + # a. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @host_type = args[:host_type] if args.key?(:host_type) + @id = args[:id] if args.key?(:id) + @instances = args[:instances] if args.key?(:instances) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class HostAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of HostsScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#hostAggregatedList for + # aggregated lists of hosts. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HostAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of hosts. + class HostList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Host resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#hostList for lists of hosts. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HostList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # UrlMaps A host-matching rule for a URL. If matched, will use the named + # PathMatcher to select the BackendService. + class HostRule + include Google::Apis::Core::Hashable + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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 .. + # Corresponds to the JSON property `hosts` + # @return [Array] + attr_accessor :hosts + + # The name of the PathMatcher to use to match the path portion of the URL if the + # hostRule matches the URL's host portion. + # Corresponds to the JSON property `pathMatcher` + # @return [String] + attr_accessor :path_matcher + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @hosts = args[:hosts] if args.key?(:hosts) + @path_matcher = args[:path_matcher] if args.key?(:path_matcher) + end + end + + # A Host Type resource. + class HostType + include Google::Apis::Core::Hashable + + # [Output Only] The CPU platform used by this host type. + # Corresponds to the JSON property `cpuPlatform` + # @return [String] + attr_accessor :cpu_platform + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Deprecation status for a public resource. + # Corresponds to the JSON property `deprecated` + # @return [Google::Apis::ComputeAlpha::DeprecationStatus] + attr_accessor :deprecated + + # [Output Only] An optional textual description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The number of virtual CPUs that are available to the host type. + # Corresponds to the JSON property `guestCpus` + # @return [Fixnum] + attr_accessor :guest_cpus + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The type of the resource. Always compute#hostType for host types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Local SSD available to the host type, defined in GB. + # Corresponds to the JSON property `localSsdGb` + # @return [Fixnum] + attr_accessor :local_ssd_gb + + # [Output Only] The amount of physical memory available to the host type, + # defined in MB. + # Corresponds to the JSON property `memoryMb` + # @return [Fixnum] + attr_accessor :memory_mb + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The name of the zone where the host type resides, such as us- + # central1-a. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cpu_platform = args[:cpu_platform] if args.key?(:cpu_platform) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @description = args[:description] if args.key?(:description) + @guest_cpus = args[:guest_cpus] if args.key?(:guest_cpus) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @local_ssd_gb = args[:local_ssd_gb] if args.key?(:local_ssd_gb) + @memory_mb = args[:memory_mb] if args.key?(:memory_mb) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class HostTypeAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of HostTypesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource.Always compute#hostTypeAggregatedList for + # aggregated lists of host types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HostTypeAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of host types. + class HostTypeList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of HostType resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource.Always compute#hostTypeList for lists of host + # types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HostTypeList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class HostTypesScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of host types contained in this scope. + # Corresponds to the JSON property `hostTypes` + # @return [Array] + attr_accessor :host_types + + # [Output Only] An informational warning that appears when the host types list + # is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HostTypesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @host_types = args[:host_types] if args.key?(:host_types) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] An informational warning that appears when the host types list + # is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class HostsScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of hosts contained in this scope. + # Corresponds to the JSON property `hosts` + # @return [Array] + attr_accessor :hosts + + # [Output Only] An informational warning that appears when the host list is + # empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HostsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hosts = args[:hosts] if args.key?(:hosts) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] An informational warning that appears when the host list is + # empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # An HttpHealthCheck resource. This resource defines a template for how + # individual instances should be checked for health, via HTTP. + class HttpHealthCheck + include Google::Apis::Core::Hashable + + # How often (in seconds) to send a health check. The default value is 5 seconds. + # Corresponds to the JSON property `checkIntervalSec` + # @return [Fixnum] + attr_accessor :check_interval_sec + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # A so-far unhealthy instance will be marked healthy after this many consecutive + # successes. The default value is 2. + # Corresponds to the JSON property `healthyThreshold` + # @return [Fixnum] + attr_accessor :healthy_threshold + + # 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. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP + # health checks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The TCP port number for the HTTP health check request. The default value is 80. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # The request path of the HTTP health check request. The default value is /. + # Corresponds to the JSON property `requestPath` + # @return [String] + attr_accessor :request_path + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # 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. + # Corresponds to the JSON property `timeoutSec` + # @return [Fixnum] + attr_accessor :timeout_sec + + # A so-far healthy instance will be marked unhealthy after this many consecutive + # failures. The default value is 2. + # Corresponds to the JSON property `unhealthyThreshold` + # @return [Fixnum] + attr_accessor :unhealthy_threshold + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval_sec = args[:check_interval_sec] if args.key?(:check_interval_sec) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold) + @host = args[:host] if args.key?(:host) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @port = args[:port] if args.key?(:port) + @request_path = args[:request_path] if args.key?(:request_path) + @self_link = args[:self_link] if args.key?(:self_link) + @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec) + @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold) + end + end + + # Contains a list of HttpHealthCheck resources. + class HttpHealthCheckList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of HttpHealthCheck resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HttpHealthCheckList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # An HttpsHealthCheck resource. This resource defines a template for how + # individual instances should be checked for health, via HTTPS. + class HttpsHealthCheck + include Google::Apis::Core::Hashable + + # How often (in seconds) to send a health check. The default value is 5 seconds. + # Corresponds to the JSON property `checkIntervalSec` + # @return [Fixnum] + attr_accessor :check_interval_sec + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # A so-far unhealthy instance will be marked healthy after this many consecutive + # successes. The default value is 2. + # Corresponds to the JSON property `healthyThreshold` + # @return [Fixnum] + attr_accessor :healthy_threshold + + # 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. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Type of the resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The TCP port number for the HTTPS health check request. The default value is + # 443. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # The request path of the HTTPS health check request. The default value is "/". + # Corresponds to the JSON property `requestPath` + # @return [String] + attr_accessor :request_path + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # 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. + # Corresponds to the JSON property `timeoutSec` + # @return [Fixnum] + attr_accessor :timeout_sec + + # A so-far healthy instance will be marked unhealthy after this many consecutive + # failures. The default value is 2. + # Corresponds to the JSON property `unhealthyThreshold` + # @return [Fixnum] + attr_accessor :unhealthy_threshold + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval_sec = args[:check_interval_sec] if args.key?(:check_interval_sec) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold) + @host = args[:host] if args.key?(:host) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @port = args[:port] if args.key?(:port) + @request_path = args[:request_path] if args.key?(:request_path) + @self_link = args[:self_link] if args.key?(:self_link) + @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec) + @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold) + end + end + + # Contains a list of HttpsHealthCheck resources. + class HttpsHealthCheckList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of HttpsHealthCheck resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::HttpsHealthCheckList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # An Image resource. + class Image + include Google::Apis::Core::Hashable + + # Size of the image tar.gz archive stored in Google Cloud Storage (in bytes). + # Corresponds to the JSON property `archiveSizeBytes` + # @return [Fixnum] + attr_accessor :archive_size_bytes + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Deprecation status for a public resource. + # Corresponds to the JSON property `deprecated` + # @return [Google::Apis::ComputeAlpha::DeprecationStatus] + attr_accessor :deprecated + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Size of the image when restored onto a persistent disk (in GB). + # Corresponds to the JSON property `diskSizeGb` + # @return [Fixnum] + attr_accessor :disk_size_gb + + # 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. + # Corresponds to the JSON property `family` + # @return [String] + attr_accessor :family + + # A list of features to enable on the guest OS. Applicable for bootable images + # only. Currently, only one feature can be enabled, VIRTIO_SCSI_MULTIQUEUE, + # which allows each virtual CPU to have its own queue. For Windows images, you + # can only enable VIRTIO_SCSI_MULTIQUEUE on images with driver version 1.2.0. + # 1621 or higher. Linux images with kernel versions 3.17 and higher will support + # VIRTIO_SCSI_MULTIQUEUE. + # For new Windows images, the server might also populate this field with the + # value WINDOWS, to indicate that this is a Windows image. This value is purely + # informational and does not enable or disable any features. + # Corresponds to the JSON property `guestOsFeatures` + # @return [Array] + attr_accessor :guest_os_features + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `imageEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :image_encryption_key + + # [Output Only] Type of the resource. Always compute#image for images. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # 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. + # To see the latest fingerprint, make a get() request to retrieve an image. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this image. These can be later modified by the setLabels + # method. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Integer license codes indicating which licenses are attached to this image. + # Corresponds to the JSON property `licenseCodes` + # @return [Array] + attr_accessor :license_codes + + # Any applicable license URI. + # Corresponds to the JSON property `licenses` + # @return [Array] + attr_accessor :licenses + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The parameters of the raw disk image. + # Corresponds to the JSON property `rawDisk` + # @return [Google::Apis::ComputeAlpha::Image::RawDisk] + attr_accessor :raw_disk + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # URL of the source disk used to create this image. This can be a full or valid + # partial URL. You must provide either this property or the rawDisk.source + # property but not both to create an image. For example, the following are valid + # values: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk + # - projects/project/zones/zone/disks/disk + # - zones/zone/disks/disk + # Corresponds to the JSON property `sourceDisk` + # @return [String] + attr_accessor :source_disk + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `sourceDiskEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :source_disk_encryption_key + + # 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. + # Corresponds to the JSON property `sourceDiskId` + # @return [String] + attr_accessor :source_disk_id + + # URL of the source image used to create this image. This can be a full or valid + # partial URL. You must provide exactly one of: + # - this property, or + # - the rawDisk.source property, or + # - the sourceDisk property in order to create an image. + # Corresponds to the JSON property `sourceImage` + # @return [String] + attr_accessor :source_image + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `sourceImageEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :source_image_encryption_key + + # [Output Only] The ID value of the image used to create this image. This value + # may be used to determine whether the image was taken from the current or a + # previous instance of a given image name. + # Corresponds to the JSON property `sourceImageId` + # @return [String] + attr_accessor :source_image_id + + # The type of the image used to create this disk. The default and only value is + # RAW + # Corresponds to the JSON property `sourceType` + # @return [String] + attr_accessor :source_type + + # [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. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @archive_size_bytes = args[:archive_size_bytes] if args.key?(:archive_size_bytes) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @description = args[:description] if args.key?(:description) + @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) + @family = args[:family] if args.key?(:family) + @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features) + @id = args[:id] if args.key?(:id) + @image_encryption_key = args[:image_encryption_key] if args.key?(:image_encryption_key) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @license_codes = args[:license_codes] if args.key?(:license_codes) + @licenses = args[:licenses] if args.key?(:licenses) + @name = args[:name] if args.key?(:name) + @raw_disk = args[:raw_disk] if args.key?(:raw_disk) + @self_link = args[:self_link] if args.key?(:self_link) + @source_disk = args[:source_disk] if args.key?(:source_disk) + @source_disk_encryption_key = args[:source_disk_encryption_key] if args.key?(:source_disk_encryption_key) + @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id) + @source_image = args[:source_image] if args.key?(:source_image) + @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key) + @source_image_id = args[:source_image_id] if args.key?(:source_image_id) + @source_type = args[:source_type] if args.key?(:source_type) + @status = args[:status] if args.key?(:status) + end + + # The parameters of the raw disk image. + class RawDisk + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `containerType` + # @return [String] + attr_accessor :container_type + + # An optional SHA1 checksum of the disk image before unpackaging; provided by + # the client when the disk image is created. + # Corresponds to the JSON property `sha1Checksum` + # @return [String] + attr_accessor :sha1_checksum + + # 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. + # Corresponds to the JSON property `source` + # @return [String] + attr_accessor :source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @container_type = args[:container_type] if args.key?(:container_type) + @sha1_checksum = args[:sha1_checksum] if args.key?(:sha1_checksum) + @source = args[:source] if args.key?(:source) + end + end + end + + # Contains a list of images. + class ImageList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Image resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::ImageList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # An Instance resource. + class Instance + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `canIpForward` + # @return [Boolean] + attr_accessor :can_ip_forward + alias_method :can_ip_forward?, :can_ip_forward + + # [Output Only] The CPU platform used by this instance. + # Corresponds to the JSON property `cpuPlatform` + # @return [String] + attr_accessor :cpu_platform + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Array of disks associated with this instance. Persistent disks must be created + # before you can assign them. + # Corresponds to the JSON property `disks` + # @return [Array] + attr_accessor :disks + + # List of the type and count of accelerator cards attached to the instance. + # Corresponds to the JSON property `guestAccelerators` + # @return [Array] + attr_accessor :guest_accelerators + + # Full or partial URL of the host resource that the instance should be placed on, + # in the format: zones/zone/hosts/host. + # Optional, sole-tenant Host (physical machine) that the instance will be placed + # on when it's created. The instance is guaranteed to be placed on the same + # machine as other instances with the same sole-tenant host. + # The request will be rejected if the sole-tenant host has run out of resources. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `instanceEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :instance_encryption_key + + # [Output Only] Type of the resource. Always compute#instance for instances. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # 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. + # To see the latest fingerprint, make get() request to the instance. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this instance. These can be later modified by the setLabels + # method. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # 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: + # zones/us-central1-f/machineTypes/n1-standard-1 + # To create a custom machine type, provide a URL to a machine type in the + # following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, + # etc), and MEMORY is the total memory for this instance. Memory must be a + # multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB): + # zones/zone/machineTypes/custom-CPUS-MEMORY + # For example: zones/us-central1-f/machineTypes/custom-4-5120 + # For a full list of restrictions, read the Specifications for custom machine + # types. + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + # A metadata key/value entry. + # Corresponds to the JSON property `metadata` + # @return [Google::Apis::ComputeAlpha::Metadata] + attr_accessor :metadata + + # Specifies a minimum CPU platform for the VM instance. Applicable values are + # the friendly names of CPU platforms, such as minCpuPlatform: "Intel Haswell" + # or minCpuPlatform: "Intel Sandy Bridge". + # Corresponds to the JSON property `minCpuPlatform` + # @return [String] + attr_accessor :min_cpu_platform + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An array of network configurations for this instance. These specify how + # interfaces are configured to interact with other network services, such as + # connecting to the internet. Multiple interfaces are supported per instance. + # Corresponds to the JSON property `networkInterfaces` + # @return [Array] + attr_accessor :network_interfaces + + # Sets the scheduling options for an Instance. + # Corresponds to the JSON property `scheduling` + # @return [Google::Apis::ComputeAlpha::Scheduling] + attr_accessor :scheduling + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # A list of service accounts, with their specified scopes, authorized for this + # instance. Only one service account per VM instance is supported. + # 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. + # Corresponds to the JSON property `serviceAccounts` + # @return [Array] + attr_accessor :service_accounts + + # [Output Only] Whether a VM has been restricted for start because Compute + # Engine has detected suspicious activity. + # Corresponds to the JSON property `startRestricted` + # @return [Boolean] + attr_accessor :start_restricted + alias_method :start_restricted?, :start_restricted + + # [Output Only] The status of the instance. One of the following values: + # PROVISIONING, STAGING, RUNNING, STOPPING, STOPPED, SUSPENDING, SUSPENDED, and + # TERMINATED. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional, human-readable explanation of the status. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # A set of instance tags. + # Corresponds to the JSON property `tags` + # @return [Google::Apis::ComputeAlpha::Tags] + attr_accessor :tags + + # [Output Only] URL of the zone where the instance resides. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward) + @cpu_platform = args[:cpu_platform] if args.key?(:cpu_platform) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @disks = args[:disks] if args.key?(:disks) + @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators) + @host = args[:host] if args.key?(:host) + @id = args[:id] if args.key?(:id) + @instance_encryption_key = args[:instance_encryption_key] if args.key?(:instance_encryption_key) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @machine_type = args[:machine_type] if args.key?(:machine_type) + @metadata = args[:metadata] if args.key?(:metadata) + @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) + @name = args[:name] if args.key?(:name) + @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces) + @scheduling = args[:scheduling] if args.key?(:scheduling) + @self_link = args[:self_link] if args.key?(:self_link) + @service_accounts = args[:service_accounts] if args.key?(:service_accounts) + @start_restricted = args[:start_restricted] if args.key?(:start_restricted) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @tags = args[:tags] if args.key?(:tags) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class InstanceAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstancesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#instanceAggregatedList for + # aggregated lists of Instance resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceGroup + include Google::Apis::Core::Hashable + + # [Output Only] The creation timestamp for this instance group in RFC3339 text + # format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # [Output Only] A unique identifier for this instance group, generated by the + # server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The resource type, which is always compute#instanceGroup for + # instance groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the instance group. The name must be 1-63 characters long, and + # comply with RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Assigns a name to a port number. For example: `name: "http", port: 80` + # This 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`] + # Named ports apply to all instances in this instance group. + # Corresponds to the JSON property `namedPorts` + # @return [Array] + attr_accessor :named_ports + + # The URL of the network to which all instances in the instance group belong. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # The URL of the region where the instance group is located (for regional + # resources). + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] The URL for this instance group. The server generates this URL. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The total number of instances in the instance group. + # Corresponds to the JSON property `size` + # @return [Fixnum] + attr_accessor :size + + # The URL of the subnetwork to which all instances in the instance group belong. + # Corresponds to the JSON property `subnetwork` + # @return [String] + attr_accessor :subnetwork + + # [Output Only] The URL of the zone where the instance group is located (for + # zonal resources). + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @named_ports = args[:named_ports] if args.key?(:named_ports) + @network = args[:network] if args.key?(:network) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @size = args[:size] if args.key?(:size) + @subnetwork = args[:subnetwork] if args.key?(:subnetwork) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class InstanceGroupAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceGroupsScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # instanceGroupAggregatedList for aggregated lists of instance groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A list of InstanceGroup resources. + class InstanceGroupList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceGroup resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] The resource type, which is always compute#instanceGroupList for + # instance group lists. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # An Instance Group Manager resource. + class InstanceGroupManager + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `activities` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerActivities] + attr_accessor :activities + + # The autohealing policy for this managed instance group. You can specify only + # one value. + # Corresponds to the JSON property `autoHealingPolicies` + # @return [Array] + attr_accessor :auto_healing_policies + + # 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. + # Corresponds to the JSON property `baseInstanceName` + # @return [String] + attr_accessor :base_instance_name + + # [Output Only] The creation timestamp for this managed instance group in + # RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [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. + # Corresponds to the JSON property `currentActions` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerActionsSummary] + attr_accessor :current_actions + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Policy valid only for regional managed instance groups. + # Corresponds to the JSON property `distributionPolicy` + # @return [Google::Apis::ComputeAlpha::DistributionPolicy] + attr_accessor :distribution_policy + + # The action to perform in case of zone failure. Only one value is supported, + # NO_FAILOVER. The default is NO_FAILOVER. + # Corresponds to the JSON property `failoverAction` + # @return [String] + attr_accessor :failover_action + + # [Output Only] The fingerprint of the resource data. You can use this optional + # field for optimistic locking when you update the resource. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # [Output Only] A unique identifier for this resource type. The server generates + # this identifier. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The URL of the Instance Group resource. + # Corresponds to the JSON property `instanceGroup` + # @return [String] + attr_accessor :instance_group + + # 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. + # Corresponds to the JSON property `instanceTemplate` + # @return [String] + attr_accessor :instance_template + + # [Output Only] The resource type, which is always compute#instanceGroupManager + # for managed instance groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the managed instance group. The name must be 1-63 characters long, + # and comply with RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Named ports configured for the Instance Groups complementary to this Instance + # Group Manager. + # Corresponds to the JSON property `namedPorts` + # @return [Array] + attr_accessor :named_ports + + # [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. + # Corresponds to the JSON property `pendingActions` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerPendingActionsSummary] + attr_accessor :pending_actions + + # [Output Only] The URL of the region where the managed instance group resides ( + # for regional resources). + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] The URL for this managed instance group. The server defines this + # URL. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The service account to be used as credentials for all operations + # performed by the managed instance group on instances. The service accounts + # needs all permissions required to create and delete instances. By default, the + # service account `projectNumber`@cloudservices.gserviceaccount.com is used. + # Corresponds to the JSON property `serviceAccount` + # @return [String] + attr_accessor :service_account + + # Stateful configuration for this Instanced Group Manager + # Corresponds to the JSON property `statefulPolicy` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerStatefulPolicy] + attr_accessor :stateful_policy + + # 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. + # Corresponds to the JSON property `targetPools` + # @return [Array] + attr_accessor :target_pools + + # The target number of running instances for this managed instance group. + # Deleting or abandoning instances reduces this number. Resizing the group + # changes this number. + # Corresponds to the JSON property `targetSize` + # @return [Fixnum] + attr_accessor :target_size + + # The update policy for this managed instance group. + # Corresponds to the JSON property `updatePolicy` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerUpdatePolicy] + attr_accessor :update_policy + + # 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. + # Corresponds to the JSON property `versions` + # @return [Array] + attr_accessor :versions + + # [Output Only] The URL of the zone where the managed instance group is located ( + # for zonal resources). + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @activities = args[:activities] if args.key?(:activities) + @auto_healing_policies = args[:auto_healing_policies] if args.key?(:auto_healing_policies) + @base_instance_name = args[:base_instance_name] if args.key?(:base_instance_name) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @current_actions = args[:current_actions] if args.key?(:current_actions) + @description = args[:description] if args.key?(:description) + @distribution_policy = args[:distribution_policy] if args.key?(:distribution_policy) + @failover_action = args[:failover_action] if args.key?(:failover_action) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @id = args[:id] if args.key?(:id) + @instance_group = args[:instance_group] if args.key?(:instance_group) + @instance_template = args[:instance_template] if args.key?(:instance_template) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @named_ports = args[:named_ports] if args.key?(:named_ports) + @pending_actions = args[:pending_actions] if args.key?(:pending_actions) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @service_account = args[:service_account] if args.key?(:service_account) + @stateful_policy = args[:stateful_policy] if args.key?(:stateful_policy) + @target_pools = args[:target_pools] if args.key?(:target_pools) + @target_size = args[:target_size] if args.key?(:target_size) + @update_policy = args[:update_policy] if args.key?(:update_policy) + @versions = args[:versions] if args.key?(:versions) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class InstanceGroupManagerActionsSummary + include Google::Apis::Core::Hashable + + # [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. + # Corresponds to the JSON property `abandoning` + # @return [Fixnum] + attr_accessor :abandoning + + # [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. + # If you have disabled creation retries, this field will not be populated; + # instead, the creatingWithoutRetries field will be populated. + # Corresponds to the JSON property `creating` + # @return [Fixnum] + attr_accessor :creating + + # [Output Only] The number of instances that the managed instance group will + # attempt to create. The group attempts to create each instance only once. If + # the group fails to create any of these instances, it decreases the group's + # targetSize value accordingly. + # Corresponds to the JSON property `creatingWithoutRetries` + # @return [Fixnum] + attr_accessor :creating_without_retries + + # [Output Only] The number of instances in the managed instance group that are + # scheduled to be deleted or are currently being deleted. + # Corresponds to the JSON property `deleting` + # @return [Fixnum] + attr_accessor :deleting + + # [Output Only] The number of instances in the managed instance group that are + # running and have no scheduled actions. + # Corresponds to the JSON property `none` + # @return [Fixnum] + attr_accessor :none + + # [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. + # Corresponds to the JSON property `recreating` + # @return [Fixnum] + attr_accessor :recreating + + # [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. + # Corresponds to the JSON property `refreshing` + # @return [Fixnum] + attr_accessor :refreshing + + # [Output Only] The number of instances in the managed instance group that are + # scheduled to be restarted or are currently being restarted. + # Corresponds to the JSON property `restarting` + # @return [Fixnum] + attr_accessor :restarting + + # [Output Only] The number of instances in the managed instance group that are + # being verified. More details regarding verification process are covered in the + # documentation of ManagedInstance.InstanceAction.VERIFYING enum field. + # Corresponds to the JSON property `verifying` + # @return [Fixnum] + attr_accessor :verifying + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @abandoning = args[:abandoning] if args.key?(:abandoning) + @creating = args[:creating] if args.key?(:creating) + @creating_without_retries = args[:creating_without_retries] if args.key?(:creating_without_retries) + @deleting = args[:deleting] if args.key?(:deleting) + @none = args[:none] if args.key?(:none) + @recreating = args[:recreating] if args.key?(:recreating) + @refreshing = args[:refreshing] if args.key?(:refreshing) + @restarting = args[:restarting] if args.key?(:restarting) + @verifying = args[:verifying] if args.key?(:verifying) + end + end + + # + class InstanceGroupManagerActivities + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `autohealing` + # @return [String] + attr_accessor :autohealing + + # + # Corresponds to the JSON property `autohealingHealthCheckBased` + # @return [String] + attr_accessor :autohealing_health_check_based + + # + # Corresponds to the JSON property `autoscalingDown` + # @return [String] + attr_accessor :autoscaling_down + + # + # Corresponds to the JSON property `autoscalingUp` + # @return [String] + attr_accessor :autoscaling_up + + # + # Corresponds to the JSON property `creatingInstances` + # @return [String] + attr_accessor :creating_instances + + # + # Corresponds to the JSON property `deletingInstances` + # @return [String] + attr_accessor :deleting_instances + + # + # Corresponds to the JSON property `recreatingInstances` + # @return [String] + attr_accessor :recreating_instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @autohealing = args[:autohealing] if args.key?(:autohealing) + @autohealing_health_check_based = args[:autohealing_health_check_based] if args.key?(:autohealing_health_check_based) + @autoscaling_down = args[:autoscaling_down] if args.key?(:autoscaling_down) + @autoscaling_up = args[:autoscaling_up] if args.key?(:autoscaling_up) + @creating_instances = args[:creating_instances] if args.key?(:creating_instances) + @deleting_instances = args[:deleting_instances] if args.key?(:deleting_instances) + @recreating_instances = args[:recreating_instances] if args.key?(:recreating_instances) + end + end + + # + class InstanceGroupManagerAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceGroupManagersScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # instanceGroupManagerAggregatedList for an aggregated list of managed instance + # groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceGroupManagerAutoHealingPolicy + include Google::Apis::Core::Hashable + + # The URL for the health check that signals autohealing. + # Corresponds to the JSON property `healthCheck` + # @return [String] + attr_accessor :health_check + + # 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]. + # Corresponds to the JSON property `initialDelaySec` + # @return [Fixnum] + attr_accessor :initial_delay_sec + + # Encapsulates numeric value that can be either absolute or relative. + # Corresponds to the JSON property `maxUnavailable` + # @return [Google::Apis::ComputeAlpha::FixedOrPercent] + attr_accessor :max_unavailable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_check = args[:health_check] if args.key?(:health_check) + @initial_delay_sec = args[:initial_delay_sec] if args.key?(:initial_delay_sec) + @max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable) + end + end + + # [Output Only] A list of managed instance groups. + class InstanceGroupManagerList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceGroupManager resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # instanceGroupManagerList for a list of managed instance groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceGroupManagerPendingActionsSummary + include Google::Apis::Core::Hashable + + # [Output Only] The number of instances in the managed instance group that are + # pending to be created. + # Corresponds to the JSON property `creating` + # @return [Fixnum] + attr_accessor :creating + + # [Output Only] The number of instances in the managed instance group that are + # pending to be deleted. + # Corresponds to the JSON property `deleting` + # @return [Fixnum] + attr_accessor :deleting + + # [Output Only] The number of instances in the managed instance group that are + # pending to be recreated. + # Corresponds to the JSON property `recreating` + # @return [Fixnum] + attr_accessor :recreating + + # [Output Only] The number of instances in the managed instance group that are + # pending to be restarted. + # Corresponds to the JSON property `restarting` + # @return [Fixnum] + attr_accessor :restarting + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creating = args[:creating] if args.key?(:creating) + @deleting = args[:deleting] if args.key?(:deleting) + @recreating = args[:recreating] if args.key?(:recreating) + @restarting = args[:restarting] if args.key?(:restarting) + end + end + + # + class InstanceGroupManagerStatefulPolicy + include Google::Apis::Core::Hashable + + # Disks created on the instances that will be preserved on instance delete, + # resize down, etc. + # Corresponds to the JSON property `preservedDisks` + # @return [Array] + attr_accessor :preserved_disks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @preserved_disks = args[:preserved_disks] if args.key?(:preserved_disks) + end + end + + # + class InstanceGroupManagerStatefulPolicyDiskPolicy + include Google::Apis::Core::Hashable + + # Device name of the disk to be preserved + # Corresponds to the JSON property `deviceName` + # @return [String] + attr_accessor :device_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @device_name = args[:device_name] if args.key?(:device_name) + end + end + + # + class InstanceGroupManagerUpdatePolicy + include Google::Apis::Core::Hashable + + # Encapsulates numeric value that can be either absolute or relative. + # Corresponds to the JSON property `maxSurge` + # @return [Google::Apis::ComputeAlpha::FixedOrPercent] + attr_accessor :max_surge + + # Encapsulates numeric value that can be either absolute or relative. + # Corresponds to the JSON property `maxUnavailable` + # @return [Google::Apis::ComputeAlpha::FixedOrPercent] + attr_accessor :max_unavailable + + # Minimum number of seconds to wait for after a newly created instance becomes + # available. This value must be from range [0, 3600]. + # Corresponds to the JSON property `minReadySec` + # @return [Fixnum] + attr_accessor :min_ready_sec + + # Minimal action to be taken on an instance. The order of action types is: + # RESTART < REPLACE. + # Corresponds to the JSON property `minimalAction` + # @return [String] + attr_accessor :minimal_action + + # + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_surge = args[:max_surge] if args.key?(:max_surge) + @max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable) + @min_ready_sec = args[:min_ready_sec] if args.key?(:min_ready_sec) + @minimal_action = args[:minimal_action] if args.key?(:minimal_action) + @type = args[:type] if args.key?(:type) + end + end + + # + class InstanceGroupManagerVersion + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `instanceTemplate` + # @return [String] + attr_accessor :instance_template + + # Name of the version. Unique among all versions in the scope of this managed + # instance group. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Tag describing the version. Used to trigger rollout of a target version even + # if instance_template remains unchanged. Deprecated in favor of 'name'. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + # Encapsulates numeric value that can be either absolute or relative. + # Corresponds to the JSON property `targetSize` + # @return [Google::Apis::ComputeAlpha::FixedOrPercent] + attr_accessor :target_size + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_template = args[:instance_template] if args.key?(:instance_template) + @name = args[:name] if args.key?(:name) + @tag = args[:tag] if args.key?(:tag) + @target_size = args[:target_size] if args.key?(:target_size) + end + end + + # + class InstanceGroupManagersAbandonInstancesRequest + include Google::Apis::Core::Hashable + + # The URLs of one or more instances to abandon. This can be a full URL or a + # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # InstanceGroupManagers.applyUpdatesToInstances + class InstanceGroupManagersApplyUpdatesRequest + include Google::Apis::Core::Hashable + + # The list of URLs of one or more instances for which we want to apply updates + # on this managed instance group. This can be a full URL or a partial URL, such + # as zones/[ZONE]/instances/[INSTANCE_NAME]. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # The maximal action that should be perfomed on the instances. By default + # REPLACE. + # Corresponds to the JSON property `maximalAction` + # @return [String] + attr_accessor :maximal_action + + # The minimal action that should be perfomed on the instances. By default NONE. + # Corresponds to the JSON property `minimalAction` + # @return [String] + attr_accessor :minimal_action + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + @maximal_action = args[:maximal_action] if args.key?(:maximal_action) + @minimal_action = args[:minimal_action] if args.key?(:minimal_action) + end + end + + # + class InstanceGroupManagersDeleteInstancesRequest + include Google::Apis::Core::Hashable + + # The URLs of one or more instances to delete. This can be a full URL or a + # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # InstanceGroupManagers.deletePerInstanceConfigs + class InstanceGroupManagersDeletePerInstanceConfigsReq + include Google::Apis::Core::Hashable + + # The list of instances for which we want to delete per-instance configs on this + # managed instance group. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class InstanceGroupManagersListManagedInstancesResponse + include Google::Apis::Core::Hashable + + # [Output Only] The list of instances in the managed instance group. + # Corresponds to the JSON property `managedInstances` + # @return [Array] + attr_accessor :managed_instances + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @managed_instances = args[:managed_instances] if args.key?(:managed_instances) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class InstanceGroupManagersListPerInstanceConfigsResp + include Google::Apis::Core::Hashable + + # [Output Only] The list of PerInstanceConfig. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceGroupManagersRecreateInstancesRequest + include Google::Apis::Core::Hashable + + # The URLs of one or more instances to recreate. This can be a full URL or a + # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class InstanceGroupManagersResizeAdvancedRequest + include Google::Apis::Core::Hashable + + # 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. + # This 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. + # This flag is applicable only to the current resize request. It does not + # influence other resize requests in any way. + # You can see which instances is being creating in which mode by calling the get + # or listManagedInstances API. + # Corresponds to the JSON property `noCreationRetries` + # @return [Boolean] + attr_accessor :no_creation_retries + alias_method :no_creation_retries?, :no_creation_retries + + # 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. + # Corresponds to the JSON property `targetSize` + # @return [Fixnum] + attr_accessor :target_size + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @no_creation_retries = args[:no_creation_retries] if args.key?(:no_creation_retries) + @target_size = args[:target_size] if args.key?(:target_size) + end + end + + # + class InstanceGroupManagersScopedList + include Google::Apis::Core::Hashable + + # [Output Only] The list of managed instance groups that are contained in the + # specified project and zone. + # Corresponds to the JSON property `instanceGroupManagers` + # @return [Array] + attr_accessor :instance_group_managers + + # [Output Only] The warning that replaces the list of managed instance groups + # when the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagersScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_group_managers = args[:instance_group_managers] if args.key?(:instance_group_managers) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] The warning that replaces the list of managed instance groups + # when the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceGroupManagersSetAutoHealingRequest + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `autoHealingPolicies` + # @return [Array] + attr_accessor :auto_healing_policies + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_healing_policies = args[:auto_healing_policies] if args.key?(:auto_healing_policies) + end + end + + # + class InstanceGroupManagersSetInstanceTemplateRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `instanceTemplate` + # @return [String] + attr_accessor :instance_template + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_template = args[:instance_template] if args.key?(:instance_template) + end + end + + # + class InstanceGroupManagersSetTargetPoolsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # 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. + # Corresponds to the JSON property `targetPools` + # @return [Array] + attr_accessor :target_pools + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @target_pools = args[:target_pools] if args.key?(:target_pools) + end + end + + # InstanceGroupManagers.updatePerInstanceConfigs + class InstanceGroupManagersUpdatePerInstanceConfigsReq + include Google::Apis::Core::Hashable + + # The list of per-instance configs to insert or patch on this managed instance + # group. + # Corresponds to the JSON property `perInstanceConfigs` + # @return [Array] + attr_accessor :per_instance_configs + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @per_instance_configs = args[:per_instance_configs] if args.key?(:per_instance_configs) + end + end + + # + class InstanceGroupsAddInstancesRequest + include Google::Apis::Core::Hashable + + # The list of instances to add to the instance group. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class InstanceGroupsListInstances + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceWithNamedPorts resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # instanceGroupsListInstances for the list of instances in the specified + # instance group. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupsListInstances::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceGroupsListInstancesRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `instanceState` + # @return [String] + attr_accessor :instance_state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_state = args[:instance_state] if args.key?(:instance_state) + end + end + + # + class InstanceGroupsRemoveInstancesRequest + include Google::Apis::Core::Hashable + + # The list of instances to remove from the instance group. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class InstanceGroupsScopedList + include Google::Apis::Core::Hashable + + # [Output Only] The list of instance groups that are contained in this scope. + # Corresponds to the JSON property `instanceGroups` + # @return [Array] + attr_accessor :instance_groups + + # [Output Only] An informational warning that replaces the list of instance + # groups when the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceGroupsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_groups = args[:instance_groups] if args.key?(:instance_groups) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] An informational warning that replaces the list of instance + # groups when the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceGroupsSetNamedPortsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # The list of named ports to set for this instance group. + # Corresponds to the JSON property `namedPorts` + # @return [Array] + attr_accessor :named_ports + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @named_ports = args[:named_ports] if args.key?(:named_ports) + end + end + + # Contains a list of instances. + class InstanceList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Instance resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#instanceList for lists of + # Instance resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of instance referrers. + class InstanceListReferrers + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Reference resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#instanceListReferrers for lists + # of Instance referrers. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceListReferrers::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceMoveRequest + include Google::Apis::Core::Hashable + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone + # - projects/project/zones/zone + # - zones/zone + # Corresponds to the JSON property `destinationZone` + # @return [String] + attr_accessor :destination_zone + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/ + # instance + # - projects/project/zones/zone/instances/instance + # - zones/zone/instances/instance + # Corresponds to the JSON property `targetInstance` + # @return [String] + attr_accessor :target_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination_zone = args[:destination_zone] if args.key?(:destination_zone) + @target_instance = args[:target_instance] if args.key?(:target_instance) + end + end + + # + class InstanceProperties + include Google::Apis::Core::Hashable + + # Enables instances created based on this template to send packets with source + # IP addresses other than their own and receive packets with destination IP + # addresses other than their own. If these instances will be used as an IP + # gateway or it will be set as the next-hop in a Route resource, specify true. + # If unsure, leave this set to false. See the Enable IP forwarding documentation + # for more information. + # Corresponds to the JSON property `canIpForward` + # @return [Boolean] + attr_accessor :can_ip_forward + alias_method :can_ip_forward?, :can_ip_forward + + # An optional text description for the instances that are created from this + # instance template. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # An array of disks that are associated with the instances that are created from + # this template. + # Corresponds to the JSON property `disks` + # @return [Array] + attr_accessor :disks + + # A list of guest accelerator cards' type and count to use for instances created + # from the instance template. + # Corresponds to the JSON property `guestAccelerators` + # @return [Array] + attr_accessor :guest_accelerators + + # Labels to apply to instances that are created from this template. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The machine type to use for instances that are created from this template. + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + # A metadata key/value entry. + # Corresponds to the JSON property `metadata` + # @return [Google::Apis::ComputeAlpha::Metadata] + attr_accessor :metadata + + # Minimum cpu/platform to be used by this instance. The instance may be + # scheduled on the specified or newer cpu/platform. Applicable values are the + # friendly names of CPU platforms, such as minCpuPlatform: "Intel Haswell" or + # minCpuPlatform: "Intel Sandy Bridge". For more information, read Specifying a + # Minimum CPU Platform. + # Corresponds to the JSON property `minCpuPlatform` + # @return [String] + attr_accessor :min_cpu_platform + + # An array of network access configurations for this interface. + # Corresponds to the JSON property `networkInterfaces` + # @return [Array] + attr_accessor :network_interfaces + + # Sets the scheduling options for an Instance. + # Corresponds to the JSON property `scheduling` + # @return [Google::Apis::ComputeAlpha::Scheduling] + attr_accessor :scheduling + + # 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. + # Corresponds to the JSON property `serviceAccounts` + # @return [Array] + attr_accessor :service_accounts + + # A set of instance tags. + # Corresponds to the JSON property `tags` + # @return [Google::Apis::ComputeAlpha::Tags] + attr_accessor :tags + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward) + @description = args[:description] if args.key?(:description) + @disks = args[:disks] if args.key?(:disks) + @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators) + @labels = args[:labels] if args.key?(:labels) + @machine_type = args[:machine_type] if args.key?(:machine_type) + @metadata = args[:metadata] if args.key?(:metadata) + @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) + @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces) + @scheduling = args[:scheduling] if args.key?(:scheduling) + @service_accounts = args[:service_accounts] if args.key?(:service_accounts) + @tags = args[:tags] if args.key?(:tags) + end + end + + # + class InstanceReference + include Google::Apis::Core::Hashable + + # The URL for a specific instance. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance = args[:instance] if args.key?(:instance) + end + end + + # An Instance Template resource. + class InstanceTemplate + include Google::Apis::Core::Hashable + + # [Output Only] The creation timestamp for this instance template in RFC3339 + # text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] A unique identifier for this instance template. The server + # defines this identifier. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The resource type, which is always compute#instanceTemplate for + # instance templates. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # + # Corresponds to the JSON property `properties` + # @return [Google::Apis::ComputeAlpha::InstanceProperties] + attr_accessor :properties + + # [Output Only] The URL for this instance template. The server defines this URL. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/ + # instance + # - projects/project/zones/zone/instances/instance + # Corresponds to the JSON property `sourceInstance` + # @return [String] + attr_accessor :source_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @properties = args[:properties] if args.key?(:properties) + @self_link = args[:self_link] if args.key?(:self_link) + @source_instance = args[:source_instance] if args.key?(:source_instance) + end + end + + # A list of instance templates. + class InstanceTemplateList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceTemplate resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # instanceTemplatesListResponse for instance template lists. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstanceTemplateList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstanceWithNamedPorts + include Google::Apis::Core::Hashable + + # [Output Only] The URL of the instance. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # [Output Only] The named ports that belong to this instance group. + # Corresponds to the JSON property `namedPorts` + # @return [Array] + attr_accessor :named_ports + + # [Output Only] The status of the instance. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance = args[:instance] if args.key?(:instance) + @named_ports = args[:named_ports] if args.key?(:named_ports) + @status = args[:status] if args.key?(:status) + end + end + + # + class InstancesScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of instances contained in this scope. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # [Output Only] Informational warning which replaces the list of instances when + # the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InstancesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of instances when + # the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class InstancesSetLabelsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + end + end + + # + class InstancesSetMachineResourcesRequest + include Google::Apis::Core::Hashable + + # List of the type and count of accelerator cards attached to the instance. + # Corresponds to the JSON property `guestAccelerators` + # @return [Array] + attr_accessor :guest_accelerators + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators) + end + end + + # + class InstancesSetMachineTypeRequest + include Google::Apis::Core::Hashable + + # 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 + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @machine_type = args[:machine_type] if args.key?(:machine_type) + end + end + + # + class InstancesSetMinCpuPlatformRequest + include Google::Apis::Core::Hashable + + # Minimum cpu/platform this instance should be started at. + # Corresponds to the JSON property `minCpuPlatform` + # @return [String] + attr_accessor :min_cpu_platform + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) + end + end + + # + class InstancesSetServiceAccountRequest + include Google::Apis::Core::Hashable + + # Email address of the service account. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The list of scopes to be made available for this service account. + # Corresponds to the JSON property `scopes` + # @return [Array] + attr_accessor :scopes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + @scopes = args[:scopes] if args.key?(:scopes) + end + end + + # + class InstancesStartWithEncryptionKeyRequest + include Google::Apis::Core::Hashable + + # Array of disks associated with this instance that are protected with a + # customer-supplied encryption key. + # In order to start the instance, the disk url and its corresponding key must be + # provided. + # If the disk is not protected with a customer-supplied encryption key it should + # not be specified. + # Corresponds to the JSON property `disks` + # @return [Array] + attr_accessor :disks + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `instanceEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :instance_encryption_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disks = args[:disks] if args.key?(:disks) + @instance_encryption_key = args[:instance_encryption_key] if args.key?(:instance_encryption_key) + end + end + + # Protocol definitions for Mixer API to support Interconnect. Next available tag: + # 23 + class Interconnect + include Google::Apis::Core::Hashable + + # Administrative status of the interconnect. When this is set to ?true?, the + # Interconnect is functional and may carry traffic (assuming there are + # functional InterconnectAttachments and other requirements are satisfied). When + # set to ?false?, no packets will be carried over this Interconnect and no BGP + # routes will be exchanged over it. By default, it is set to ?true?. + # Corresponds to the JSON property `adminEnabled` + # @return [Boolean] + attr_accessor :admin_enabled + alias_method :admin_enabled?, :admin_enabled + + # [Output Only] List of CircuitInfo objects, that describe the individual + # circuits in this LAG. + # Corresponds to the JSON property `circuitInfos` + # @return [Array] + attr_accessor :circuit_infos + + # [Output Only] URL to retrieve the Letter Of Authority and Customer Facility + # Assignment (LOA-CFA) documentation relating to this Interconnect. This + # documentation authorizes the facility provider to connect to the specified + # crossconnect ports. + # Corresponds to the JSON property `connectionAuthorization` + # @return [String] + attr_accessor :connection_authorization + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Customer name, to put in the Letter of Authorization as the party authorized + # to request a crossconnect. + # Corresponds to the JSON property `customerName` + # @return [String] + attr_accessor :customer_name + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] List of outages expected for this Interconnect. + # Corresponds to the JSON property `expectedOutages` + # @return [Array] + attr_accessor :expected_outages + + # [Output Only] IP address configured on the Google side of the Interconnect + # link. This can be used only for ping tests. + # Corresponds to the JSON property `googleIpAddress` + # @return [String] + attr_accessor :google_ip_address + + # [Output Only] Google reference ID; to be used when raising support tickets + # with Google or otherwise to debug backend connectivity issues. + # Corresponds to the JSON property `googleReferenceId` + # @return [String] + attr_accessor :google_reference_id + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] A list of the URLs of all InterconnectAttachments configured to + # use this Interconnect. + # Corresponds to the JSON property `interconnectAttachments` + # @return [Array] + attr_accessor :interconnect_attachments + + # + # Corresponds to the JSON property `interconnectType` + # @return [String] + attr_accessor :interconnect_type + + # [Output Only] Type of the resource. Always compute#interconnect for + # interconnects. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # + # Corresponds to the JSON property `linkType` + # @return [String] + attr_accessor :link_type + + # URL of the InterconnectLocation object that represents where this connection + # is to be provisioned. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Email address to contact the customer NOC for operations and maintenance + # notifications regarding this Interconnect. If specified, this will be used for + # notifications in addition to all other forms described, such as Stackdriver + # logs alerting and Cloud Notifications. + # Corresponds to the JSON property `nocContactEmail` + # @return [String] + attr_accessor :noc_contact_email + + # [Output Only] The current status of whether or not this Interconnect is + # functional. + # Corresponds to the JSON property `operationalStatus` + # @return [String] + attr_accessor :operational_status + + # [Output Only] IP address configured on the customer side of the Interconnect + # link. The customer should configure this IP address during turnup when + # prompted by Google NOC. This can be used only for ping tests. + # Corresponds to the JSON property `peerIpAddress` + # @return [String] + attr_accessor :peer_ip_address + + # [Output Only] Number of links actually provisioned in this interconnect. + # Corresponds to the JSON property `provisionedLinkCount` + # @return [Fixnum] + attr_accessor :provisioned_link_count + + # Target number of physical links in the link bundle, as requested by the + # customer. + # Corresponds to the JSON property `requestedLinkCount` + # @return [Fixnum] + attr_accessor :requested_link_count + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled) + @circuit_infos = args[:circuit_infos] if args.key?(:circuit_infos) + @connection_authorization = args[:connection_authorization] if args.key?(:connection_authorization) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @customer_name = args[:customer_name] if args.key?(:customer_name) + @description = args[:description] if args.key?(:description) + @expected_outages = args[:expected_outages] if args.key?(:expected_outages) + @google_ip_address = args[:google_ip_address] if args.key?(:google_ip_address) + @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id) + @id = args[:id] if args.key?(:id) + @interconnect_attachments = args[:interconnect_attachments] if args.key?(:interconnect_attachments) + @interconnect_type = args[:interconnect_type] if args.key?(:interconnect_type) + @kind = args[:kind] if args.key?(:kind) + @link_type = args[:link_type] if args.key?(:link_type) + @location = args[:location] if args.key?(:location) + @name = args[:name] if args.key?(:name) + @noc_contact_email = args[:noc_contact_email] if args.key?(:noc_contact_email) + @operational_status = args[:operational_status] if args.key?(:operational_status) + @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address) + @provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count) + @requested_link_count = args[:requested_link_count] if args.key?(:requested_link_count) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # Protocol definitions for Mixer API to support InterconnectAttachment. Next + # available tag: 14 + class InterconnectAttachment + include Google::Apis::Core::Hashable + + # [Output Only] IPv4 address + prefix length to be configured on Cloud Router + # Interface for this interconnect attachment. + # Corresponds to the JSON property `cloudRouterIpAddress` + # @return [String] + attr_accessor :cloud_router_ip_address + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] IPv4 address + prefix length to be configured on the customer + # router subinterface for this interconnect attachment. + # Corresponds to the JSON property `customerRouterIpAddress` + # @return [String] + attr_accessor :customer_router_ip_address + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Google reference ID, to be used when raising support tickets + # with Google or otherwise to debug backend connectivity issues. + # Corresponds to the JSON property `googleReferenceId` + # @return [String] + attr_accessor :google_reference_id + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # URL of the underlying Interconnect object that this attachment's traffic will + # traverse through. + # Corresponds to the JSON property `interconnect` + # @return [String] + attr_accessor :interconnect + + # [Output Only] Type of the resource. Always compute#interconnectAttachment for + # interconnect attachments. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The current status of whether or not this interconnect + # attachment is functional. + # Corresponds to the JSON property `operationalStatus` + # @return [String] + attr_accessor :operational_status + + # Private information for an interconnect attachment when this belongs to an + # interconnect of type IT_PRIVATE. + # Corresponds to the JSON property `privateInterconnectInfo` + # @return [Google::Apis::ComputeAlpha::InterconnectAttachmentPrivateInfo] + attr_accessor :private_interconnect_info + + # [Output Only] URL of the region where the regional interconnect attachment + # resides. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # URL of the cloud router to be used for dynamic routing. This router must be in + # the same region as this InterconnectAttachment. The InterconnectAttachment + # will automatically connect the Interconnect to the network & region within + # which the Cloud Router is configured. + # Corresponds to the JSON property `router` + # @return [String] + attr_accessor :router + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address) + @description = args[:description] if args.key?(:description) + @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id) + @id = args[:id] if args.key?(:id) + @interconnect = args[:interconnect] if args.key?(:interconnect) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @operational_status = args[:operational_status] if args.key?(:operational_status) + @private_interconnect_info = args[:private_interconnect_info] if args.key?(:private_interconnect_info) + @region = args[:region] if args.key?(:region) + @router = args[:router] if args.key?(:router) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class InterconnectAttachmentAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InterconnectAttachmentsScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute# + # interconnectAttachmentAggregatedList for aggregated lists of interconnect + # attachments. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Response to the list request, and contains a list of interconnect attachments. + class InterconnectAttachmentList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InterconnectAttachment resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#interconnectAttachmentList for + # lists of interconnect attachments. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InterconnectAttachmentList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Private information for an interconnect attachment when this belongs to an + # interconnect of type IT_PRIVATE. + class InterconnectAttachmentPrivateInfo + include Google::Apis::Core::Hashable + + # [Output Only] 802.1q encapsulation tag to be used for traffic between Google + # and the customer, going to and from this network and region. + # Corresponds to the JSON property `tag8021q` + # @return [Fixnum] + attr_accessor :tag8021q + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @tag8021q = args[:tag8021q] if args.key?(:tag8021q) + end + end + + # + class InterconnectAttachmentsScopedList + include Google::Apis::Core::Hashable + + # List of interconnect attachments contained in this scope. + # Corresponds to the JSON property `interconnectAttachments` + # @return [Array] + attr_accessor :interconnect_attachments + + # Informational warning which replaces the list of addresses when the list is + # empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InterconnectAttachmentsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @interconnect_attachments = args[:interconnect_attachments] if args.key?(:interconnect_attachments) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of addresses when the list is + # empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Describes a single physical circuit between the Customer and Google. + # CircuitInfo objects are created by Google, so all fields are output only. Next + # id: 4 + class InterconnectCircuitInfo + include Google::Apis::Core::Hashable + + # Customer-side demarc ID for this circuit. This will only be set if it was + # provided by the Customer to Google during circuit turn-up. + # Corresponds to the JSON property `customerDemarcId` + # @return [String] + attr_accessor :customer_demarc_id + + # Google-assigned unique ID for this circuit. Assigned at circuit turn-up. + # Corresponds to the JSON property `googleCircuitId` + # @return [String] + attr_accessor :google_circuit_id + + # Google-side demarc ID for this circuit. Assigned at circuit turn-up and + # provided by Google to the customer in the LOA. + # Corresponds to the JSON property `googleDemarcId` + # @return [String] + attr_accessor :google_demarc_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @customer_demarc_id = args[:customer_demarc_id] if args.key?(:customer_demarc_id) + @google_circuit_id = args[:google_circuit_id] if args.key?(:google_circuit_id) + @google_demarc_id = args[:google_demarc_id] if args.key?(:google_demarc_id) + end + end + + # Response to the list request, and contains a list of interconnects. + class InterconnectList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Interconnect resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#interconnectList for lists of + # interconnects. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InterconnectList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Protocol definitions for Mixer API to support InterconnectLocation. + class InterconnectLocation + include Google::Apis::Core::Hashable + + # [Output Only] The postal address of the Point of Presence, each line in the + # address is separated by a newline character. + # Corresponds to the JSON property `address` + # @return [String] + attr_accessor :address + + # Availability zone for this location. Within a city, maintenance will not be + # simultaneously scheduled in more than one availability zone. Example: "zone1" + # or "zone2". + # Corresponds to the JSON property `availabilityZone` + # @return [String] + attr_accessor :availability_zone + + # City designator used by the Interconnect UI to locate this + # InterconnectLocation within the Continent. For example: "Chicago, IL", " + # Amsterdam, Netherlands". + # Corresponds to the JSON property `city` + # @return [String] + attr_accessor :city + + # Continent for this location. Used by the location picker in the Interconnect + # UI. + # Corresponds to the JSON property `continent` + # @return [String] + attr_accessor :continent + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] An optional description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The name of the provider for this facility (e.g., EQUINIX). + # Corresponds to the JSON property `facilityProvider` + # @return [String] + attr_accessor :facility_provider + + # [Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn- + # DC1). + # Corresponds to the JSON property `facilityProviderFacilityId` + # @return [String] + attr_accessor :facility_provider_facility_id + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#interconnectLocation for + # interconnect locations. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The peeringdb identifier for this facility (corresponding with a + # netfac type in peeringdb). + # Corresponds to the JSON property `peeringdbFacilityId` + # @return [String] + attr_accessor :peeringdb_facility_id + + # [Output Only] A list of InterconnectLocation.RegionInfo objects, that describe + # parameters pertaining to the relation between this InterconnectLocation and + # various Google Cloud regions. + # Corresponds to the JSON property `regionInfos` + # @return [Array] + attr_accessor :region_infos + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @address = args[:address] if args.key?(:address) + @availability_zone = args[:availability_zone] if args.key?(:availability_zone) + @city = args[:city] if args.key?(:city) + @continent = args[:continent] if args.key?(:continent) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @facility_provider = args[:facility_provider] if args.key?(:facility_provider) + @facility_provider_facility_id = args[:facility_provider_facility_id] if args.key?(:facility_provider_facility_id) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @peeringdb_facility_id = args[:peeringdb_facility_id] if args.key?(:peeringdb_facility_id) + @region_infos = args[:region_infos] if args.key?(:region_infos) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # Response to the list request, and contains a list of interconnect locations. + class InterconnectLocationList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InterconnectLocation resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#interconnectLocationList for + # lists of interconnect locations. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::InterconnectLocationList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Information about any potential InterconnectAttachments between an + # Interconnect at a specific InterconnectLocation, and a specific Cloud Region. + class InterconnectLocationRegionInfo + include Google::Apis::Core::Hashable + + # Expected round-trip time in milliseconds, from this InterconnectLocation to a + # VM in this region. + # Corresponds to the JSON property `expectedRttMs` + # @return [Fixnum] + attr_accessor :expected_rtt_ms + + # Identifies the network presence of this location. + # Corresponds to the JSON property `locationPresence` + # @return [String] + attr_accessor :location_presence + + # URL for the region of this location. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # Scope key for the region of this location. + # Corresponds to the JSON property `regionKey` + # @return [String] + attr_accessor :region_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @expected_rtt_ms = args[:expected_rtt_ms] if args.key?(:expected_rtt_ms) + @location_presence = args[:location_presence] if args.key?(:location_presence) + @region = args[:region] if args.key?(:region) + @region_key = args[:region_key] if args.key?(:region_key) + end + end + + # Description of a planned outage on this Interconnect. Next id: 9 + class InterconnectOutageNotification + include Google::Apis::Core::Hashable + + # Iff issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs + # that will be affected. + # Corresponds to the JSON property `affectedCircuits` + # @return [Array] + attr_accessor :affected_circuits + + # Short user-visible description of the purpose of the outage. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # + # Corresponds to the JSON property `endTime` + # @return [Fixnum] + attr_accessor :end_time + + # + # Corresponds to the JSON property `issueType` + # @return [String] + attr_accessor :issue_type + + # Unique identifier for this outage notification. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # + # Corresponds to the JSON property `source` + # @return [String] + attr_accessor :source + + # Scheduled start and end times for the outage (milliseconds since Unix epoch). + # Corresponds to the JSON property `startTime` + # @return [Fixnum] + attr_accessor :start_time + + # + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @affected_circuits = args[:affected_circuits] if args.key?(:affected_circuits) + @description = args[:description] if args.key?(:description) + @end_time = args[:end_time] if args.key?(:end_time) + @issue_type = args[:issue_type] if args.key?(:issue_type) + @name = args[:name] if args.key?(:name) + @source = args[:source] if args.key?(:source) + @start_time = args[:start_time] if args.key?(:start_time) + @state = args[:state] if args.key?(:state) + end + end + + # + class InternalIpOwner + include Google::Apis::Core::Hashable + + # IP CIDR range being owned. + # Corresponds to the JSON property `ipCidrRange` + # @return [String] + attr_accessor :ip_cidr_range + + # URLs of the IP owners of the IP CIDR range. + # Corresponds to the JSON property `owners` + # @return [Array] + attr_accessor :owners + + # Whether this IP CIDR range is reserved for system use. + # Corresponds to the JSON property `systemOwned` + # @return [Boolean] + attr_accessor :system_owned + alias_method :system_owned?, :system_owned + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range) + @owners = args[:owners] if args.key?(:owners) + @system_owned = args[:system_owned] if args.key?(:system_owned) + end + end + + # Contains a list of IP owners. + class IpOwnerList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InternalIpOwner resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#ipOwnerList for lists of IP + # owners. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::IpOwnerList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A license resource. + class License + include Google::Apis::Core::Hashable + + # [Output Only] Deprecated. This field no longer reflects whether a license + # charges a usage fee. + # Corresponds to the JSON property `chargesUseFee` + # @return [Boolean] + attr_accessor :charges_use_fee + alias_method :charges_use_fee?, :charges_use_fee + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of resource. Always compute#license for licenses. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] The unique code used to attach this license to images, snapshots, + # and disks. + # Corresponds to the JSON property `licenseCode` + # @return [Fixnum] + attr_accessor :license_code + + # [Output Only] Name of the resource. The name is 1-63 characters long and + # complies with RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # + # Corresponds to the JSON property `resourceRequirements` + # @return [Google::Apis::ComputeAlpha::LicenseResourceRequirements] + attr_accessor :resource_requirements + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # If false, licenses will not be copied from the source resource when creating + # an image from a disk, disk from snapshot, or snapshot from disk. + # Corresponds to the JSON property `transferable` + # @return [Boolean] + attr_accessor :transferable + alias_method :transferable?, :transferable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @charges_use_fee = args[:charges_use_fee] if args.key?(:charges_use_fee) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @license_code = args[:license_code] if args.key?(:license_code) + @name = args[:name] if args.key?(:name) + @resource_requirements = args[:resource_requirements] if args.key?(:resource_requirements) + @self_link = args[:self_link] if args.key?(:self_link) + @transferable = args[:transferable] if args.key?(:transferable) + end + end + + # + class LicenseCode + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] Description of this License Code. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of resource. Always compute#licenseCode for licenses. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] URL and description aliases of Licenses with the same License + # Code. + # Corresponds to the JSON property `licenseAlias` + # @return [Array] + attr_accessor :license_alias + + # [Output Only] Name of the resource. The name is 1-20 characters long and must + # be a valid 64 bit integer. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Current state of this License Code. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # [Output Only] If true, the license will remain attached when creating images + # or snapshots from disks. Otherwise, the license is not transferred. + # Corresponds to the JSON property `transferable` + # @return [Boolean] + attr_accessor :transferable + alias_method :transferable?, :transferable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @license_alias = args[:license_alias] if args.key?(:license_alias) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @state = args[:state] if args.key?(:state) + @transferable = args[:transferable] if args.key?(:transferable) + end + end + + # + class LicenseCodeLicenseAlias + include Google::Apis::Core::Hashable + + # [Output Only] Description of this License Code. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] URL of license corresponding to this License Code. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class LicenseResourceRequirements + include Google::Apis::Core::Hashable + + # Minimum number of guest cpus required to use the Instance. Enforced at + # Instance creation and Instance start. + # Corresponds to the JSON property `minGuestCpuCount` + # @return [Fixnum] + attr_accessor :min_guest_cpu_count + + # Minimum memory required to use the Instance. Enforced at Instance creation and + # Instance start. + # Corresponds to the JSON property `minMemoryMb` + # @return [Fixnum] + attr_accessor :min_memory_mb + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @min_guest_cpu_count = args[:min_guest_cpu_count] if args.key?(:min_guest_cpu_count) + @min_memory_mb = args[:min_memory_mb] if args.key?(:min_memory_mb) + end + end + + # + class LicensesListResponse + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of License resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::LicensesListResponse::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Specifies what kind of log the caller must write + class LogConfig + include Google::Apis::Core::Hashable + + # Write a Cloud Audit log + # Corresponds to the JSON property `cloudAudit` + # @return [Google::Apis::ComputeAlpha::LogConfigCloudAuditOptions] + attr_accessor :cloud_audit + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, and end in " + # _count". Field names should not contain an initial slash. The actual exported + # metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are their + # respective values. + # At present the only supported field names are - "iam_principal", corresponding + # to IAMContext.principal; - "" (empty string), resulting in one aggretated + # counter with no field. + # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==> + # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value + # of IAMContext.principal]` + # At this time we do not support: * multiple field names (though this may be + # supported in the future) * decrementing the counter * incrementing it by + # anything other than 1 + # Corresponds to the JSON property `counter` + # @return [Google::Apis::ComputeAlpha::LogConfigCounterOptions] + attr_accessor :counter + + # Write a Data Access (Gin) log + # Corresponds to the JSON property `dataAccess` + # @return [Google::Apis::ComputeAlpha::LogConfigDataAccessOptions] + attr_accessor :data_access + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit) + @counter = args[:counter] if args.key?(:counter) + @data_access = args[:data_access] if args.key?(:data_access) + end + end + + # Write a Cloud Audit log + class LogConfigCloudAuditOptions + include Google::Apis::Core::Hashable + + # Authorization-related information used by Cloud Audit Logging. + # Corresponds to the JSON property `authorizationLoggingOptions` + # @return [Google::Apis::ComputeAlpha::AuthorizationLoggingOptions] + attr_accessor :authorization_logging_options + + # The log_name to populate in the Cloud Audit Record. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @authorization_logging_options = args[:authorization_logging_options] if args.key?(:authorization_logging_options) + @log_name = args[:log_name] if args.key?(:log_name) + end + end + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, and end in " + # _count". Field names should not contain an initial slash. The actual exported + # metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are their + # respective values. + # At present the only supported field names are - "iam_principal", corresponding + # to IAMContext.principal; - "" (empty string), resulting in one aggretated + # counter with no field. + # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==> + # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value + # of IAMContext.principal]` + # At this time we do not support: * multiple field names (though this may be + # supported in the future) * decrementing the counter * incrementing it by + # anything other than 1 + class LogConfigCounterOptions + include Google::Apis::Core::Hashable + + # The field value to attribute. + # Corresponds to the JSON property `field` + # @return [String] + attr_accessor :field + + # The metric to update. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + @metric = args[:metric] if args.key?(:metric) + end + end + + # Write a Data Access (Gin) log + class LogConfigDataAccessOptions + include Google::Apis::Core::Hashable + + # Whether Gin logging should happen in a fail-closed manner at the caller. This + # is relevant only in the LocalIAM implementation, for now. + # Corresponds to the JSON property `logMode` + # @return [String] + attr_accessor :log_mode + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_mode = args[:log_mode] if args.key?(:log_mode) + end + end + + # A Machine Type resource. + class MachineType + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Deprecation status for a public resource. + # Corresponds to the JSON property `deprecated` + # @return [Google::Apis::ComputeAlpha::DeprecationStatus] + attr_accessor :deprecated + + # [Output Only] An optional textual description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The number of virtual CPUs that are available to the instance. + # Corresponds to the JSON property `guestCpus` + # @return [Fixnum] + attr_accessor :guest_cpus + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Whether this machine type has a shared CPU. See Shared-core + # machine types for more information. + # Corresponds to the JSON property `isSharedCpu` + # @return [Boolean] + attr_accessor :is_shared_cpu + alias_method :is_shared_cpu?, :is_shared_cpu + + # [Output Only] The type of the resource. Always compute#machineType for machine + # types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Maximum persistent disks allowed. + # Corresponds to the JSON property `maximumPersistentDisks` + # @return [Fixnum] + attr_accessor :maximum_persistent_disks + + # [Output Only] Maximum total persistent disks size (GB) allowed. + # Corresponds to the JSON property `maximumPersistentDisksSizeGb` + # @return [Fixnum] + attr_accessor :maximum_persistent_disks_size_gb + + # [Output Only] The amount of physical memory available to the instance, defined + # in MB. + # Corresponds to the JSON property `memoryMb` + # @return [Fixnum] + attr_accessor :memory_mb + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The name of the zone where the machine type resides, such as us- + # central1-a. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @description = args[:description] if args.key?(:description) + @guest_cpus = args[:guest_cpus] if args.key?(:guest_cpus) + @id = args[:id] if args.key?(:id) + @is_shared_cpu = args[:is_shared_cpu] if args.key?(:is_shared_cpu) + @kind = args[:kind] if args.key?(:kind) + @maximum_persistent_disks = args[:maximum_persistent_disks] if args.key?(:maximum_persistent_disks) + @maximum_persistent_disks_size_gb = args[:maximum_persistent_disks_size_gb] if args.key?(:maximum_persistent_disks_size_gb) + @memory_mb = args[:memory_mb] if args.key?(:memory_mb) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class MachineTypeAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of MachineTypesScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#machineTypeAggregatedList for + # aggregated lists of machine types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::MachineTypeAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of machine types. + class MachineTypeList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of MachineType resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#machineTypeList for lists of + # machine types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::MachineTypeList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class MachineTypesScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of machine types contained in this scope. + # Corresponds to the JSON property `machineTypes` + # @return [Array] + attr_accessor :machine_types + + # [Output Only] An informational warning that appears when the machine types + # list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::MachineTypesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @machine_types = args[:machine_types] if args.key?(:machine_types) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] An informational warning that appears when the machine types + # list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class ManagedInstance + include Google::Apis::Core::Hashable + + # [Output Only] The current action that the managed instance group has scheduled + # for the instance. Possible values: + # - NONE The instance is running, and the managed instance group does not have + # any scheduled actions for this instance. + # - 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. + # - 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. + # - RECREATING The managed instance group is recreating this instance. + # - DELETING The managed instance group is permanently deleting this instance. + # - 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. + # - RESTARTING The managed instance group is restarting the instance. + # - 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. + # Corresponds to the JSON property `currentAction` + # @return [String] + attr_accessor :current_action + + # [Output only] The unique identifier for this resource. This field is empty + # when instance does not exist. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The URL of the instance. The URL can exist even if the instance + # has not yet been created. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # [Output Only] The status of the instance. This field is empty when the + # instance does not exist. + # Corresponds to the JSON property `instanceStatus` + # @return [String] + attr_accessor :instance_status + + # [Output Only] The intended template of the instance. This field is empty when + # current_action is one of ` DELETING, ABANDONING `. + # Corresponds to the JSON property `instanceTemplate` + # @return [String] + attr_accessor :instance_template + + # [Output Only] Information about the last attempt to create or delete the + # instance. + # Corresponds to the JSON property `lastAttempt` + # @return [Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt] + attr_accessor :last_attempt + + # Overrides of stateful properties for a given instance + # Corresponds to the JSON property `override` + # @return [Google::Apis::ComputeAlpha::ManagedInstanceOverride] + attr_accessor :override + + # [Output Only] Standby mode of the instance. This field is non-empty iff the + # instance is a standby. + # Corresponds to the JSON property `standbyMode` + # @return [String] + attr_accessor :standby_mode + + # [Output Only] Tag describing the version. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + # [Output Only] Intended version of this instance. + # Corresponds to the JSON property `version` + # @return [Google::Apis::ComputeAlpha::ManagedInstanceVersion] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @current_action = args[:current_action] if args.key?(:current_action) + @id = args[:id] if args.key?(:id) + @instance = args[:instance] if args.key?(:instance) + @instance_status = args[:instance_status] if args.key?(:instance_status) + @instance_template = args[:instance_template] if args.key?(:instance_template) + @last_attempt = args[:last_attempt] if args.key?(:last_attempt) + @override = args[:override] if args.key?(:override) + @standby_mode = args[:standby_mode] if args.key?(:standby_mode) + @tag = args[:tag] if args.key?(:tag) + @version = args[:version] if args.key?(:version) + end + end + + # + class ManagedInstanceLastAttempt + include Google::Apis::Core::Hashable + + # [Output Only] Encountered errors during the last attempt to create or delete + # the instance. + # Corresponds to the JSON property `errors` + # @return [Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt::Errors] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # [Output Only] Encountered errors during the last attempt to create or delete + # the instance. + class Errors + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + end + + # Overrides of stateful properties for a given instance + class ManagedInstanceOverride + include Google::Apis::Core::Hashable + + # Disk overrides defined for this instance + # Corresponds to the JSON property `disks` + # @return [Array] + attr_accessor :disks + + # [Output Only] Indicates where does the override come from. + # Corresponds to the JSON property `origin` + # @return [String] + attr_accessor :origin + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disks = args[:disks] if args.key?(:disks) + @origin = args[:origin] if args.key?(:origin) + end + end + + # + class ManagedInstanceOverrideDiskOverride + include Google::Apis::Core::Hashable + + # The name of the device on the VM + # Corresponds to the JSON property `deviceName` + # @return [String] + attr_accessor :device_name + + # 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. + # Corresponds to the JSON property `mode` + # @return [String] + attr_accessor :mode + + # The disk that is/will be mounted + # Corresponds to the JSON property `source` + # @return [String] + attr_accessor :source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @device_name = args[:device_name] if args.key?(:device_name) + @mode = args[:mode] if args.key?(:mode) + @source = args[:source] if args.key?(:source) + end + end + + # + class ManagedInstanceVersion + include Google::Apis::Core::Hashable + + # [Output Only] The intended template of the instance. This field is empty when + # current_action is one of ` DELETING, ABANDONING `. + # Corresponds to the JSON property `instanceTemplate` + # @return [String] + attr_accessor :instance_template + + # [Output Only] Name of the version. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_template = args[:instance_template] if args.key?(:instance_template) + @name = args[:name] if args.key?(:name) + end + end + + # A metadata key/value entry. + class Metadata + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # Array of key/value pairs. The total size of all keys and values must be less + # than 512 KB. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of the resource. Always compute#metadata for metadata. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + + # + class Item + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Value for the metadata entry. These are free-form strings, and only have + # meaning as interpreted by the image running in the instance. The only + # restriction placed on values is that their size must be less than or equal to + # 262144 bytes (256 KiB). + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + + # The named port. For example: . + class NamedPort + include Google::Apis::Core::Hashable + + # The name for this named port. The name must be 1-63 characters long, and + # comply with RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The port number, which can be a value between 1 and 65535. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @port = args[:port] if args.key?(:port) + end + end + + # Represents a Network resource. Read Networks and Firewalls for more + # information. + class Network + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `IPv4Range` + # @return [String] + attr_accessor :i_pv4_range + + # When set to true, the network is created in "auto subnet mode". When set to + # false, the network is in "custom subnet mode". + # In "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. + # Corresponds to the JSON property `autoCreateSubnetworks` + # @return [Boolean] + attr_accessor :auto_create_subnetworks + alias_method :auto_create_subnetworks?, :auto_create_subnetworks + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] Type of VM-to-VM traffic encryption for this network. + # Corresponds to the JSON property `crossVmEncryption` + # @return [String] + attr_accessor :cross_vm_encryption + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `gatewayIPv4` + # @return [String] + attr_accessor :gateway_i_pv4 + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#network for networks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Type of LB-to-VM traffic encryption for this network. + # Corresponds to the JSON property `loadBalancerVmEncryption` + # @return [String] + attr_accessor :load_balancer_vm_encryption + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] List of network peerings for the resource. + # Corresponds to the JSON property `peerings` + # @return [Array] + attr_accessor :peerings + + # A routing configuration attached to a network resource. The message includes + # the list of routers associated with the network, and a flag indicating the + # type of routing behavior to enforce network-wide. + # Corresponds to the JSON property `routingConfig` + # @return [Google::Apis::ComputeAlpha::NetworkRoutingConfig] + attr_accessor :routing_config + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Server-defined fully-qualified URLs for all subnetworks in this + # network. + # Corresponds to the JSON property `subnetworks` + # @return [Array] + attr_accessor :subnetworks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @i_pv4_range = args[:i_pv4_range] if args.key?(:i_pv4_range) + @auto_create_subnetworks = args[:auto_create_subnetworks] if args.key?(:auto_create_subnetworks) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @cross_vm_encryption = args[:cross_vm_encryption] if args.key?(:cross_vm_encryption) + @description = args[:description] if args.key?(:description) + @gateway_i_pv4 = args[:gateway_i_pv4] if args.key?(:gateway_i_pv4) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @load_balancer_vm_encryption = args[:load_balancer_vm_encryption] if args.key?(:load_balancer_vm_encryption) + @name = args[:name] if args.key?(:name) + @peerings = args[:peerings] if args.key?(:peerings) + @routing_config = args[:routing_config] if args.key?(:routing_config) + @self_link = args[:self_link] if args.key?(:self_link) + @subnetworks = args[:subnetworks] if args.key?(:subnetworks) + end + end + + # The network endpoint. + class NetworkEndpoint + include Google::Apis::Core::Hashable + + # The name for a specific VM instance that the IP address belongs to. This is + # required for network endpoints of type GCE_VM_IP and GCE_VM_IP_PORT. The + # instance must be in the same zone of network endpoint group. + # The name must be 1-63 characters long, and comply with RFC1035. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # Optional IPv4 address of network endpoint. The IP address must belong to a VM + # in GCE (either the primary IP or as part of an aliased IP range). If the IP + # address is not specified, then the primary IP address for the VM instance in + # the network that the network endpoint group belongs to will be used. + # Corresponds to the JSON property `ipAddress` + # @return [String] + attr_accessor :ip_address + + # Optional port number of network endpoint. If not specified and the + # NetworkEndpointGroup.network_endpoint_type is GCE_IP_PORT, the defaultPort for + # the network endpoint group will be used. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance = args[:instance] if args.key?(:instance) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @port = args[:port] if args.key?(:port) + end + end + + # Represents a collection of network endpoints. + class NetworkEndpointGroup + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#networkEndpointGroup for + # network endpoint group. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Load balancing specific fields for network endpoint group of type + # LOAD_BALANCING. + # Corresponds to the JSON property `loadBalancer` + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupLbNetworkEndpointGroup] + attr_accessor :load_balancer + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Type of network endpoints in this network endpoint group. Only supported + # values for LOAD_BALANCING are GCE_VM_IP or GCE_VM_IP_PORT. + # Corresponds to the JSON property `networkEndpointType` + # @return [String] + attr_accessor :network_endpoint_type + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output only] Number of network endpoints in the network endpoint group. + # Corresponds to the JSON property `size` + # @return [Fixnum] + attr_accessor :size + + # Specify the type of this network endpoint group. Only LOAD_BALANCING is valid + # for now. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @load_balancer = args[:load_balancer] if args.key?(:load_balancer) + @name = args[:name] if args.key?(:name) + @network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type) + @self_link = args[:self_link] if args.key?(:self_link) + @size = args[:size] if args.key?(:size) + @type = args[:type] if args.key?(:type) + end + end + + # + class NetworkEndpointGroupAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of NetworkEndpointGroupsScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # networkEndpointGroupAggregatedList for aggregated lists of network endpoint + # groups. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Load balancing specific fields for network endpoint group of type + # LOAD_BALANCING. + class NetworkEndpointGroupLbNetworkEndpointGroup + include Google::Apis::Core::Hashable + + # The default port used if the port number is not specified in the network + # endpoint. If the network endpoint type is GCE_VM_IP, this field must not be + # specified. + # Corresponds to the JSON property `defaultPort` + # @return [Fixnum] + attr_accessor :default_port + + # The URL of the network to which all network endpoints in the NEG belong. Uses " + # default" project network if unspecified. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # Optional URL of the subnetwork to which all network endpoints in the NEG + # belong. + # Corresponds to the JSON property `subnetwork` + # @return [String] + attr_accessor :subnetwork + + # [Output Only] The URL of the zone where the network endpoint group is located. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @default_port = args[:default_port] if args.key?(:default_port) + @network = args[:network] if args.key?(:network) + @subnetwork = args[:subnetwork] if args.key?(:subnetwork) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class NetworkEndpointGroupList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of NetworkEndpointGroup resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # networkEndpointGroupList for network endpoint group lists. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class NetworkEndpointGroupsAttachEndpointsRequest + include Google::Apis::Core::Hashable + + # The list of network endpoints to be attached. + # Corresponds to the JSON property `networkEndpoints` + # @return [Array] + attr_accessor :network_endpoints + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @network_endpoints = args[:network_endpoints] if args.key?(:network_endpoints) + end + end + + # + class NetworkEndpointGroupsDetachEndpointsRequest + include Google::Apis::Core::Hashable + + # The list of network endpoints to be detached. + # Corresponds to the JSON property `networkEndpoints` + # @return [Array] + attr_accessor :network_endpoints + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @network_endpoints = args[:network_endpoints] if args.key?(:network_endpoints) + end + end + + # + class NetworkEndpointGroupsListEndpointsRequest + include Google::Apis::Core::Hashable + + # Optional query parameter for showing the health status of each network + # endpoint. Valid options are SKIP or SHOW. If you don't specifiy this parameter, + # the health status of network endpoints will not be provided. + # Corresponds to the JSON property `healthStatus` + # @return [String] + attr_accessor :health_status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_status = args[:health_status] if args.key?(:health_status) + end + end + + # + class NetworkEndpointGroupsListNetworkEndpoints + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of NetworkEndpointWithHealthStatus resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # networkEndpointGroupsListNetworkEndpoints for the list of network endpoints in + # the specified network endpoint group. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class NetworkEndpointGroupsScopedList + include Google::Apis::Core::Hashable + + # [Output Only] The list of network endpoint groups that are contained in this + # scope. + # Corresponds to the JSON property `networkEndpointGroups` + # @return [Array] + attr_accessor :network_endpoint_groups + + # [Output Only] An informational warning that replaces the list of network + # endpoint groups when the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @network_endpoint_groups = args[:network_endpoint_groups] if args.key?(:network_endpoint_groups) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] An informational warning that replaces the list of network + # endpoint groups when the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class NetworkEndpointWithHealthStatus + include Google::Apis::Core::Hashable + + # [Output only] The health status of network endpoint; + # Corresponds to the JSON property `healths` + # @return [Array] + attr_accessor :healths + + # The network endpoint. + # Corresponds to the JSON property `networkEndpoint` + # @return [Google::Apis::ComputeAlpha::NetworkEndpoint] + attr_accessor :network_endpoint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @healths = args[:healths] if args.key?(:healths) + @network_endpoint = args[:network_endpoint] if args.key?(:network_endpoint) + end + end + + # A network interface resource attached to an instance. + class NetworkInterface + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `accessConfigs` + # @return [Array] + attr_accessor :access_configs + + # An array of alias IP ranges for this network interface. Can only be specified + # for network interfaces on subnet-mode networks. + # Corresponds to the JSON property `aliasIpRanges` + # @return [Array] + attr_accessor :alias_ip_ranges + + # Fingerprint hash of contents stored in this network interface. This field will + # be ignored when inserting an Instance or adding a NetworkInterface. An up-to- + # date fingerprint must be provided in order to update the NetworkInterface. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # [Output Only] Type of the resource. Always compute#networkInterface for + # network interfaces. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] The name of the network interface, generated by the server. For + # network devices, these are eth0, eth1, etc. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # URL of the network resource for this instance. When creating an instance, if + # neither the network nor the subnetwork is specified, the default network + # global/networks/default is used; if the network is not specified but the + # subnetwork is specified, the network is inferred. + # This field is optional when creating a firewall rule. If not specified when + # creating a firewall rule, the default network global/networks/default is used. + # If you specify this property, you can specify the network as a full or partial + # URL. For example, the following are all valid URLs: + # - https://www.googleapis.com/compute/v1/projects/project/global/networks/ + # network + # - projects/project/global/networks/network + # - global/networks/default + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # 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. + # Corresponds to the JSON property `networkIP` + # @return [String] + attr_accessor :network_ip + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/regions/region/ + # subnetworks/subnetwork + # - regions/region/subnetworks/subnetwork + # Corresponds to the JSON property `subnetwork` + # @return [String] + attr_accessor :subnetwork + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_configs = args[:access_configs] if args.key?(:access_configs) + @alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @network_ip = args[:network_ip] if args.key?(:network_ip) + @subnetwork = args[:subnetwork] if args.key?(:subnetwork) + end + end + + # Contains a list of networks. + class NetworkList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Network resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#networkList for lists of + # networks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::NetworkList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A network peering attached to a network resource. The message includes the + # peering name, peer network, peering state, and a flag indicating whether + # Google Compute Engine should automatically create routes for the peering. + class NetworkPeering + include Google::Apis::Core::Hashable + + # Whether full mesh connectivity is created and managed automatically. When it + # is set to true, Google Compute Engine will automatically create and manage the + # routes between two networks when the state is ACTIVE. Otherwise, user needs to + # create routes manually to route packets to peer network. + # Corresponds to the JSON property `autoCreateRoutes` + # @return [Boolean] + attr_accessor :auto_create_routes + alias_method :auto_create_routes?, :auto_create_routes + + # Name of this peering. Provided by the client when the peering is created. The + # name must comply with RFC1035. Specifically, the name must be 1-63 characters + # long and match regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the + # first character must be a lowercase letter, and all the following characters + # must be a dash, lowercase letter, or digit, except the last character, which + # cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The URL of the peer network. It can be either full URL or partial URL. The + # peer network may belong to a different project. If the partial URL does not + # contain project, it is assumed that the peer network is in the same project as + # the current network. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # [Output Only] State for the peering. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # [Output Only] Details about the current state of the peering. + # Corresponds to the JSON property `stateDetails` + # @return [String] + attr_accessor :state_details + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_create_routes = args[:auto_create_routes] if args.key?(:auto_create_routes) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @state = args[:state] if args.key?(:state) + @state_details = args[:state_details] if args.key?(:state_details) + end + end + + # A routing configuration attached to a network resource. The message includes + # the list of routers associated with the network, and a flag indicating the + # type of routing behavior to enforce network-wide. + class NetworkRoutingConfig + include Google::Apis::Core::Hashable + + # The network-wide routing mode to use. If set to REGIONAL, this network's cloud + # routers will only advertise routes with subnetworks of this network in the + # same region as the router. If set to GLOBAL, this network's cloud routers will + # advertise routes with all subnetworks of this network, across regions. + # Corresponds to the JSON property `routingMode` + # @return [String] + attr_accessor :routing_mode + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @routing_mode = args[:routing_mode] if args.key?(:routing_mode) + end + end + + # + class NetworksAddPeeringRequest + include Google::Apis::Core::Hashable + + # Whether Google Compute Engine manages the routes automatically. + # Corresponds to the JSON property `autoCreateRoutes` + # @return [Boolean] + attr_accessor :auto_create_routes + alias_method :auto_create_routes?, :auto_create_routes + + # Name of the peering, which should conform to RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # URL of the peer network. It can be either full URL or partial URL. The peer + # network may belong to a different project. If the partial URL does not contain + # project, it is assumed that the peer network is in the same project as the + # current network. + # Corresponds to the JSON property `peerNetwork` + # @return [String] + attr_accessor :peer_network + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_create_routes = args[:auto_create_routes] if args.key?(:auto_create_routes) + @name = args[:name] if args.key?(:name) + @peer_network = args[:peer_network] if args.key?(:peer_network) + end + end + + # + class NetworksRemovePeeringRequest + include Google::Apis::Core::Hashable + + # Name of the peering, which should conform to RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # An Operation resource, used to manage asynchronous API requests. + class Operation + include Google::Apis::Core::Hashable + + # [Output Only] Reserved for future use. + # Corresponds to the JSON property `clientOperationId` + # @return [String] + attr_accessor :client_operation_id + + # [Deprecated] This field is deprecated. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] A textual description of the operation, which is set when the + # operation is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The time that this operation was completed. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + # Corresponds to the JSON property `error` + # @return [Google::Apis::ComputeAlpha::Operation::Error] + attr_accessor :error + + # [Output Only] If the operation fails, this field contains the HTTP error + # message that was returned, such as NOT FOUND. + # Corresponds to the JSON property `httpErrorMessage` + # @return [String] + attr_accessor :http_error_message + + # [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. + # Corresponds to the JSON property `httpErrorStatusCode` + # @return [Fixnum] + attr_accessor :http_error_status_code + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The time that this operation was requested. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] Type of the resource. Always compute#operation for Operation + # resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The type of operation, such as insert, update, or delete, and so + # on. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # [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. + # Corresponds to the JSON property `progress` + # @return [Fixnum] + attr_accessor :progress + + # [Output Only] The URL of the region where the operation resides. Only + # available when performing regional operations. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The time that this operation was started by the server. This + # value is in RFC3339 text format. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # [Output Only] The status of the operation, which can be one of the following: + # PENDING, RUNNING, or DONE. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional textual description of the current status of the + # operation. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # [Output Only] The unique target ID, which identifies a specific incarnation of + # the target resource. + # Corresponds to the JSON property `targetId` + # @return [Fixnum] + attr_accessor :target_id + + # [Output Only] The URL of the resource that the operation modifies. For + # operations related to creating a snapshot, this points to the persistent disk + # that the snapshot was created from. + # Corresponds to the JSON property `targetLink` + # @return [String] + attr_accessor :target_link + + # [Output Only] User who requested the operation, for example: user@example.com. + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # [Output Only] If warning messages are generated during processing of the + # operation, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + # [Output Only] The URL of the zone where the operation resides. Only available + # when performing per-zone operations. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_operation_id = args[:client_operation_id] if args.key?(:client_operation_id) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @end_time = args[:end_time] if args.key?(:end_time) + @error = args[:error] if args.key?(:error) + @http_error_message = args[:http_error_message] if args.key?(:http_error_message) + @http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @progress = args[:progress] if args.key?(:progress) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @target_id = args[:target_id] if args.key?(:target_id) + @target_link = args[:target_link] if args.key?(:target_link) + @user = args[:user] if args.key?(:user) + @warnings = args[:warnings] if args.key?(:warnings) + @zone = args[:zone] if args.key?(:zone) + end + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class OperationAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A map of scoped operation lists. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#operationAggregatedList for + # aggregated lists of operations. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::OperationAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of Operation resources. + class OperationList + include Google::Apis::Core::Hashable + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of Operation resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#operations for Operations + # resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::OperationList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class OperationsScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of operations contained in this scope. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + # [Output Only] Informational warning which replaces the list of operations when + # the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::OperationsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operations = args[:operations] if args.key?(:operations) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of operations when + # the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # 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. + class PathMatcher + include Google::Apis::Core::Hashable + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/global/ + # backendServices/backendService + # - compute/v1/projects/project/global/backendServices/backendService + # - global/backendServices/backendService + # Corresponds to the JSON property `defaultService` + # @return [String] + attr_accessor :default_service + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The name to which this PathMatcher is referred by the HostRule. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The list of path rules. + # Corresponds to the JSON property `pathRules` + # @return [Array] + attr_accessor :path_rules + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @default_service = args[:default_service] if args.key?(:default_service) + @description = args[:description] if args.key?(:description) + @name = args[:name] if args.key?(:name) + @path_rules = args[:path_rules] if args.key?(:path_rules) + end + end + + # A path-matching rule for a URL. If matched, will use the specified + # BackendService to handle the traffic arriving at this URL. + class PathRule + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `paths` + # @return [Array] + attr_accessor :paths + + # The URL of the BackendService resource if this rule is matched. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @paths = args[:paths] if args.key?(:paths) + @service = args[:service] if args.key?(:service) + end + end + + # + class PerInstanceConfig + include Google::Apis::Core::Hashable + + # The URL of the instance. Serves as a merge key during UpdatePerInstanceConfigs + # operation. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # Overrides of stateful properties for a given instance + # Corresponds to the JSON property `override` + # @return [Google::Apis::ComputeAlpha::ManagedInstanceOverride] + attr_accessor :override + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance = args[:instance] if args.key?(:instance) + @override = args[:override] if args.key?(:override) + end + end + + # 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). + class Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. `bindings` with no members will + # result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `iamOwned` + # @return [Boolean] + attr_accessor :iam_owned + alias_method :iam_owned?, :iam_owned + + # 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. + # Corresponds to the JSON property `rules` + # @return [Array] + attr_accessor :rules + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @iam_owned = args[:iam_owned] if args.key?(:iam_owned) + @rules = args[:rules] if args.key?(:rules) + @version = args[:version] if args.key?(:version) + end + end + + # 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. + class Project + include Google::Apis::Core::Hashable + + # A metadata key/value entry. + # Corresponds to the JSON property `commonInstanceMetadata` + # @return [Google::Apis::ComputeAlpha::Metadata] + attr_accessor :common_instance_metadata + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] Default service account used by VMs running in this project. + # Corresponds to the JSON property `defaultServiceAccount` + # @return [String] + attr_accessor :default_service_account + + # An optional textual description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Restricted features enabled for use on this project. + # Corresponds to the JSON property `enabledFeatures` + # @return [Array] + attr_accessor :enabled_features + + # [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. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#project for projects. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The project ID. For example: my-example-project. Use the project ID to make + # requests to Compute Engine. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Quotas assigned to this project. + # Corresponds to the JSON property `quotas` + # @return [Array] + attr_accessor :quotas + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The location in Cloud Storage and naming method of the daily usage report. + # Contains bucket_name and report_name prefix. + # Corresponds to the JSON property `usageExportLocation` + # @return [Google::Apis::ComputeAlpha::UsageExportLocation] + attr_accessor :usage_export_location + + # [Output Only] The role this project has in a shared VPC configuration. + # Currently only HOST projects are differentiated. + # Corresponds to the JSON property `xpnProjectStatus` + # @return [String] + attr_accessor :xpn_project_status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @common_instance_metadata = args[:common_instance_metadata] if args.key?(:common_instance_metadata) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @default_service_account = args[:default_service_account] if args.key?(:default_service_account) + @description = args[:description] if args.key?(:description) + @enabled_features = args[:enabled_features] if args.key?(:enabled_features) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @quotas = args[:quotas] if args.key?(:quotas) + @self_link = args[:self_link] if args.key?(:self_link) + @usage_export_location = args[:usage_export_location] if args.key?(:usage_export_location) + @xpn_project_status = args[:xpn_project_status] if args.key?(:xpn_project_status) + end + end + + # + class ProjectsDisableXpnResourceRequest + include Google::Apis::Core::Hashable + + # Service resource (a.k.a service project) ID. + # Corresponds to the JSON property `xpnResource` + # @return [Google::Apis::ComputeAlpha::XpnResourceId] + attr_accessor :xpn_resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @xpn_resource = args[:xpn_resource] if args.key?(:xpn_resource) + end + end + + # + class ProjectsEnableXpnResourceRequest + include Google::Apis::Core::Hashable + + # Service resource (a.k.a service project) ID. + # Corresponds to the JSON property `xpnResource` + # @return [Google::Apis::ComputeAlpha::XpnResourceId] + attr_accessor :xpn_resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @xpn_resource = args[:xpn_resource] if args.key?(:xpn_resource) + end + end + + # + class ProjectsGetXpnResources + include Google::Apis::Core::Hashable + + # [Output Only] Type of resource. Always compute#projectsGetXpnResources for + # lists of service resources (a.k.a service projects) + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Serive resources (a.k.a service projects) attached to this project as their + # shared VPC host. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resources = args[:resources] if args.key?(:resources) + end + end + + # + class ProjectsListXpnHostsRequest + include Google::Apis::Core::Hashable + + # Optional organization ID managed by Cloud Resource Manager, for which to list + # shared VPC host projects. If not specified, the organization will be inferred + # from the project. + # Corresponds to the JSON property `organization` + # @return [String] + attr_accessor :organization + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @organization = args[:organization] if args.key?(:organization) + end + end + + # + class ProjectsSetDefaultServiceAccountRequest + include Google::Apis::Core::Hashable + + # Email address of the service account. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + end + end + + # A quotas entry. + class Quota + include Google::Apis::Core::Hashable + + # [Output Only] Quota limit for this metric. + # Corresponds to the JSON property `limit` + # @return [Float] + attr_accessor :limit + + # [Output Only] Name of the quota metric. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + # [Output Only] Current usage of this metric. + # Corresponds to the JSON property `usage` + # @return [Float] + attr_accessor :usage + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @limit = args[:limit] if args.key?(:limit) + @metric = args[:metric] if args.key?(:metric) + @usage = args[:usage] if args.key?(:usage) + end + end + + # Represents a reference to a resource. + class Reference + include Google::Apis::Core::Hashable + + # [Output Only] Type of the resource. Always compute#reference for references. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # A description of the reference type with no implied semantics. Possible values + # include: + # - MEMBER_OF + # Corresponds to the JSON property `referenceType` + # @return [String] + attr_accessor :reference_type + + # URL of the resource which refers to the target. + # Corresponds to the JSON property `referrer` + # @return [String] + attr_accessor :referrer + + # URL of the resource to which this reference points. + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @reference_type = args[:reference_type] if args.key?(:reference_type) + @referrer = args[:referrer] if args.key?(:referrer) + @target = args[:target] if args.key?(:target) + end + end + + # Region resource. + class Region + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Deprecation status for a public resource. + # Corresponds to the JSON property `deprecated` + # @return [Google::Apis::ComputeAlpha::DeprecationStatus] + attr_accessor :deprecated + + # [Output Only] Textual description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#region for regions. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Quotas assigned to this region. + # Corresponds to the JSON property `quotas` + # @return [Array] + attr_accessor :quotas + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Status of the region, either UP or DOWN. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] A list of zones available in this region, in the form of + # resource URLs. + # Corresponds to the JSON property `zones` + # @return [Array] + attr_accessor :zones + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @quotas = args[:quotas] if args.key?(:quotas) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @zones = args[:zones] if args.key?(:zones) + end + end + + # Contains a list of autoscalers. + class RegionAutoscalerList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Autoscaler resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RegionAutoscalerList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class RegionDiskTypeList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of DiskType resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#regionDiskTypeList for region + # disk types. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RegionDiskTypeList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class RegionDisksResizeRequest + include Google::Apis::Core::Hashable + + # The new size of the regional persistent disk, which is specified in GB. + # Corresponds to the JSON property `sizeGb` + # @return [Fixnum] + attr_accessor :size_gb + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @size_gb = args[:size_gb] if args.key?(:size_gb) + end + end + + # Contains a list of InstanceGroup resources. + class RegionInstanceGroupList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceGroup resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # RegionInstanceGroupManagers.deletePerInstanceConfigs + class RegionInstanceGroupManagerDeleteInstanceConfigReq + include Google::Apis::Core::Hashable + + # The list of instances for which we want to delete per-instance configs on this + # managed instance group. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # Contains a list of managed instance groups. + class RegionInstanceGroupManagerList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceGroupManager resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] The resource type, which is always compute# + # instanceGroupManagerList for a list of managed instance groups that exist in + # th regional scope. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # RegionInstanceGroupManagers.updatePerInstanceConfigs + class RegionInstanceGroupManagerUpdateInstanceConfigReq + include Google::Apis::Core::Hashable + + # The list of per-instance configs to insert or patch on this managed instance + # group. + # Corresponds to the JSON property `perInstanceConfigs` + # @return [Array] + attr_accessor :per_instance_configs + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @per_instance_configs = args[:per_instance_configs] if args.key?(:per_instance_configs) + end + end + + # + class RegionInstanceGroupManagersAbandonInstancesRequest + include Google::Apis::Core::Hashable + + # The URLs of one or more instances to abandon. This can be a full URL or a + # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # InstanceGroupManagers.applyUpdatesToInstances + class RegionInstanceGroupManagersApplyUpdatesRequest + include Google::Apis::Core::Hashable + + # The list of instances for which we want to apply changes on this managed + # instance group. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # The maximal action that should be perfomed on the instances. By default + # REPLACE. + # Corresponds to the JSON property `maximalAction` + # @return [String] + attr_accessor :maximal_action + + # The minimal action that should be perfomed on the instances. By default NONE. + # Corresponds to the JSON property `minimalAction` + # @return [String] + attr_accessor :minimal_action + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + @maximal_action = args[:maximal_action] if args.key?(:maximal_action) + @minimal_action = args[:minimal_action] if args.key?(:minimal_action) + end + end + + # + class RegionInstanceGroupManagersDeleteInstancesRequest + include Google::Apis::Core::Hashable + + # The URLs of one or more instances to delete. This can be a full URL or a + # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class RegionInstanceGroupManagersListInstanceConfigsResp + include Google::Apis::Core::Hashable + + # [Output Only] The list of PerInstanceConfig. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class RegionInstanceGroupManagersListInstancesResponse + include Google::Apis::Core::Hashable + + # List of managed instances. + # Corresponds to the JSON property `managedInstances` + # @return [Array] + attr_accessor :managed_instances + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @managed_instances = args[:managed_instances] if args.key?(:managed_instances) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class RegionInstanceGroupManagersRecreateRequest + include Google::Apis::Core::Hashable + + # The URLs of one or more instances to recreate. This can be a full URL or a + # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class RegionInstanceGroupManagersSetAutoHealingRequest + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `autoHealingPolicies` + # @return [Array] + attr_accessor :auto_healing_policies + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_healing_policies = args[:auto_healing_policies] if args.key?(:auto_healing_policies) + end + end + + # + class RegionInstanceGroupManagersSetTargetPoolsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # 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. + # Corresponds to the JSON property `targetPools` + # @return [Array] + attr_accessor :target_pools + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @target_pools = args[:target_pools] if args.key?(:target_pools) + end + end + + # + class RegionInstanceGroupManagersSetTemplateRequest + include Google::Apis::Core::Hashable + + # URL of the InstanceTemplate resource from which all new instances will be + # created. + # Corresponds to the JSON property `instanceTemplate` + # @return [String] + attr_accessor :instance_template + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_template = args[:instance_template] if args.key?(:instance_template) + end + end + + # + class RegionInstanceGroupsListInstances + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of InstanceWithNamedPorts resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class RegionInstanceGroupsListInstancesRequest + include Google::Apis::Core::Hashable + + # Instances in which state should be returned. Valid options are: 'ALL', ' + # RUNNING'. By default, it lists all instances. + # Corresponds to the JSON property `instanceState` + # @return [String] + attr_accessor :instance_state + + # 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. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_state = args[:instance_state] if args.key?(:instance_state) + @port_name = args[:port_name] if args.key?(:port_name) + end + end + + # + class RegionInstanceGroupsSetNamedPortsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # The list of named ports to set for this instance group. + # Corresponds to the JSON property `namedPorts` + # @return [Array] + attr_accessor :named_ports + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @named_ports = args[:named_ports] if args.key?(:named_ports) + end + end + + # Contains a list of region resources. + class RegionList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Region resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#regionList for lists of regions. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RegionList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class RegionSetLabelsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # The labels to set for this resource. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + end + end + + # Commitment for a particular resource (a Commitment is composed of one or more + # of these). + class ResourceCommitment + include Google::Apis::Core::Hashable + + # The amount of the resource purchased (in a type-dependent unit, such as bytes). + # For vCPUs, this can just be an integer. For memory, this must be provided in + # MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every + # vCPU. + # Corresponds to the JSON property `amount` + # @return [Fixnum] + attr_accessor :amount + + # Type of resource for which this commitment applies. Possible values are VCPU + # and MEMORY + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @amount = args[:amount] if args.key?(:amount) + @type = args[:type] if args.key?(:type) + end + end + + # + class ResourceGroupReference + include Google::Apis::Core::Hashable + + # A URI referencing one of the instance groups listed in the backend service. + # Corresponds to the JSON property `group` + # @return [String] + attr_accessor :group + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @group = args[:group] if args.key?(:group) + end + end + + # 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. + # For each packet leaving an instance, the system searches that instance's + # routing table for a single best matching route. Routes match packets by + # destination IP address, preferring smaller or more specific ranges over larger + # ones. If there is a tie, the system selects the route with the smallest + # priority value. If there is still a tie, it uses the layer three and four + # packet headers to select just one of the remaining matching routes. The packet + # is then forwarded as specified by the nextHop field of the winning route - + # either to another instance destination, an instance gateway, or a Google + # Compute Engine-operated gateway. + # Packets that do not match any route in the sending instance's routing table + # are dropped. + class Route + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The destination range of outgoing packets that this route applies to. Only + # IPv4 is supported. + # Corresponds to the JSON property `destRange` + # @return [String] + attr_accessor :dest_range + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of this resource. Always compute#routes for Route resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Fully-qualified URL of the network that this route applies to. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # 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// + # global/gateways/default-internet-gateway + # Corresponds to the JSON property `nextHopGateway` + # @return [String] + attr_accessor :next_hop_gateway + + # The URL to an instance that should handle matching packets. You can specify + # this as a full or partial URL. For example: + # https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/ + # Corresponds to the JSON property `nextHopInstance` + # @return [String] + attr_accessor :next_hop_instance + + # The network IP address of an instance that should handle matching packets. + # Only IPv4 is supported. + # Corresponds to the JSON property `nextHopIp` + # @return [String] + attr_accessor :next_hop_ip + + # The URL of the local network if it should handle matching packets. + # Corresponds to the JSON property `nextHopNetwork` + # @return [String] + attr_accessor :next_hop_network + + # [Output Only] The network peering name that should handle matching packets, + # which should conform to RFC1035. + # Corresponds to the JSON property `nextHopPeering` + # @return [String] + attr_accessor :next_hop_peering + + # The URL to a VpnTunnel that should handle matching packets. + # Corresponds to the JSON property `nextHopVpnTunnel` + # @return [String] + attr_accessor :next_hop_vpn_tunnel + + # 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. + # Corresponds to the JSON property `priority` + # @return [Fixnum] + attr_accessor :priority + + # [Output Only] Server-defined fully-qualified URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # A list of instance tags to which this route applies. + # Corresponds to the JSON property `tags` + # @return [Array] + attr_accessor :tags + + # [Output Only] If potential misconfigurations are detected for this route, this + # field will be populated with warning messages. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @dest_range = args[:dest_range] if args.key?(:dest_range) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @next_hop_gateway = args[:next_hop_gateway] if args.key?(:next_hop_gateway) + @next_hop_instance = args[:next_hop_instance] if args.key?(:next_hop_instance) + @next_hop_ip = args[:next_hop_ip] if args.key?(:next_hop_ip) + @next_hop_network = args[:next_hop_network] if args.key?(:next_hop_network) + @next_hop_peering = args[:next_hop_peering] if args.key?(:next_hop_peering) + @next_hop_vpn_tunnel = args[:next_hop_vpn_tunnel] if args.key?(:next_hop_vpn_tunnel) + @priority = args[:priority] if args.key?(:priority) + @self_link = args[:self_link] if args.key?(:self_link) + @tags = args[:tags] if args.key?(:tags) + @warnings = args[:warnings] if args.key?(:warnings) + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of Route resources. + class RouteList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Route resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RouteList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Router resource. + class Router + include Google::Apis::Core::Hashable + + # BGP information specific to this router. + # Corresponds to the JSON property `bgp` + # @return [Google::Apis::ComputeAlpha::RouterBgp] + attr_accessor :bgp + + # 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. + # Corresponds to the JSON property `bgpPeers` + # @return [Array] + attr_accessor :bgp_peers + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # Router interfaces. Each interface requires either one linked resource (e.g. + # linkedVpnTunnel), or IP address and IP address range (e.g. ipRange), or both. + # Corresponds to the JSON property `interfaces` + # @return [Array] + attr_accessor :interfaces + + # [Output Only] Type of resource. Always compute#router for routers. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # List of Nat services created in this router. The maximum number of Nat + # services within a Router is 3 for Alpha. + # Corresponds to the JSON property `nats` + # @return [Array] + attr_accessor :nats + + # URI of the network to which this router belongs. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # [Output Only] URI of the region where the router resides. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bgp = args[:bgp] if args.key?(:bgp) + @bgp_peers = args[:bgp_peers] if args.key?(:bgp_peers) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @interfaces = args[:interfaces] if args.key?(:interfaces) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @nats = args[:nats] if args.key?(:nats) + @network = args[:network] if args.key?(:network) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # Description-tagged prefixes for the router to advertise. + class RouterAdvertisedPrefix + include Google::Apis::Core::Hashable + + # User-specified description for the prefix. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The prefix to advertise. The value must be a CIDR-formatted string. + # Corresponds to the JSON property `prefix` + # @return [String] + attr_accessor :prefix + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @prefix = args[:prefix] if args.key?(:prefix) + end + end + + # Contains a list of routers. + class RouterAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Router resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RouterAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class RouterBgp + include Google::Apis::Core::Hashable + + # User-specified flag to indicate which mode to use for advertisement. + # Corresponds to the JSON property `advertiseMode` + # @return [String] + attr_accessor :advertise_mode + + # User-specified list of prefix groups to advertise in custom mode. This field + # can only be populated if advertise_mode is CUSTOM and is advertised to all + # peers of the router. These groups will be advertised in addition to any + # specified prefixes. Leave this field blank to advertise no custom groups. + # Corresponds to the JSON property `advertisedGroups` + # @return [Array] + attr_accessor :advertised_groups + + # User-specified list of individual prefixes to advertise in custom mode. This + # field can only be populated if advertise_mode is CUSTOM and is advertised to + # all peers of the router. These prefixes will be advertised in addition to any + # specified groups. Leave this field blank to advertise no custom prefixes. + # Corresponds to the JSON property `advertisedPrefixs` + # @return [Array] + attr_accessor :advertised_prefixs + + # 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. + # Corresponds to the JSON property `asn` + # @return [Fixnum] + attr_accessor :asn + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @advertise_mode = args[:advertise_mode] if args.key?(:advertise_mode) + @advertised_groups = args[:advertised_groups] if args.key?(:advertised_groups) + @advertised_prefixs = args[:advertised_prefixs] if args.key?(:advertised_prefixs) + @asn = args[:asn] if args.key?(:asn) + end + end + + # + class RouterBgpPeer + include Google::Apis::Core::Hashable + + # User-specified flag to indicate which mode to use for advertisement. + # Corresponds to the JSON property `advertiseMode` + # @return [String] + attr_accessor :advertise_mode + + # User-specified list of prefix groups to advertise in custom mode. This field + # can only be populated if advertise_mode is CUSTOM and overrides the list + # defined for the router (in Bgp message). These groups will be advertised in + # addition to any specified prefixes. Leave this field blank to advertise no + # custom groups. + # Corresponds to the JSON property `advertisedGroups` + # @return [Array] + attr_accessor :advertised_groups + + # User-specified list of individual prefixes to advertise in custom mode. This + # field can only be populated if advertise_mode is CUSTOM and overrides the list + # defined for the router (in Bgp message). These prefixes will be advertised in + # addition to any specified groups. Leave this field blank to advertise no + # custom prefixes. + # Corresponds to the JSON property `advertisedPrefixs` + # @return [Array] + attr_accessor :advertised_prefixs + + # 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. + # Corresponds to the JSON property `advertisedRoutePriority` + # @return [Fixnum] + attr_accessor :advertised_route_priority + + # Name of the interface the BGP peer is associated with. + # Corresponds to the JSON property `interfaceName` + # @return [String] + attr_accessor :interface_name + + # IP address of the interface inside Google Cloud Platform. Only IPv4 is + # supported. + # Corresponds to the JSON property `ipAddress` + # @return [String] + attr_accessor :ip_address + + # Name of this BGP peer. The name must be 1-63 characters long and comply with + # RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be + # different for every tunnel. + # Corresponds to the JSON property `peerAsn` + # @return [Fixnum] + attr_accessor :peer_asn + + # IP address of the BGP interface outside Google cloud. Only IPv4 is supported. + # Corresponds to the JSON property `peerIpAddress` + # @return [String] + attr_accessor :peer_ip_address + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @advertise_mode = args[:advertise_mode] if args.key?(:advertise_mode) + @advertised_groups = args[:advertised_groups] if args.key?(:advertised_groups) + @advertised_prefixs = args[:advertised_prefixs] if args.key?(:advertised_prefixs) + @advertised_route_priority = args[:advertised_route_priority] if args.key?(:advertised_route_priority) + @interface_name = args[:interface_name] if args.key?(:interface_name) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @name = args[:name] if args.key?(:name) + @peer_asn = args[:peer_asn] if args.key?(:peer_asn) + @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address) + end + end + + # + class RouterInterface + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `ipRange` + # @return [String] + attr_accessor :ip_range + + # URI of the linked interconnect attachment. It must be in the same region as + # the router. Each interface can have at most one linked resource and it could + # either be a VPN Tunnel or an interconnect attachment. + # Corresponds to the JSON property `linkedInterconnectAttachment` + # @return [String] + attr_accessor :linked_interconnect_attachment + + # URI of the linked VPN tunnel. It must be in the same region as the router. + # Each interface can have at most one linked resource and it could either be a + # VPN Tunnel or an interconnect attachment. + # Corresponds to the JSON property `linkedVpnTunnel` + # @return [String] + attr_accessor :linked_vpn_tunnel + + # Name of this interface entry. The name must be 1-63 characters long and comply + # with RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_range = args[:ip_range] if args.key?(:ip_range) + @linked_interconnect_attachment = args[:linked_interconnect_attachment] if args.key?(:linked_interconnect_attachment) + @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel) + @name = args[:name] if args.key?(:name) + end + end + + # Contains a list of Router resources. + class RouterList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Router resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#router for routers. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RouterList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Represents a Nat resource. It enables the VMs within the specified subnetworks + # to access Internet without external IP addresses. It specifies a list of + # subnetworks (and the ranges within) that want to use NAT. Customers can also + # provide the external IPs that would be used for NAT. GCP would auto-allocate + # ephemeral IPs if no external IPs are provided. + class RouterNat + include Google::Apis::Core::Hashable + + # [Output Only] List of IPs allocated automatically by GCP for this Nat service. + # They will be raw IP strings like "179.12.26.133". They are ephemeral IPs + # allocated from the IP blocks managed by the NAT manager. This list can grow + # and shrink based on the number of VMs configured to use NAT. + # Corresponds to the JSON property `autoAllocatedNatIps` + # @return [Array] + attr_accessor :auto_allocated_nat_ips + + # Unique name of this Nat service. The name must be 1-63 characters long and + # comply with RFC1035. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Specify the NatIpAllocateOption. If it is AUTO_ONLY, then nat_ip should be + # empty. + # Corresponds to the JSON property `natIpAllocateOption` + # @return [String] + attr_accessor :nat_ip_allocate_option + + # List of URLs of the IP resources used for this Nat service. These IPs must be + # valid static external IP addresses assigned to the project. max_length is + # subject to change post alpha. + # Corresponds to the JSON property `natIps` + # @return [Array] + attr_accessor :nat_ips + + # Specify the Nat option. If this field contains ALL_SUBNETWORKS_ALL_IP_RANGES + # or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other + # Router.Nat section in any Router for this network in this region. + # Corresponds to the JSON property `sourceSubnetworkIpRangesToNat` + # @return [String] + attr_accessor :source_subnetwork_ip_ranges_to_nat + + # List of Subnetwork resources whose traffic should be translated by NAT Gateway. + # It is used only when LIST_OF_SUBNETWORKS is selected for the + # SubnetworkIpRangeToNatOption above. + # Corresponds to the JSON property `subnetworks` + # @return [Array] + attr_accessor :subnetworks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_allocated_nat_ips = args[:auto_allocated_nat_ips] if args.key?(:auto_allocated_nat_ips) + @name = args[:name] if args.key?(:name) + @nat_ip_allocate_option = args[:nat_ip_allocate_option] if args.key?(:nat_ip_allocate_option) + @nat_ips = args[:nat_ips] if args.key?(:nat_ips) + @source_subnetwork_ip_ranges_to_nat = args[:source_subnetwork_ip_ranges_to_nat] if args.key?(:source_subnetwork_ip_ranges_to_nat) + @subnetworks = args[:subnetworks] if args.key?(:subnetworks) + end + end + + # Defines the IP ranges that want to use NAT for a subnetwork. + class RouterNatSubnetworkToNat + include Google::Apis::Core::Hashable + + # URL for the subnetwork resource to use NAT. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # List of the secondary ranges of the Subnetwork that are allowed to use NAT. + # This can be populated only if "LIST_OF_SECONDARY_IP_RANGES" is one of the + # values in source_ip_ranges_to_nat. + # Corresponds to the JSON property `secondaryIpRangeNames` + # @return [Array] + attr_accessor :secondary_ip_range_names + + # Specify the options for NAT ranges in the Subnetwork. All usages of single + # value are valid except NAT_IP_RANGE_OPTION_UNSPECIFIED. The only valid option + # with multiple values is: ["PRIMARY_IP_RANGE", "LIST_OF_SECONDARY_IP_RANGES"] + # Default: [ALL_IP_RANGES] + # Corresponds to the JSON property `sourceIpRangesToNats` + # @return [Array] + attr_accessor :source_ip_ranges_to_nats + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @secondary_ip_range_names = args[:secondary_ip_range_names] if args.key?(:secondary_ip_range_names) + @source_ip_ranges_to_nats = args[:source_ip_ranges_to_nats] if args.key?(:source_ip_ranges_to_nats) + end + end + + # + class RouterStatus + include Google::Apis::Core::Hashable + + # Best routes for this router's network. + # Corresponds to the JSON property `bestRoutes` + # @return [Array] + attr_accessor :best_routes + + # Best routes learned by this router. + # Corresponds to the JSON property `bestRoutesForRouter` + # @return [Array] + attr_accessor :best_routes_for_router + + # + # Corresponds to the JSON property `bgpPeerStatus` + # @return [Array] + attr_accessor :bgp_peer_status + + # + # Corresponds to the JSON property `natStatus` + # @return [Array] + attr_accessor :nat_status + + # URI of the network to which this router belongs. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @best_routes = args[:best_routes] if args.key?(:best_routes) + @best_routes_for_router = args[:best_routes_for_router] if args.key?(:best_routes_for_router) + @bgp_peer_status = args[:bgp_peer_status] if args.key?(:bgp_peer_status) + @nat_status = args[:nat_status] if args.key?(:nat_status) + @network = args[:network] if args.key?(:network) + end + end + + # + class RouterStatusBgpPeerStatus + include Google::Apis::Core::Hashable + + # Routes that were advertised to the remote BGP peer + # Corresponds to the JSON property `advertisedRoutes` + # @return [Array] + attr_accessor :advertised_routes + + # IP address of the local BGP interface. + # Corresponds to the JSON property `ipAddress` + # @return [String] + attr_accessor :ip_address + + # URL of the VPN tunnel that this BGP peer controls. + # Corresponds to the JSON property `linkedVpnTunnel` + # @return [String] + attr_accessor :linked_vpn_tunnel + + # Name of this BGP peer. Unique within the Routers resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Number of routes learned from the remote BGP Peer. + # Corresponds to the JSON property `numLearnedRoutes` + # @return [Fixnum] + attr_accessor :num_learned_routes + + # IP address of the remote BGP interface. + # Corresponds to the JSON property `peerIpAddress` + # @return [String] + attr_accessor :peer_ip_address + + # BGP state as specified in RFC1771. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Status of the BGP peer: `UP, DOWN` + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, + # 59 minutes, 59 seconds + # Corresponds to the JSON property `uptime` + # @return [String] + attr_accessor :uptime + + # Time this session has been up, in seconds. Format: 145 + # Corresponds to the JSON property `uptimeSeconds` + # @return [String] + attr_accessor :uptime_seconds + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @advertised_routes = args[:advertised_routes] if args.key?(:advertised_routes) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel) + @name = args[:name] if args.key?(:name) + @num_learned_routes = args[:num_learned_routes] if args.key?(:num_learned_routes) + @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address) + @state = args[:state] if args.key?(:state) + @status = args[:status] if args.key?(:status) + @uptime = args[:uptime] if args.key?(:uptime) + @uptime_seconds = args[:uptime_seconds] if args.key?(:uptime_seconds) + end + end + + # Status of a NAT contained in this router. + class RouterStatusNatStatus + include Google::Apis::Core::Hashable + + # List of IPs auto-allocated for NAT. Example: ["1.1.1.1", "129.2.16.89"] + # Corresponds to the JSON property `autoAllocatedNatIps` + # @return [Array] + attr_accessor :auto_allocated_nat_ips + + # The number of extra IPs to allocate. This will be greater than 0 only if user- + # specified IPs are NOT enough to allow all configured VMs to use NAT. This + # value is meaningful only when auto-allocation of NAT IPs is *not* used. + # Corresponds to the JSON property `minExtraNatIpsNeeded` + # @return [Fixnum] + attr_accessor :min_extra_nat_ips_needed + + # Unique name of this NAT. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Number of VM endpoints (i.e., Nics) that can use NAT. + # Corresponds to the JSON property `numVmEndpointsWithNatMappings` + # @return [Fixnum] + attr_accessor :num_vm_endpoints_with_nat_mappings + + # List of fully qualified URLs of reserved IP address resources. + # Corresponds to the JSON property `userAllocatedNatIpResources` + # @return [Array] + attr_accessor :user_allocated_nat_ip_resources + + # List of IPs user-allocated for NAT. They will be raw IP strings like "179.12. + # 26.133". + # Corresponds to the JSON property `userAllocatedNatIps` + # @return [Array] + attr_accessor :user_allocated_nat_ips + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_allocated_nat_ips = args[:auto_allocated_nat_ips] if args.key?(:auto_allocated_nat_ips) + @min_extra_nat_ips_needed = args[:min_extra_nat_ips_needed] if args.key?(:min_extra_nat_ips_needed) + @name = args[:name] if args.key?(:name) + @num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings) + @user_allocated_nat_ip_resources = args[:user_allocated_nat_ip_resources] if args.key?(:user_allocated_nat_ip_resources) + @user_allocated_nat_ips = args[:user_allocated_nat_ips] if args.key?(:user_allocated_nat_ips) + end + end + + # + class RouterStatusResponse + include Google::Apis::Core::Hashable + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # + # Corresponds to the JSON property `result` + # @return [Google::Apis::ComputeAlpha::RouterStatus] + attr_accessor :result + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @result = args[:result] if args.key?(:result) + end + end + + # + class RoutersPreviewResponse + include Google::Apis::Core::Hashable + + # Router resource. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ComputeAlpha::Router] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # + class RoutersScopedList + include Google::Apis::Core::Hashable + + # List of routers contained in this scope. + # Corresponds to the JSON property `routers` + # @return [Array] + attr_accessor :routers + + # Informational warning which replaces the list of routers when the list is + # empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::RoutersScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @routers = args[:routers] if args.key?(:routers) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of routers when the list is + # empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A rule to be applied in a Policy. + class Rule + include Google::Apis::Core::Hashable + + # Required + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # Additional restrictions that must be met + # Corresponds to the JSON property `conditions` + # @return [Array] + attr_accessor :conditions + + # Human-readable description of the rule. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `ins` + # @return [Array] + attr_accessor :ins + + # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries + # that match the LOG action. + # Corresponds to the JSON property `logConfigs` + # @return [Array] + attr_accessor :log_configs + + # If one or more 'not_in' clauses are specified, the rule matches if the + # PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries. + # Corresponds to the JSON property `notIns` + # @return [Array] + attr_accessor :not_ins + + # 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. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @conditions = args[:conditions] if args.key?(:conditions) + @description = args[:description] if args.key?(:description) + @ins = args[:ins] if args.key?(:ins) + @log_configs = args[:log_configs] if args.key?(:log_configs) + @not_ins = args[:not_ins] if args.key?(:not_ins) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class SslHealthCheck + include Google::Apis::Core::Hashable + + # The TCP port number for the health check request. The default value is 443. + # Valid values are 1 through 65535. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # Port name as defined in InstanceGroup#NamedPort#name. If both port and + # port_name are defined, port takes precedence. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + # Specifies the type of proxy header to append before sending data to the + # backend, either NONE or PROXY_V1. The default is NONE. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + # 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. + # Corresponds to the JSON property `request` + # @return [String] + attr_accessor :request + + # 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. + # Corresponds to the JSON property `response` + # @return [String] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @port = args[:port] if args.key?(:port) + @port_name = args[:port_name] if args.key?(:port_name) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + @request = args[:request] if args.key?(:request) + @response = args[:response] if args.key?(:response) + end + end + + # Sets the scheduling options for an Instance. + class Scheduling + include Google::Apis::Core::Hashable + + # 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. + # By default, this is set to true so an instance is automatically restarted if + # it is terminated by Compute Engine. + # Corresponds to the JSON property `automaticRestart` + # @return [Boolean] + attr_accessor :automatic_restart + alias_method :automatic_restart?, :automatic_restart + + # 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. + # Corresponds to the JSON property `onHostMaintenance` + # @return [String] + attr_accessor :on_host_maintenance + + # Defines whether the instance is preemptible. This can only be set during + # instance creation, it cannot be set or changed after the instance has been + # created. + # Corresponds to the JSON property `preemptible` + # @return [Boolean] + attr_accessor :preemptible + alias_method :preemptible?, :preemptible + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart) + @on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance) + @preemptible = args[:preemptible] if args.key?(:preemptible) + end + end + + # + class SecurityPoliciesList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of SecurityPolicy resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#securityPoliciesList for + # listsof securityPolicies + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::SecurityPoliciesList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A security policy is comprised of one or more rules. It can also be associated + # with one or more 'targets'. + class SecurityPolicy + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Specifies a fingerprint for this resource, which is essentially a hash of the + # metadata's contents and used for optimistic locking. The fingerprint is + # initially generated by Compute Engine and changes after every request to + # modify or update metadata. You must always provide an up-to-date fingerprint + # hash in order to update or change metadata. + # To see the latest fingerprint, make get() request to the security policy. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output only] Type of the resource. Always compute#securityPolicyfor security + # policies + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # List of rules that belong to this policy. There must always be a default rule ( + # rule with priority 2147483647 and match "*"). If no rules are provided when + # creating a security policy, a default rule with action "allow" will be added. + # Corresponds to the JSON property `rules` + # @return [Array] + attr_accessor :rules + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @rules = args[:rules] if args.key?(:rules) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class SecurityPolicyReference + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `securityPolicy` + # @return [String] + attr_accessor :security_policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @security_policy = args[:security_policy] if args.key?(:security_policy) + end + end + + # Represents a rule that describes one or more match conditions along with the + # action to be taken when traffic matches this condition (allow or deny). + class SecurityPolicyRule + include Google::Apis::Core::Hashable + + # The Action to preform when the client connection triggers the rule. Can + # currently be either "allow" or "deny()" where valid values for status are 403, + # 404, and 502. + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output only] Type of the resource. Always compute#securityPolicyRule for + # security policy rules + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Represents a match condition that incoming traffic is evaluated against. + # Exactly one field must be specified. + # Corresponds to the JSON property `match` + # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcher] + attr_accessor :match + + # If set to true, the specified action is not enforced. + # Corresponds to the JSON property `preview` + # @return [Boolean] + attr_accessor :preview + alias_method :preview?, :preview + + # An integer indicating the priority of a rule in the list. The priority must be + # a positive value between 0 and 2147483647. Rules are evaluated in the + # increasing order of priority. + # Corresponds to the JSON property `priority` + # @return [Fixnum] + attr_accessor :priority + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @description = args[:description] if args.key?(:description) + @kind = args[:kind] if args.key?(:kind) + @match = args[:match] if args.key?(:match) + @preview = args[:preview] if args.key?(:preview) + @priority = args[:priority] if args.key?(:priority) + end + end + + # Represents a match condition that incoming traffic is evaluated against. + # Exactly one field must be specified. + class SecurityPolicyRuleMatcher + include Google::Apis::Core::Hashable + + # The configuration options available when specifying versioned_expr. This field + # must be specified if versioned_expr is specified and cannot be specified if + # versioned_expr is not specified. + # Corresponds to the JSON property `config` + # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfig] + attr_accessor :config + + # CIDR IP address range. Only IPv4 is supported. + # Corresponds to the JSON property `srcIpRanges` + # @return [Array] + attr_accessor :src_ip_ranges + + # Match by country or region code. + # Corresponds to the JSON property `srcRegionCodes` + # @return [Array] + attr_accessor :src_region_codes + + # Preconfigured versioned expression. If this field is specified, config must + # also be specified. Available preconfigured expressions along with their + # requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range + # field in config. + # Corresponds to the JSON property `versionedExpr` + # @return [String] + attr_accessor :versioned_expr + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges) + @src_region_codes = args[:src_region_codes] if args.key?(:src_region_codes) + @versioned_expr = args[:versioned_expr] if args.key?(:versioned_expr) + end + end + + # + class SecurityPolicyRuleMatcherConfig + include Google::Apis::Core::Hashable + + # CIDR IP address range. Only IPv4 is supported. + # Corresponds to the JSON property `srcIpRanges` + # @return [Array] + attr_accessor :src_ip_ranges + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges) + end + end + + # An instance's serial console output. + class SerialPortOutput + include Google::Apis::Core::Hashable + + # [Output Only] The contents of the console output. + # Corresponds to the JSON property `contents` + # @return [String] + attr_accessor :contents + + # [Output Only] Type of the resource. Always compute#serialPortOutput for serial + # port output. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [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. + # Corresponds to the JSON property `next` + # @return [Fixnum] + attr_accessor :next + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # 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. + # Corresponds to the JSON property `start` + # @return [Fixnum] + attr_accessor :start + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @contents = args[:contents] if args.key?(:contents) + @kind = args[:kind] if args.key?(:kind) + @next = args[:next] if args.key?(:next) + @self_link = args[:self_link] if args.key?(:self_link) + @start = args[:start] if args.key?(:start) + end + end + + # A service account. + class ServiceAccount + include Google::Apis::Core::Hashable + + # Email address of the service account. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The list of scopes to be made available for this service account. + # Corresponds to the JSON property `scopes` + # @return [Array] + attr_accessor :scopes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + @scopes = args[:scopes] if args.key?(:scopes) + end + end + + # Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs + class SignedUrlKey + include Google::Apis::Core::Hashable + + # Name of the key. The name must be 1-63 characters long, and comply with + # RFC1035. Specifically, the name must be 1-63 characters long and match the + # regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character + # must be a lowercase letter, and all following characters must be a dash, + # lowercase letter, or digit, except the last character, which cannot be a dash. + # Corresponds to the JSON property `keyName` + # @return [String] + attr_accessor :key_name + + # 128-bit key value used for signing the URL. The key value must be a valid RFC + # 4648 Section 5 base64url encoded string. + # Corresponds to the JSON property `keyValue` + # @return [String] + attr_accessor :key_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key_name = args[:key_name] if args.key?(:key_name) + @key_value = args[:key_value] if args.key?(:key_value) + end + end + + # A persistent disk snapshot resource. + class Snapshot + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Size of the snapshot, specified in GB. + # Corresponds to the JSON property `diskSizeGb` + # @return [Fixnum] + attr_accessor :disk_size_gb + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#snapshot for Snapshot + # resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # 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. + # To see the latest fingerprint, make a get() request to retrieve a snapshot. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this snapshot. These can be later modified by the setLabels + # method. Label values may be empty. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Integer license codes indicating which licenses are attached to this snapshot. + # Corresponds to the JSON property `licenseCodes` + # @return [Array] + attr_accessor :license_codes + + # [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). + # Corresponds to the JSON property `licenses` + # @return [Array] + attr_accessor :licenses + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `snapshotEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :snapshot_encryption_key + + # [Output Only] The source disk used to create this snapshot. + # Corresponds to the JSON property `sourceDisk` + # @return [String] + attr_accessor :source_disk + + # Represents a customer-supplied encryption key + # Corresponds to the JSON property `sourceDiskEncryptionKey` + # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey] + attr_accessor :source_disk_encryption_key + + # [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. + # Corresponds to the JSON property `sourceDiskId` + # @return [String] + attr_accessor :source_disk_id + + # [Output Only] The status of the snapshot. This can be CREATING, DELETING, + # FAILED, READY, or UPLOADING. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [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. + # Corresponds to the JSON property `storageBytes` + # @return [Fixnum] + attr_accessor :storage_bytes + + # [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. + # Corresponds to the JSON property `storageBytesStatus` + # @return [String] + attr_accessor :storage_bytes_status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @license_codes = args[:license_codes] if args.key?(:license_codes) + @licenses = args[:licenses] if args.key?(:licenses) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @snapshot_encryption_key = args[:snapshot_encryption_key] if args.key?(:snapshot_encryption_key) + @source_disk = args[:source_disk] if args.key?(:source_disk) + @source_disk_encryption_key = args[:source_disk_encryption_key] if args.key?(:source_disk_encryption_key) + @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id) + @status = args[:status] if args.key?(:status) + @storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes) + @storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status) + end + end + + # Contains a list of Snapshot resources. + class SnapshotList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Snapshot resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::SnapshotList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # 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. + class SslCertificate + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `certificate` + # @return [String] + attr_accessor :certificate + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#sslCertificate for SSL + # certificates. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # A write-only private key in PEM format. Only insert requests will include this + # field. + # Corresponds to the JSON property `privateKey` + # @return [String] + attr_accessor :private_key + + # [Output only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @certificate = args[:certificate] if args.key?(:certificate) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @private_key = args[:private_key] if args.key?(:private_key) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # Contains a list of SslCertificate resources. + class SslCertificateList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of SslCertificate resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::SslCertificateList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A Subnetwork resource. + class Subnetwork + include Google::Apis::Core::Hashable + + # Whether this subnetwork can conflict with static routes. Setting this to true + # allows this subnetwork's primary and secondary ranges to conflict with routes + # that have already been configured on the corresponding network. Static routes + # will take precedence over the subnetwork route if the route prefix length is + # at least as large as the subnetwork prefix length. + # Also, packets destined to IPs within subnetwork may contain private/sensitive + # data and are prevented from leaving the virtual network. Setting this field to + # true will disable this feature. + # The default value is false and applies to all existing subnetworks and + # automatically created subnetworks. + # This field cannot be set to true at resource creation time. + # Corresponds to the JSON property `allowSubnetCidrRoutesOverlap` + # @return [Boolean] + attr_accessor :allow_subnet_cidr_routes_overlap + alias_method :allow_subnet_cidr_routes_overlap?, :allow_subnet_cidr_routes_overlap + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. This field can be set only at resource creation time. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Fingerprint of this resource. A hash of the contents stored in this object. + # This field is used in optimistic locking. This field will be ignored when + # inserting a Subnetwork. An up-to-date fingerprint must be provided in order to + # update the Subnetwork. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # [Output Only] The gateway address for default routes to reach destination + # addresses outside this subnetwork. This field can be set only at resource + # creation time. + # Corresponds to the JSON property `gatewayAddress` + # @return [String] + attr_accessor :gateway_address + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The range of internal addresses that are owned by this subnetwork. Provide + # this property when you create the subnetwork. For example, 10.0.0.0/8 or 192. + # 168.0.0/16. Ranges must be unique and non-overlapping within a network. Only + # IPv4 is supported. This field can be set only at resource creation time. + # Corresponds to the JSON property `ipCidrRange` + # @return [String] + attr_accessor :ip_cidr_range + + # [Output Only] Type of the resource. Always compute#subnetwork for Subnetwork + # resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The URL of the network to which this subnetwork belongs, provided by the + # client when initially creating the subnetwork. Only networks that are in the + # distributed mode can have subnetworks. This field can be set only at resource + # creation time. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # Whether the VMs in this subnet can access Google services without assigned + # external IP addresses. This field can be both set at resource creation time + # and updated using setPrivateIpGoogleAccess. + # Corresponds to the JSON property `privateIpGoogleAccess` + # @return [Boolean] + attr_accessor :private_ip_google_access + alias_method :private_ip_google_access?, :private_ip_google_access + + # URL of the region where the Subnetwork resides. This field can be set only at + # resource creation time. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # An array of configurations for secondary IP ranges for VM instances contained + # in this subnetwork. The primary IP of such VM must belong to the primary + # ipCidrRange of the subnetwork. The alias IPs may belong to either primary or + # secondary ranges. + # Corresponds to the JSON property `secondaryIpRanges` + # @return [Array] + attr_accessor :secondary_ip_ranges + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allow_subnet_cidr_routes_overlap = args[:allow_subnet_cidr_routes_overlap] if args.key?(:allow_subnet_cidr_routes_overlap) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @gateway_address = args[:gateway_address] if args.key?(:gateway_address) + @id = args[:id] if args.key?(:id) + @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @private_ip_google_access = args[:private_ip_google_access] if args.key?(:private_ip_google_access) + @region = args[:region] if args.key?(:region) + @secondary_ip_ranges = args[:secondary_ip_ranges] if args.key?(:secondary_ip_ranges) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class SubnetworkAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of SubnetworksScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#subnetworkAggregatedList for + # aggregated lists of subnetworks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::SubnetworkAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of Subnetwork resources. + class SubnetworkList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Subnetwork resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#subnetworkList for lists of + # subnetworks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::SubnetworkList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Represents a secondary IP range of a subnetwork. + class SubnetworkSecondaryRange + include Google::Apis::Core::Hashable + + # The range of IP addresses belonging to this subnetwork secondary range. + # Provide this property when you create the subnetwork. Ranges must be unique + # and non-overlapping with all primary and secondary IP ranges within a network. + # Only IPv4 is supported. + # Corresponds to the JSON property `ipCidrRange` + # @return [String] + attr_accessor :ip_cidr_range + + # The name associated with this subnetwork secondary range, used when adding an + # alias IP range to a VM instance. The name must be 1-63 characters long, and + # comply with RFC1035. The name must be unique within the subnetwork. + # Corresponds to the JSON property `rangeName` + # @return [String] + attr_accessor :range_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range) + @range_name = args[:range_name] if args.key?(:range_name) + end + end + + # + class SubnetworksExpandIpCidrRangeRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `ipCidrRange` + # @return [String] + attr_accessor :ip_cidr_range + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range) + end + end + + # + class SubnetworksScopedList + include Google::Apis::Core::Hashable + + # List of subnetworks contained in this scope. + # Corresponds to the JSON property `subnetworks` + # @return [Array] + attr_accessor :subnetworks + + # An informational warning that appears when the list of addresses is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::SubnetworksScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @subnetworks = args[:subnetworks] if args.key?(:subnetworks) + @warning = args[:warning] if args.key?(:warning) + end + + # An informational warning that appears when the list of addresses is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class SubnetworksSetPrivateIpGoogleAccessRequest + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `privateIpGoogleAccess` + # @return [Boolean] + attr_accessor :private_ip_google_access + alias_method :private_ip_google_access?, :private_ip_google_access + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @private_ip_google_access = args[:private_ip_google_access] if args.key?(:private_ip_google_access) + end + end + + # + class TcpHealthCheck + include Google::Apis::Core::Hashable + + # The TCP port number for the health check request. The default value is 80. + # Valid values are 1 through 65535. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # Port name as defined in InstanceGroup#NamedPort#name. If both port and + # port_name are defined, port takes precedence. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + # Specifies the type of proxy header to append before sending data to the + # backend, either NONE or PROXY_V1. The default is NONE. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + # 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. + # Corresponds to the JSON property `request` + # @return [String] + attr_accessor :request + + # 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. + # Corresponds to the JSON property `response` + # @return [String] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @port = args[:port] if args.key?(:port) + @port_name = args[:port_name] if args.key?(:port_name) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + @request = args[:request] if args.key?(:request) + @response = args[:response] if args.key?(:response) + end + end + + # A set of instance tags. + class Tags + include Google::Apis::Core::Hashable + + # 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. + # To see the latest fingerprint, make get() request to the instance. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # An array of tags. Each tag must be 1-63 characters long, and comply with + # RFC1035. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @items = args[:items] if args.key?(:items) + end + end + + # A TargetHttpProxy resource. This resource defines an HTTP proxy. + class TargetHttpProxy + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP + # proxies. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # URL to the UrlMap resource that defines the mapping from URL to the + # BackendService. + # Corresponds to the JSON property `urlMap` + # @return [String] + attr_accessor :url_map + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @url_map = args[:url_map] if args.key?(:url_map) + end + end + + # A list of TargetHttpProxy resources. + class TargetHttpProxyList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetHttpProxy resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. Always compute#targetHttpProxyList for lists of target HTTP + # proxies. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetHttpProxyList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TargetHttpsProxiesSetQuicOverrideRequest + include Google::Apis::Core::Hashable + + # QUIC policy for the TargetHttpsProxy resource. + # Corresponds to the JSON property `quicOverride` + # @return [String] + attr_accessor :quic_override + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @quic_override = args[:quic_override] if args.key?(:quic_override) + end + end + + # + class TargetHttpsProxiesSetSslCertificatesRequest + include Google::Apis::Core::Hashable + + # New set of SslCertificate resources to associate with this TargetHttpsProxy + # resource. Currently exactly one SslCertificate resource must be specified. + # Corresponds to the JSON property `sslCertificates` + # @return [Array] + attr_accessor :ssl_certificates + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ssl_certificates = args[:ssl_certificates] if args.key?(:ssl_certificates) + end + end + + # A TargetHttpsProxy resource. This resource defines an HTTPS proxy. + class TargetHttpsProxy + include Google::Apis::Core::Hashable + + # URL to ClientSslPolicy resource which controls the set of allowed SSL versions + # and ciphers. + # Corresponds to the JSON property `clientSslPolicy` + # @return [String] + attr_accessor :client_ssl_policy + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of resource. Always compute#targetHttpsProxy for target + # HTTPS proxies. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Specifies the QUIC override policy for this TargetHttpsProxy resource. This + # determines whether the load balancer will attempt to negotiate QUIC with + # clients or not. Can specify one of NONE, ENABLE, or DISABLE. Specify ENABLE to + # always enable QUIC, Enables QUIC when set to ENABLE, and disables QUIC when + # set to DISABLE. If NONE is specified, uses the QUIC policy with no user + # overrides, which is equivalent to DISABLE. Not specifying this field is + # equivalent to specifying NONE. + # Corresponds to the JSON property `quicOverride` + # @return [String] + attr_accessor :quic_override + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # URLs to SslCertificate resources that are used to authenticate connections + # between users and the load balancer. Currently, exactly one SSL certificate + # must be specified. + # Corresponds to the JSON property `sslCertificates` + # @return [Array] + attr_accessor :ssl_certificates + + # 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: + # - https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map + # - projects/project/global/urlMaps/url-map + # - global/urlMaps/url-map + # Corresponds to the JSON property `urlMap` + # @return [String] + attr_accessor :url_map + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_ssl_policy = args[:client_ssl_policy] if args.key?(:client_ssl_policy) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @quic_override = args[:quic_override] if args.key?(:quic_override) + @self_link = args[:self_link] if args.key?(:self_link) + @ssl_certificates = args[:ssl_certificates] if args.key?(:ssl_certificates) + @url_map = args[:url_map] if args.key?(:url_map) + end + end + + # Contains a list of TargetHttpsProxy resources. + class TargetHttpsProxyList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetHttpsProxy resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. Always compute#targetHttpsProxyList for lists of target + # HTTPS proxies. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetHttpsProxyList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A TargetInstance resource. This resource defines an endpoint instance that + # terminates traffic of certain protocols. + class TargetInstance + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/ + # instance + # - projects/project/zones/zone/instances/instance + # - zones/zone/instances/instance + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # [Output Only] The type of the resource. Always compute#targetInstance for + # target instances. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # NAT option controlling how IPs are NAT'ed to the instance. Currently only + # NO_NAT (default value) is supported. + # Corresponds to the JSON property `natPolicy` + # @return [String] + attr_accessor :nat_policy + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] URL of the zone where the target instance resides. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @instance = args[:instance] if args.key?(:instance) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @nat_policy = args[:nat_policy] if args.key?(:nat_policy) + @self_link = args[:self_link] if args.key?(:self_link) + @zone = args[:zone] if args.key?(:zone) + end + end + + # + class TargetInstanceAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetInstance resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetInstanceAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of TargetInstance resources. + class TargetInstanceList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetInstance resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetInstanceList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TargetInstancesScopedList + include Google::Apis::Core::Hashable + + # List of target instances contained in this scope. + # Corresponds to the JSON property `targetInstances` + # @return [Array] + attr_accessor :target_instances + + # Informational warning which replaces the list of addresses when the list is + # empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetInstancesScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_instances = args[:target_instances] if args.key?(:target_instances) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of addresses when the list is + # empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A TargetPool resource. This resource defines a pool of instances, an + # associated HttpHealthCheck resource, and the fallback target pool. + class TargetPool + include Google::Apis::Core::Hashable + + # 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]. + # backupPool 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. + # In 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. + # Corresponds to the JSON property `backupPool` + # @return [String] + attr_accessor :backup_pool + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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]. + # If 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. + # In 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. + # Corresponds to the JSON property `failoverRatio` + # @return [Float] + attr_accessor :failover_ratio + + # The URL of the HttpHealthCheck resource. A member instance in this pool is + # considered healthy if and only if the health checks pass. An empty list means + # all member instances will be considered healthy at all times. Only + # HttpHealthChecks are supported. Only one health check may be specified. + # Corresponds to the JSON property `healthChecks` + # @return [Array] + attr_accessor :health_checks + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # 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. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + # [Output Only] Type of the resource. Always compute#targetPool for target pools. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] URL of the region where the target pool resides. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Sesssion affinity option, must be one of the following values: + # NONE: Connections from the same client IP may go to any instance in the pool. + # CLIENT_IP: Connections from the same client IP will go to the same instance in + # the pool while that instance remains healthy. + # CLIENT_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. + # Corresponds to the JSON property `sessionAffinity` + # @return [String] + attr_accessor :session_affinity + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @backup_pool = args[:backup_pool] if args.key?(:backup_pool) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @failover_ratio = args[:failover_ratio] if args.key?(:failover_ratio) + @health_checks = args[:health_checks] if args.key?(:health_checks) + @id = args[:id] if args.key?(:id) + @instances = args[:instances] if args.key?(:instances) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @session_affinity = args[:session_affinity] if args.key?(:session_affinity) + end + end + + # + class TargetPoolAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetPool resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#targetPoolAggregatedList for + # aggregated lists of target pools. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetPoolAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TargetPoolInstanceHealth + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `healthStatus` + # @return [Array] + attr_accessor :health_status + + # [Output Only] Type of resource. Always compute#targetPoolInstanceHealth when + # checking the health of an instance. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_status = args[:health_status] if args.key?(:health_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # Contains a list of TargetPool resources. + class TargetPoolList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetPool resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#targetPoolList for lists of + # target pools. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetPoolList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TargetPoolsAddHealthCheckRequest + include Google::Apis::Core::Hashable + + # The HttpHealthCheck to add to the target pool. + # Corresponds to the JSON property `healthChecks` + # @return [Array] + attr_accessor :health_checks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_checks = args[:health_checks] if args.key?(:health_checks) + end + end + + # + class TargetPoolsAddInstanceRequest + include Google::Apis::Core::Hashable + + # 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: + # - https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/ + # instances/instance-name + # - projects/project-id/zones/zone/instances/instance-name + # - zones/zone/instances/instance-name + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class TargetPoolsRemoveHealthCheckRequest + include Google::Apis::Core::Hashable + + # Health check URL to be removed. This can be a full or valid partial URL. For + # example, the following are valid URLs: + # - https://www.googleapis.com/compute/beta/projects/project/global/ + # httpHealthChecks/health-check + # - projects/project/global/httpHealthChecks/health-check + # - global/httpHealthChecks/health-check + # Corresponds to the JSON property `healthChecks` + # @return [Array] + attr_accessor :health_checks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @health_checks = args[:health_checks] if args.key?(:health_checks) + end + end + + # + class TargetPoolsRemoveInstanceRequest + include Google::Apis::Core::Hashable + + # URLs of the instances to be removed from target pool. + # Corresponds to the JSON property `instances` + # @return [Array] + attr_accessor :instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instances = args[:instances] if args.key?(:instances) + end + end + + # + class TargetPoolsScopedList + include Google::Apis::Core::Hashable + + # List of target pools contained in this scope. + # Corresponds to the JSON property `targetPools` + # @return [Array] + attr_accessor :target_pools + + # Informational warning which replaces the list of addresses when the list is + # empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetPoolsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_pools = args[:target_pools] if args.key?(:target_pools) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of addresses when the list is + # empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TargetReference + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target = args[:target] if args.key?(:target) + end + end + + # + class TargetSslProxiesSetBackendServiceRequest + include Google::Apis::Core::Hashable + + # The URL of the new BackendService resource for the targetSslProxy. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @service = args[:service] if args.key?(:service) + end + end + + # + class TargetSslProxiesSetProxyHeaderRequest + include Google::Apis::Core::Hashable + + # The new type of proxy header to append before sending data to the backend. + # NONE or PROXY_V1 are allowed. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + end + end + + # + class TargetSslProxiesSetSslCertificatesRequest + include Google::Apis::Core::Hashable + + # New set of URLs to SslCertificate resources to associate with this + # TargetSslProxy. Currently exactly one ssl certificate must be specified. + # Corresponds to the JSON property `sslCertificates` + # @return [Array] + attr_accessor :ssl_certificates + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ssl_certificates = args[:ssl_certificates] if args.key?(:ssl_certificates) + end + end + + # A TargetSslProxy resource. This resource defines an SSL proxy. + class TargetSslProxy + include Google::Apis::Core::Hashable + + # URL to ClientSslPolicy resource which controls the set of allowed SSL versions + # and ciphers. + # Corresponds to the JSON property `clientSslPolicy` + # @return [String] + attr_accessor :client_ssl_policy + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#targetSslProxy for target + # SSL proxies. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Specifies the type of proxy header to append before sending data to the + # backend, either NONE or PROXY_V1. The default is NONE. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # URL to the BackendService resource. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + # URLs to SslCertificate resources that are used to authenticate connections to + # Backends. Currently exactly one SSL certificate must be specified. + # Corresponds to the JSON property `sslCertificates` + # @return [Array] + attr_accessor :ssl_certificates + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_ssl_policy = args[:client_ssl_policy] if args.key?(:client_ssl_policy) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + @self_link = args[:self_link] if args.key?(:self_link) + @service = args[:service] if args.key?(:service) + @ssl_certificates = args[:ssl_certificates] if args.key?(:ssl_certificates) + end + end + + # Contains a list of TargetSslProxy resources. + class TargetSslProxyList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetSslProxy resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetSslProxyList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TargetTcpProxiesSetBackendServiceRequest + include Google::Apis::Core::Hashable + + # The URL of the new BackendService resource for the targetTcpProxy. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @service = args[:service] if args.key?(:service) + end + end + + # + class TargetTcpProxiesSetProxyHeaderRequest + include Google::Apis::Core::Hashable + + # The new type of proxy header to append before sending data to the backend. + # NONE or PROXY_V1 are allowed. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + end + end + + # A TargetTcpProxy resource. This resource defines a TCP proxy. + class TargetTcpProxy + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#targetTcpProxy for target + # TCP proxies. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Specifies the type of proxy header to append before sending data to the + # backend, either NONE or PROXY_V1. The default is NONE. + # Corresponds to the JSON property `proxyHeader` + # @return [String] + attr_accessor :proxy_header + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # URL to the BackendService resource. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @proxy_header = args[:proxy_header] if args.key?(:proxy_header) + @self_link = args[:self_link] if args.key?(:self_link) + @service = args[:service] if args.key?(:service) + end + end + + # Contains a list of TargetTcpProxy resources. + class TargetTcpProxyList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetTcpProxy resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetTcpProxyList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Represents a Target VPN gateway resource. + class TargetVpnGateway + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules + # are created using compute.forwardingRules.insert and associated to a VPN + # gateway. + # Corresponds to the JSON property `forwardingRules` + # @return [Array] + attr_accessor :forwarding_rules + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN + # gateways. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # URL of the network to which this VPN gateway is attached. Provided by the + # client when the VPN gateway is created. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # [Output Only] URL of the region where the target VPN gateway resides. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The status of the VPN gateway. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created + # using compute.vpntunnels.insert method and associated to a VPN gateway. + # Corresponds to the JSON property `tunnels` + # @return [Array] + attr_accessor :tunnels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @tunnels = args[:tunnels] if args.key?(:tunnels) + end + end + + # + class TargetVpnGatewayAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetVpnGateway resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN + # gateways. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of TargetVpnGateway resources. + class TargetVpnGatewayList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of TargetVpnGateway resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN + # gateways. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetVpnGatewayList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TargetVpnGatewaysScopedList + include Google::Apis::Core::Hashable + + # [Output Only] List of target vpn gateways contained in this scope. + # Corresponds to the JSON property `targetVpnGateways` + # @return [Array] + attr_accessor :target_vpn_gateways + + # [Output Only] Informational warning which replaces the list of addresses when + # the list is empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::TargetVpnGatewaysScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @target_vpn_gateways = args[:target_vpn_gateways] if args.key?(:target_vpn_gateways) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning which replaces the list of addresses when + # the list is empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class TestFailure + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `actualService` + # @return [String] + attr_accessor :actual_service + + # + # Corresponds to the JSON property `expectedService` + # @return [String] + attr_accessor :expected_service + + # + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @actual_service = args[:actual_service] if args.key?(:actual_service) + @expected_service = args[:expected_service] if args.key?(:expected_service) + @host = args[:host] if args.key?(:host) + @path = args[:path] if args.key?(:path) + end + end + + # + class TestPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the 'resource'. Permissions with wildcards + # (such as '*' or 'storage.*') are not allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class TestPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class UdpHealthCheck + include Google::Apis::Core::Hashable + + # The UDP port number for the health check request. Valid values are 1 through + # 65535. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # Port name as defined in InstanceGroup#NamedPort#name. If both port and + # port_name are defined, port takes precedence. + # Corresponds to the JSON property `portName` + # @return [String] + attr_accessor :port_name + + # Raw data of request to send in payload of UDP packet. It is an error if this + # is empty. The request data can only be ASCII. + # Corresponds to the JSON property `request` + # @return [String] + attr_accessor :request + + # The bytes to match against the beginning of the response data. It is an error + # if this is empty. The response data can only be ASCII. + # Corresponds to the JSON property `response` + # @return [String] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @port = args[:port] if args.key?(:port) + @port_name = args[:port_name] if args.key?(:port_name) + @request = args[:request] if args.key?(:request) + @response = args[:response] if args.key?(:response) + end + end + + # 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. + class UrlMap + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # The URL of the BackendService resource if none of the hostRules match. + # Corresponds to the JSON property `defaultService` + # @return [String] + attr_accessor :default_service + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # The list of HostRules to use against the URL. + # Corresponds to the JSON property `hostRules` + # @return [Array] + attr_accessor :host_rules + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#urlMaps for url maps. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The list of named PathMatchers to use against the URL. + # Corresponds to the JSON property `pathMatchers` + # @return [Array] + attr_accessor :path_matchers + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The list of expected URL mappings. Request to update this UrlMap will succeed + # only if all of the test cases pass. + # Corresponds to the JSON property `tests` + # @return [Array] + attr_accessor :tests + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @default_service = args[:default_service] if args.key?(:default_service) + @description = args[:description] if args.key?(:description) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @host_rules = args[:host_rules] if args.key?(:host_rules) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @path_matchers = args[:path_matchers] if args.key?(:path_matchers) + @self_link = args[:self_link] if args.key?(:self_link) + @tests = args[:tests] if args.key?(:tests) + end + end + + # Contains a list of UrlMap resources. + class UrlMapList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of UrlMap resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::UrlMapList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class UrlMapReference + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `urlMap` + # @return [String] + attr_accessor :url_map + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @url_map = args[:url_map] if args.key?(:url_map) + end + end + + # Message for the expected URL mappings. + class UrlMapTest + include Google::Apis::Core::Hashable + + # Description of this test case. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Host portion of the URL. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # Path portion of the URL. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # Expected BackendService resource the given URL should be mapped to. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @host = args[:host] if args.key?(:host) + @path = args[:path] if args.key?(:path) + @service = args[:service] if args.key?(:service) + end + end + + # Message representing the validation result for a UrlMap. + class UrlMapValidationResult + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `loadErrors` + # @return [Array] + attr_accessor :load_errors + + # Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' + # indicates the reasons. + # Corresponds to the JSON property `loadSucceeded` + # @return [Boolean] + attr_accessor :load_succeeded + alias_method :load_succeeded?, :load_succeeded + + # + # Corresponds to the JSON property `testFailures` + # @return [Array] + attr_accessor :test_failures + + # If successfully loaded, this field indicates whether the test passed. If false, + # 'testFailures's indicate the reason of failure. + # Corresponds to the JSON property `testPassed` + # @return [Boolean] + attr_accessor :test_passed + alias_method :test_passed?, :test_passed + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @load_errors = args[:load_errors] if args.key?(:load_errors) + @load_succeeded = args[:load_succeeded] if args.key?(:load_succeeded) + @test_failures = args[:test_failures] if args.key?(:test_failures) + @test_passed = args[:test_passed] if args.key?(:test_passed) + end + end + + # + class UrlMapsValidateRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ComputeAlpha::UrlMap] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # + class UrlMapsValidateResponse + include Google::Apis::Core::Hashable + + # Message representing the validation result for a UrlMap. + # Corresponds to the JSON property `result` + # @return [Google::Apis::ComputeAlpha::UrlMapValidationResult] + attr_accessor :result + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @result = args[:result] if args.key?(:result) + end + end + + # The location in Cloud Storage and naming method of the daily usage report. + # Contains bucket_name and report_name prefix. + class UsageExportLocation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `bucketName` + # @return [String] + attr_accessor :bucket_name + + # 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. + # Corresponds to the JSON property `reportNamePrefix` + # @return [String] + attr_accessor :report_name_prefix + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_name = args[:bucket_name] if args.key?(:bucket_name) + @report_name_prefix = args[:report_name_prefix] if args.key?(:report_name_prefix) + end + end + + # + class VpnTunnel + include Google::Apis::Core::Hashable + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # An optional description of this resource. Provide this property when you + # create the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Detailed status message for the VPN tunnel. + # Corresponds to the JSON property `detailedStatus` + # @return [String] + attr_accessor :detailed_status + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # 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. + # Corresponds to the JSON property `ikeVersion` + # @return [Fixnum] + attr_accessor :ike_version + + # [Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # A fingerprint for the labels being applied to this VpnTunnel, which is + # essentially a hash of the labels set used for optimistic locking. The + # fingerprint is initially generated by Compute Engine and changes after every + # request to modify or update labels. You must always provide an up-to-date + # fingerprint hash in order to update or change labels. + # To see the latest fingerprint, make a get() request to retrieve a VpnTunnel. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # Labels to apply to this VpnTunnel. These can be later modified by the + # setLabels method. Each label key/value pair must comply with RFC1035. Label + # values may be empty. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Local traffic selector to use when establishing the VPN tunnel with peer VPN + # gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/ + # 16. The ranges should be disjoint. Only IPv4 is supported. + # Corresponds to the JSON property `localTrafficSelector` + # @return [Array] + attr_accessor :local_traffic_selector + + # Name of the resource. Provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # IP address of the peer VPN gateway. Only IPv4 is supported. + # Corresponds to the JSON property `peerIp` + # @return [String] + attr_accessor :peer_ip + + # [Output Only] URL of the region where the VPN tunnel resides. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # Remote traffic selectors to use when establishing the VPN tunnel with peer VPN + # gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/ + # 16. The ranges should be disjoint. Only IPv4 is supported. + # Corresponds to the JSON property `remoteTrafficSelector` + # @return [Array] + attr_accessor :remote_traffic_selector + + # URL of router resource to be used for dynamic routing. + # Corresponds to the JSON property `router` + # @return [String] + attr_accessor :router + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Shared secret used to set the secure session between the Cloud VPN gateway and + # the peer VPN gateway. + # Corresponds to the JSON property `sharedSecret` + # @return [String] + attr_accessor :shared_secret + + # Hash of the shared secret. + # Corresponds to the JSON property `sharedSecretHash` + # @return [String] + attr_accessor :shared_secret_hash + + # [Output Only] The status of the VPN tunnel. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # URL of the VPN gateway with which this VPN tunnel is associated. Provided by + # the client when the VPN tunnel is created. + # Corresponds to the JSON property `targetVpnGateway` + # @return [String] + attr_accessor :target_vpn_gateway + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @detailed_status = args[:detailed_status] if args.key?(:detailed_status) + @id = args[:id] if args.key?(:id) + @ike_version = args[:ike_version] if args.key?(:ike_version) + @kind = args[:kind] if args.key?(:kind) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + @local_traffic_selector = args[:local_traffic_selector] if args.key?(:local_traffic_selector) + @name = args[:name] if args.key?(:name) + @peer_ip = args[:peer_ip] if args.key?(:peer_ip) + @region = args[:region] if args.key?(:region) + @remote_traffic_selector = args[:remote_traffic_selector] if args.key?(:remote_traffic_selector) + @router = args[:router] if args.key?(:router) + @self_link = args[:self_link] if args.key?(:self_link) + @shared_secret = args[:shared_secret] if args.key?(:shared_secret) + @shared_secret_hash = args[:shared_secret_hash] if args.key?(:shared_secret_hash) + @status = args[:status] if args.key?(:status) + @target_vpn_gateway = args[:target_vpn_gateway] if args.key?(:target_vpn_gateway) + end + end + + # + class VpnTunnelAggregatedList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of VpnTunnelsScopedList resources. + # Corresponds to the JSON property `items` + # @return [Hash] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::VpnTunnelAggregatedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Contains a list of VpnTunnel resources. + class VpnTunnelList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of VpnTunnel resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::VpnTunnelList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class VpnTunnelsScopedList + include Google::Apis::Core::Hashable + + # List of vpn tunnels contained in this scope. + # Corresponds to the JSON property `vpnTunnels` + # @return [Array] + attr_accessor :vpn_tunnels + + # Informational warning which replaces the list of addresses when the list is + # empty. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::VpnTunnelsScopedList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @vpn_tunnels = args[:vpn_tunnels] if args.key?(:vpn_tunnels) + @warning = args[:warning] if args.key?(:warning) + end + + # Informational warning which replaces the list of addresses when the list is + # empty. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class XpnHostList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # [Output Only] A list of shared VPC host project URLs. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # [Output Only] Type of resource. Always compute#xpnHostList for lists of shared + # VPC hosts. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::XpnHostList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Service resource (a.k.a service project) ID. + class XpnResourceId + include Google::Apis::Core::Hashable + + # The ID of the service resource. In the case of projects, this field matches + # the project ID (e.g., my-project), not the project number (e.g., 12345678). + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The type of the service resource. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @type = args[:type] if args.key?(:type) + end + end + + # A Zone resource. + class Zone + include Google::Apis::Core::Hashable + + # [Output Only] Available cpu/platform selections for the zone. + # Corresponds to the JSON property `availableCpuPlatforms` + # @return [Array] + attr_accessor :available_cpu_platforms + + # [Output Only] Creation timestamp in RFC3339 text format. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # Deprecation status for a public resource. + # Corresponds to the JSON property `deprecated` + # @return [Google::Apis::ComputeAlpha::DeprecationStatus] + attr_accessor :deprecated + + # [Output Only] Textual description of the resource. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Type of the resource. Always compute#zone for zones. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Full URL reference to the region which hosts the zone. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Status of the zone, either UP or DOWN. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @available_cpu_platforms = args[:available_cpu_platforms] if args.key?(:available_cpu_platforms) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @deprecated = args[:deprecated] if args.key?(:deprecated) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + end + end + + # Contains a list of zone resources. + class ZoneList + include Google::Apis::Core::Hashable + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # A list of Zone resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] This token allows you to get the next page of results for list + # requests. If the number of results is larger than maxResults, use the + # nextPageToken as a value for the query parameter pageToken in the next list + # request. Subsequent list requests will have their own nextPageToken to + # continue paging through the results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Server-defined URL for this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] Informational warning message. + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ComputeAlpha::ZoneList::Warning] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + @warning = args[:warning] if args.key?(:warning) + end + + # [Output Only] Informational warning message. + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # + class ZoneSetLabelsRequest + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `labelFingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :label_fingerprint + + # The labels to set for this resource. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @labels = args[:labels] if args.key?(:labels) + end + end + end + end +end diff --git a/generated/google/apis/compute_alpha/representations.rb b/generated/google/apis/compute_alpha/representations.rb new file mode 100644 index 000000000..50ff624c3 --- /dev/null +++ b/generated/google/apis/compute_alpha/representations.rb @@ -0,0 +1,9391 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ComputeAlpha + + class AcceleratorConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcceleratorType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcceleratorTypeAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcceleratorTypeList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcceleratorTypesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AccessConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Address + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AddressAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AddressList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AddressesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AliasIpRange + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AttachedDisk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AttachedDiskInitializeParams + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizationLoggingOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Autoscaler + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalerAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalerList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalerStatusDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalersScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalingPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalingPolicyCpuUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalingPolicyCustomMetricUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalingPolicyLoadBalancingUtilization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalingPolicyQueueBasedScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalingPolicyQueueBasedScalingCloudPubSub + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Backend + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendBucketCdnPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendBucketList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendService + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendServiceAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendServiceCdnPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendServiceGroupHealth + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendServiceIap + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendServiceList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendServiceReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackendServicesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CacheInvalidationRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CacheKeyPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Commitment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CommitmentAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class CommitmentList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class CommitmentsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Condition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ConnectionDraining + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CustomerEncryptionKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CustomerEncryptionKeyProtectedDisk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeprecationStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Disk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskMoveRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskTypeAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskTypeList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskTypesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class DisksResizeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DisksScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class DistributionPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DistributionPolicyZoneConfiguration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Expr + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Firewall + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Allowed + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Denied + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class FirewallList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class FixedOrPercent + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ForwardingRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ForwardingRuleAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ForwardingRuleList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ForwardingRuleReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ForwardingRulesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class GlobalSetLabelsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GuestAttributes + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GuestOsFeature + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Http2HealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpHealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpsHealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthCheckList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthCheckReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthStatusForNetworkEndpoint + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Host + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostTypeAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostTypeList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostTypesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HostsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpHealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpHealthCheckList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpsHealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpsHealthCheckList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Image + class Representation < Google::Apis::Core::JsonRepresentation; end + + class RawDisk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ImageList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Instance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroup + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManager + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerActionsSummary + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerActivities + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerAutoHealingPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerPendingActionsSummary + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerStatefulPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerStatefulPolicyDiskPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerUpdatePolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagerVersion + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersAbandonInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersApplyUpdatesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersDeleteInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersDeletePerInstanceConfigsReq + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersListManagedInstancesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersListPerInstanceConfigsResp + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersRecreateInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersResizeAdvancedRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersSetAutoHealingRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersSetInstanceTemplateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersSetTargetPoolsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupManagersUpdatePerInstanceConfigsReq + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupsAddInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupsListInstances + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupsListInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupsRemoveInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupsSetNamedPortsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceListReferrers + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceMoveRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceProperties + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceTemplate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceTemplateList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceWithNamedPorts + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesSetLabelsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesSetMachineResourcesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesSetMachineTypeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesSetMinCpuPlatformRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesSetServiceAccountRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesStartWithEncryptionKeyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Interconnect + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectAttachment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectAttachmentAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectAttachmentList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectAttachmentPrivateInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectAttachmentsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectCircuitInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectLocationList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectLocationRegionInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InterconnectOutageNotification + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InternalIpOwner + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IpOwnerList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class License + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LicenseCode + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LicenseCodeLicenseAlias + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LicenseResourceRequirements + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LicensesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigCloudAuditOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigCounterOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigDataAccessOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MachineType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MachineTypeAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class MachineTypeList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class MachineTypesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedInstance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedInstanceLastAttempt + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Errors + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedInstanceOverride + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedInstanceOverrideDiskOverride + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedInstanceVersion + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Metadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Item + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class NamedPort + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Network + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpoint + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroup + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupLbNetworkEndpointGroup + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupsAttachEndpointsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupsDetachEndpointsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupsListEndpointsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupsListNetworkEndpoints + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointGroupsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkEndpointWithHealthStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkInterface + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkPeering + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkRoutingConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworksAddPeeringRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworksRemovePeeringRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class PathMatcher + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PathRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PerInstanceConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Project + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectsDisableXpnResourceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectsEnableXpnResourceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectsGetXpnResources + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectsListXpnHostsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectsSetDefaultServiceAccountRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Quota + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Reference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Region + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionAutoscalerList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionDiskTypeList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionDisksResizeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagerDeleteInstanceConfigReq + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagerList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagerUpdateInstanceConfigReq + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersAbandonInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersApplyUpdatesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersDeleteInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersListInstanceConfigsResp + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersListInstancesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersRecreateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersSetAutoHealingRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersSetTargetPoolsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupManagersSetTemplateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupsListInstances + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupsListInstancesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionInstanceGroupsSetNamedPortsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionSetLabelsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceCommitment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceGroupReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Route + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouteList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Router + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterAdvertisedPrefix + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterBgp + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterBgpPeer + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterInterface + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterNat + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterNatSubnetworkToNat + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterStatusBgpPeerStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterStatusNatStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouterStatusResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RoutersPreviewResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RoutersScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Rule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslHealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Scheduling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SecurityPoliciesList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class SecurityPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SecurityPolicyReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SecurityPolicyRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SecurityPolicyRuleMatcher + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SecurityPolicyRuleMatcherConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SerialPortOutput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ServiceAccount + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SignedUrlKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Snapshot + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SnapshotList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCertificate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCertificateList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Subnetwork + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubnetworkAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubnetworkList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubnetworkSecondaryRange + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubnetworksExpandIpCidrRangeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubnetworksScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubnetworksSetPrivateIpGoogleAccessRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TcpHealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Tags + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetHttpProxy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetHttpProxyList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetHttpsProxiesSetQuicOverrideRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetHttpsProxiesSetSslCertificatesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetHttpsProxy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetHttpsProxyList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetInstance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetInstanceAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetInstanceList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetInstancesScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPool + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolInstanceHealth + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolsAddHealthCheckRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolsAddInstanceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolsRemoveHealthCheckRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolsRemoveInstanceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetPoolsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetSslProxiesSetBackendServiceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetSslProxiesSetProxyHeaderRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetSslProxiesSetSslCertificatesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetSslProxy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetSslProxyList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetTcpProxiesSetBackendServiceRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetTcpProxiesSetProxyHeaderRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetTcpProxy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetTcpProxyList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetVpnGateway + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetVpnGatewayAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetVpnGatewayList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetVpnGatewaysScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestFailure + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UdpHealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMap + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMapList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMapReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMapTest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMapValidationResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMapsValidateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UrlMapsValidateResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UsageExportLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class VpnTunnel + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class VpnTunnelAggregatedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class VpnTunnelList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class VpnTunnelsScopedList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class XpnHostList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class XpnResourceId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Zone + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZoneList + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZoneSetLabelsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcceleratorConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :accelerator_count, as: 'acceleratorCount' + property :accelerator_type, as: 'acceleratorType' + end + end + + class AcceleratorType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :deprecated, as: 'deprecated', class: Google::Apis::ComputeAlpha::DeprecationStatus, decorator: Google::Apis::ComputeAlpha::DeprecationStatus::Representation + + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :maximum_cards_per_instance, as: 'maximumCardsPerInstance' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :zone, as: 'zone' + end + end + + class AcceleratorTypeAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::AcceleratorTypesScopedList, decorator: Google::Apis::ComputeAlpha::AcceleratorTypesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AcceleratorTypeList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::AcceleratorType, decorator: Google::Apis::ComputeAlpha::AcceleratorType::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AcceleratorTypeList::Warning, decorator: Google::Apis::ComputeAlpha::AcceleratorTypeList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AcceleratorTypeList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AcceleratorTypeList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AcceleratorTypesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :accelerator_types, as: 'acceleratorTypes', class: Google::Apis::ComputeAlpha::AcceleratorType, decorator: Google::Apis::ComputeAlpha::AcceleratorType::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AcceleratorTypesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::AcceleratorTypesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AcceleratorTypesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AcceleratorTypesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AccessConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :name, as: 'name' + property :nat_ip, as: 'natIP' + property :network_tier, as: 'networkTier' + property :public_dns_name, as: 'publicDnsName' + property :public_ptr_domain_name, as: 'publicPtrDomainName' + property :set_public_dns, as: 'setPublicDns' + property :set_public_ptr, as: 'setPublicPtr' + property :type, as: 'type' + end + end + + class Address + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :address, as: 'address' + property :address_type, as: 'addressType' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :ip_version, as: 'ipVersion' + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + property :name, as: 'name' + property :network_tier, as: 'networkTier' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :status, as: 'status' + property :subnetwork, as: 'subnetwork' + collection :users, as: 'users' + end + end + + class AddressAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::AddressesScopedList, decorator: Google::Apis::ComputeAlpha::AddressesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AddressAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::AddressAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AddressAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AddressAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AddressList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Address, decorator: Google::Apis::ComputeAlpha::Address::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AddressList::Warning, decorator: Google::Apis::ComputeAlpha::AddressList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AddressList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AddressList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AddressesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :addresses, as: 'addresses', class: Google::Apis::ComputeAlpha::Address, decorator: Google::Apis::ComputeAlpha::Address::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AddressesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::AddressesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AddressesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AddressesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AliasIpRange + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_cidr_range, as: 'ipCidrRange' + property :subnetwork_range_name, as: 'subnetworkRangeName' + end + end + + class AttachedDisk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_delete, as: 'autoDelete' + property :boot, as: 'boot' + property :device_name, as: 'deviceName' + property :disk_encryption_key, as: 'diskEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :disk_size_gb, :numeric_string => true, as: 'diskSizeGb' + property :index, as: 'index' + property :initialize_params, as: 'initializeParams', class: Google::Apis::ComputeAlpha::AttachedDiskInitializeParams, decorator: Google::Apis::ComputeAlpha::AttachedDiskInitializeParams::Representation + + property :interface, as: 'interface' + property :kind, as: 'kind' + collection :licenses, as: 'licenses' + property :mode, as: 'mode' + property :source, as: 'source' + property :type, as: 'type' + end + end + + class AttachedDiskInitializeParams + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disk_name, as: 'diskName' + property :disk_size_gb, :numeric_string => true, as: 'diskSizeGb' + property :disk_storage_type, as: 'diskStorageType' + property :disk_type, as: 'diskType' + property :source_image, as: 'sourceImage' + property :source_image_encryption_key, as: 'sourceImageEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + end + end + + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::ComputeAlpha::AuditLogConfig, decorator: Google::Apis::ComputeAlpha::AuditLogConfig::Representation + + collection :exempted_members, as: 'exemptedMembers' + property :service, as: 'service' + end + end + + class AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class AuthorizationLoggingOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :permission_type, as: 'permissionType' + end + end + + class Autoscaler + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :autoscaling_policy, as: 'autoscalingPolicy', class: Google::Apis::ComputeAlpha::AutoscalingPolicy, decorator: Google::Apis::ComputeAlpha::AutoscalingPolicy::Representation + + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :status, as: 'status' + collection :status_details, as: 'statusDetails', class: Google::Apis::ComputeAlpha::AutoscalerStatusDetails, decorator: Google::Apis::ComputeAlpha::AutoscalerStatusDetails::Representation + + property :target, as: 'target' + property :zone, as: 'zone' + end + end + + class AutoscalerAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::AutoscalersScopedList, decorator: Google::Apis::ComputeAlpha::AutoscalersScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AutoscalerAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::AutoscalerAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AutoscalerAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AutoscalerAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AutoscalerList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Autoscaler, decorator: Google::Apis::ComputeAlpha::Autoscaler::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AutoscalerList::Warning, decorator: Google::Apis::ComputeAlpha::AutoscalerList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AutoscalerList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AutoscalerList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AutoscalerStatusDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :message, as: 'message' + property :type, as: 'type' + end + end + + class AutoscalersScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :autoscalers, as: 'autoscalers', class: Google::Apis::ComputeAlpha::Autoscaler, decorator: Google::Apis::ComputeAlpha::Autoscaler::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::AutoscalersScopedList::Warning, decorator: Google::Apis::ComputeAlpha::AutoscalersScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::AutoscalersScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::AutoscalersScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class AutoscalingPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cool_down_period_sec, as: 'coolDownPeriodSec' + property :cpu_utilization, as: 'cpuUtilization', class: Google::Apis::ComputeAlpha::AutoscalingPolicyCpuUtilization, decorator: Google::Apis::ComputeAlpha::AutoscalingPolicyCpuUtilization::Representation + + collection :custom_metric_utilizations, as: 'customMetricUtilizations', class: Google::Apis::ComputeAlpha::AutoscalingPolicyCustomMetricUtilization, decorator: Google::Apis::ComputeAlpha::AutoscalingPolicyCustomMetricUtilization::Representation + + property :load_balancing_utilization, as: 'loadBalancingUtilization', class: Google::Apis::ComputeAlpha::AutoscalingPolicyLoadBalancingUtilization, decorator: Google::Apis::ComputeAlpha::AutoscalingPolicyLoadBalancingUtilization::Representation + + property :max_num_replicas, as: 'maxNumReplicas' + property :min_num_replicas, as: 'minNumReplicas' + property :mode, as: 'mode' + property :queue_based_scaling, as: 'queueBasedScaling', class: Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScaling, decorator: Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScaling::Representation + + end + end + + class AutoscalingPolicyCpuUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :utilization_target, as: 'utilizationTarget' + end + end + + class AutoscalingPolicyCustomMetricUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :filter, as: 'filter' + property :metric, as: 'metric' + property :single_instance_assignment, as: 'singleInstanceAssignment' + property :utilization_target, as: 'utilizationTarget' + property :utilization_target_type, as: 'utilizationTargetType' + end + end + + class AutoscalingPolicyLoadBalancingUtilization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :utilization_target, as: 'utilizationTarget' + end + end + + class AutoscalingPolicyQueueBasedScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :acceptable_backlog_per_instance, as: 'acceptableBacklogPerInstance' + property :cloud_pub_sub, as: 'cloudPubSub', class: Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScalingCloudPubSub, decorator: Google::Apis::ComputeAlpha::AutoscalingPolicyQueueBasedScalingCloudPubSub::Representation + + property :single_worker_throughput_per_sec, as: 'singleWorkerThroughputPerSec' + end + end + + class AutoscalingPolicyQueueBasedScalingCloudPubSub + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :subscription, as: 'subscription' + property :topic, as: 'topic' + end + end + + class Backend + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :balancing_mode, as: 'balancingMode' + property :capacity_scaler, as: 'capacityScaler' + property :description, as: 'description' + property :failover, as: 'failover' + property :group, as: 'group' + property :max_connections, as: 'maxConnections' + property :max_connections_per_instance, as: 'maxConnectionsPerInstance' + property :max_rate, as: 'maxRate' + property :max_rate_per_instance, as: 'maxRatePerInstance' + property :max_utilization, as: 'maxUtilization' + end + end + + class BackendBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_name, as: 'bucketName' + property :cdn_policy, as: 'cdnPolicy', class: Google::Apis::ComputeAlpha::BackendBucketCdnPolicy, decorator: Google::Apis::ComputeAlpha::BackendBucketCdnPolicy::Representation + + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :enable_cdn, as: 'enableCdn' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :self_link, as: 'selfLink' + end + end + + class BackendBucketCdnPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :signed_url_cache_max_age_sec, :numeric_string => true, as: 'signedUrlCacheMaxAgeSec' + collection :signed_url_key_names, as: 'signedUrlKeyNames' + end + end + + class BackendBucketList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::BackendBucket, decorator: Google::Apis::ComputeAlpha::BackendBucket::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::BackendBucketList::Warning, decorator: Google::Apis::ComputeAlpha::BackendBucketList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::BackendBucketList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::BackendBucketList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class BackendService + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :affinity_cookie_ttl_sec, as: 'affinityCookieTtlSec' + collection :backends, as: 'backends', class: Google::Apis::ComputeAlpha::Backend, decorator: Google::Apis::ComputeAlpha::Backend::Representation + + property :cdn_policy, as: 'cdnPolicy', class: Google::Apis::ComputeAlpha::BackendServiceCdnPolicy, decorator: Google::Apis::ComputeAlpha::BackendServiceCdnPolicy::Representation + + property :connection_draining, as: 'connectionDraining', class: Google::Apis::ComputeAlpha::ConnectionDraining, decorator: Google::Apis::ComputeAlpha::ConnectionDraining::Representation + + property :creation_timestamp, as: 'creationTimestamp' + collection :custom_request_headers, as: 'customRequestHeaders' + property :description, as: 'description' + property :enable_cdn, as: 'enableCDN' + property :failover_ratio, as: 'failoverRatio' + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :health_checks, as: 'healthChecks' + property :iap, as: 'iap', class: Google::Apis::ComputeAlpha::BackendServiceIap, decorator: Google::Apis::ComputeAlpha::BackendServiceIap::Representation + + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :load_balancing_scheme, as: 'loadBalancingScheme' + property :name, as: 'name' + property :port, as: 'port' + property :port_name, as: 'portName' + property :protocol, as: 'protocol' + property :region, as: 'region' + property :security_policy, as: 'securityPolicy' + property :self_link, as: 'selfLink' + property :session_affinity, as: 'sessionAffinity' + property :timeout_sec, as: 'timeoutSec' + end + end + + class BackendServiceAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::BackendServicesScopedList, decorator: Google::Apis::ComputeAlpha::BackendServicesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::BackendServiceAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::BackendServiceAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::BackendServiceAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::BackendServiceAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class BackendServiceCdnPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cache_key_policy, as: 'cacheKeyPolicy', class: Google::Apis::ComputeAlpha::CacheKeyPolicy, decorator: Google::Apis::ComputeAlpha::CacheKeyPolicy::Representation + + property :signed_url_cache_max_age_sec, :numeric_string => true, as: 'signedUrlCacheMaxAgeSec' + collection :signed_url_key_names, as: 'signedUrlKeyNames' + end + end + + class BackendServiceGroupHealth + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :health_status, as: 'healthStatus', class: Google::Apis::ComputeAlpha::HealthStatus, decorator: Google::Apis::ComputeAlpha::HealthStatus::Representation + + property :kind, as: 'kind' + end + end + + class BackendServiceIap + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + property :oauth2_client_id, as: 'oauth2ClientId' + property :oauth2_client_secret, as: 'oauth2ClientSecret' + property :oauth2_client_secret_sha256, as: 'oauth2ClientSecretSha256' + end + end + + class BackendServiceList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::BackendService, decorator: Google::Apis::ComputeAlpha::BackendService::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::BackendServiceList::Warning, decorator: Google::Apis::ComputeAlpha::BackendServiceList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::BackendServiceList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::BackendServiceList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class BackendServiceReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :backend_service, as: 'backendService' + end + end + + class BackendServicesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :backend_services, as: 'backendServices', class: Google::Apis::ComputeAlpha::BackendService, decorator: Google::Apis::ComputeAlpha::BackendService::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::BackendServicesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::BackendServicesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::BackendServicesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::BackendServicesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::ComputeAlpha::Expr, decorator: Google::Apis::ComputeAlpha::Expr::Representation + + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class CacheInvalidationRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :host, as: 'host' + property :path, as: 'path' + end + end + + class CacheKeyPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :include_host, as: 'includeHost' + property :include_protocol, as: 'includeProtocol' + property :include_query_string, as: 'includeQueryString' + collection :query_string_blacklist, as: 'queryStringBlacklist' + collection :query_string_whitelist, as: 'queryStringWhitelist' + end + end + + class Commitment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :end_timestamp, as: 'endTimestamp' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :plan, as: 'plan' + property :region, as: 'region' + collection :resources, as: 'resources', class: Google::Apis::ComputeAlpha::ResourceCommitment, decorator: Google::Apis::ComputeAlpha::ResourceCommitment::Representation + + property :self_link, as: 'selfLink' + property :start_timestamp, as: 'startTimestamp' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + end + end + + class CommitmentAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::CommitmentsScopedList, decorator: Google::Apis::ComputeAlpha::CommitmentsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::CommitmentAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::CommitmentAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::CommitmentAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::CommitmentAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class CommitmentList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Commitment, decorator: Google::Apis::ComputeAlpha::Commitment::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::CommitmentList::Warning, decorator: Google::Apis::ComputeAlpha::CommitmentList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::CommitmentList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::CommitmentList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class CommitmentsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :commitments, as: 'commitments', class: Google::Apis::ComputeAlpha::Commitment, decorator: Google::Apis::ComputeAlpha::Commitment::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::CommitmentsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::CommitmentsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::CommitmentsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::CommitmentsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class Condition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :iam, as: 'iam' + property :op, as: 'op' + property :svc, as: 'svc' + property :sys, as: 'sys' + property :value, as: 'value' + collection :values, as: 'values' + end + end + + class ConnectionDraining + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :draining_timeout_sec, as: 'drainingTimeoutSec' + end + end + + class CustomerEncryptionKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kms_key_name, as: 'kmsKeyName' + property :raw_key, as: 'rawKey' + property :rsa_encrypted_key, as: 'rsaEncryptedKey' + property :sha256, as: 'sha256' + end + end + + class CustomerEncryptionKeyProtectedDisk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disk_encryption_key, as: 'diskEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source, as: 'source' + end + end + + class DeprecationStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :deleted, as: 'deleted' + property :deprecated, as: 'deprecated' + property :obsolete, as: 'obsolete' + property :replacement, as: 'replacement' + property :state, as: 'state' + end + end + + class Disk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :disk_encryption_key, as: 'diskEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + property :last_attach_timestamp, as: 'lastAttachTimestamp' + property :last_detach_timestamp, as: 'lastDetachTimestamp' + collection :license_codes, as: 'licenseCodes' + collection :licenses, as: 'licenses' + property :name, as: 'name' + property :options, as: 'options' + property :physical_block_size_bytes, :numeric_string => true, as: 'physicalBlockSizeBytes' + property :region, as: 'region' + collection :replica_zones, as: 'replicaZones' + property :self_link, as: 'selfLink' + property :size_gb, :numeric_string => true, as: 'sizeGb' + property :source_image, as: 'sourceImage' + property :source_image_encryption_key, as: 'sourceImageEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source_image_id, as: 'sourceImageId' + property :source_snapshot, as: 'sourceSnapshot' + property :source_snapshot_encryption_key, as: 'sourceSnapshotEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source_snapshot_id, as: 'sourceSnapshotId' + property :status, as: 'status' + property :storage_type, as: 'storageType' + property :type, as: 'type' + collection :users, as: 'users' + property :zone, as: 'zone' + end + end + + class DiskAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::DisksScopedList, decorator: Google::Apis::ComputeAlpha::DisksScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::DiskAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::DiskAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::DiskAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::DiskAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class DiskList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Disk, decorator: Google::Apis::ComputeAlpha::Disk::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::DiskList::Warning, decorator: Google::Apis::ComputeAlpha::DiskList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::DiskList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::DiskList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class DiskMoveRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination_zone, as: 'destinationZone' + property :target_disk, as: 'targetDisk' + end + end + + class DiskType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :default_disk_size_gb, :numeric_string => true, as: 'defaultDiskSizeGb' + property :deprecated, as: 'deprecated', class: Google::Apis::ComputeAlpha::DeprecationStatus, decorator: Google::Apis::ComputeAlpha::DeprecationStatus::Representation + + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :valid_disk_size, as: 'validDiskSize' + property :zone, as: 'zone' + end + end + + class DiskTypeAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::DiskTypesScopedList, decorator: Google::Apis::ComputeAlpha::DiskTypesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::DiskTypeAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::DiskTypeAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::DiskTypeAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::DiskTypeAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class DiskTypeList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::DiskType, decorator: Google::Apis::ComputeAlpha::DiskType::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::DiskTypeList::Warning, decorator: Google::Apis::ComputeAlpha::DiskTypeList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::DiskTypeList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::DiskTypeList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class DiskTypesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :disk_types, as: 'diskTypes', class: Google::Apis::ComputeAlpha::DiskType, decorator: Google::Apis::ComputeAlpha::DiskType::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::DiskTypesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::DiskTypesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::DiskTypesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::DiskTypesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class DisksResizeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :size_gb, :numeric_string => true, as: 'sizeGb' + end + end + + class DisksScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :disks, as: 'disks', class: Google::Apis::ComputeAlpha::Disk, decorator: Google::Apis::ComputeAlpha::Disk::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::DisksScopedList::Warning, decorator: Google::Apis::ComputeAlpha::DisksScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::DisksScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::DisksScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class DistributionPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :zones, as: 'zones', class: Google::Apis::ComputeAlpha::DistributionPolicyZoneConfiguration, decorator: Google::Apis::ComputeAlpha::DistributionPolicyZoneConfiguration::Representation + + end + end + + class DistributionPolicyZoneConfiguration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :zone, as: 'zone' + end + end + + class Expr + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :expression, as: 'expression' + property :location, as: 'location' + property :title, as: 'title' + end + end + + class Firewall + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :allowed, as: 'allowed', class: Google::Apis::ComputeAlpha::Firewall::Allowed, decorator: Google::Apis::ComputeAlpha::Firewall::Allowed::Representation + + property :creation_timestamp, as: 'creationTimestamp' + collection :denied, as: 'denied', class: Google::Apis::ComputeAlpha::Firewall::Denied, decorator: Google::Apis::ComputeAlpha::Firewall::Denied::Representation + + property :description, as: 'description' + collection :destination_ranges, as: 'destinationRanges' + property :direction, as: 'direction' + property :enable_logging, as: 'enableLogging' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :network, as: 'network' + property :priority, as: 'priority' + property :self_link, as: 'selfLink' + collection :source_ranges, as: 'sourceRanges' + collection :source_service_accounts, as: 'sourceServiceAccounts' + collection :source_tags, as: 'sourceTags' + collection :target_service_accounts, as: 'targetServiceAccounts' + collection :target_tags, as: 'targetTags' + end + + class Allowed + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_protocol, as: 'IPProtocol' + collection :ports, as: 'ports' + end + end + + class Denied + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_protocol, as: 'IPProtocol' + collection :ports, as: 'ports' + end + end + end + + class FirewallList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Firewall, decorator: Google::Apis::ComputeAlpha::Firewall::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::FirewallList::Warning, decorator: Google::Apis::ComputeAlpha::FirewallList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::FirewallList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::FirewallList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class FixedOrPercent + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :calculated, as: 'calculated' + property :fixed, as: 'fixed' + property :percent, as: 'percent' + end + end + + class ForwardingRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_address, as: 'IPAddress' + property :ip_protocol, as: 'IPProtocol' + property :backend_service, as: 'backendService' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :ip_version, as: 'ipVersion' + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + property :load_balancing_scheme, as: 'loadBalancingScheme' + property :name, as: 'name' + property :network, as: 'network' + property :network_tier, as: 'networkTier' + property :port_range, as: 'portRange' + collection :ports, as: 'ports' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :service_label, as: 'serviceLabel' + property :service_name, as: 'serviceName' + property :subnetwork, as: 'subnetwork' + property :target, as: 'target' + end + end + + class ForwardingRuleAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::ForwardingRulesScopedList, decorator: Google::Apis::ComputeAlpha::ForwardingRulesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ForwardingRuleList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::ForwardingRule, decorator: Google::Apis::ComputeAlpha::ForwardingRule::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::ForwardingRuleList::Warning, decorator: Google::Apis::ComputeAlpha::ForwardingRuleList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::ForwardingRuleList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::ForwardingRuleList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ForwardingRuleReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :forwarding_rule, as: 'forwardingRule' + end + end + + class ForwardingRulesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :forwarding_rules, as: 'forwardingRules', class: Google::Apis::ComputeAlpha::ForwardingRule, decorator: Google::Apis::ComputeAlpha::ForwardingRule::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::ForwardingRulesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::ForwardingRulesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::ForwardingRulesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::ForwardingRulesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class GlobalSetLabelsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + end + end + + class GuestAttributes + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :self_link, as: 'selfLink' + property :variable_key, as: 'variableKey' + property :variable_value, as: 'variableValue' + end + end + + class GuestOsFeature + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :type, as: 'type' + end + end + + class Http2HealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :host, as: 'host' + property :port, as: 'port' + property :port_name, as: 'portName' + property :proxy_header, as: 'proxyHeader' + property :request_path, as: 'requestPath' + property :response, as: 'response' + end + end + + class HttpHealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :host, as: 'host' + property :port, as: 'port' + property :port_name, as: 'portName' + property :proxy_header, as: 'proxyHeader' + property :request_path, as: 'requestPath' + property :response, as: 'response' + end + end + + class HttpsHealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :host, as: 'host' + property :port, as: 'port' + property :port_name, as: 'portName' + property :proxy_header, as: 'proxyHeader' + property :request_path, as: 'requestPath' + property :response, as: 'response' + end + end + + class HealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval_sec, as: 'checkIntervalSec' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :healthy_threshold, as: 'healthyThreshold' + property :http2_health_check, as: 'http2HealthCheck', class: Google::Apis::ComputeAlpha::Http2HealthCheck, decorator: Google::Apis::ComputeAlpha::Http2HealthCheck::Representation + + property :http_health_check, as: 'httpHealthCheck', class: Google::Apis::ComputeAlpha::HttpHealthCheck, decorator: Google::Apis::ComputeAlpha::HttpHealthCheck::Representation + + property :https_health_check, as: 'httpsHealthCheck', class: Google::Apis::ComputeAlpha::HttpsHealthCheck, decorator: Google::Apis::ComputeAlpha::HttpsHealthCheck::Representation + + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :ssl_health_check, as: 'sslHealthCheck', class: Google::Apis::ComputeAlpha::SslHealthCheck, decorator: Google::Apis::ComputeAlpha::SslHealthCheck::Representation + + property :tcp_health_check, as: 'tcpHealthCheck', class: Google::Apis::ComputeAlpha::TcpHealthCheck, decorator: Google::Apis::ComputeAlpha::TcpHealthCheck::Representation + + property :timeout_sec, as: 'timeoutSec' + property :type, as: 'type' + property :udp_health_check, as: 'udpHealthCheck', class: Google::Apis::ComputeAlpha::UdpHealthCheck, decorator: Google::Apis::ComputeAlpha::UdpHealthCheck::Representation + + property :unhealthy_threshold, as: 'unhealthyThreshold' + end + end + + class HealthCheckList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::HealthCheck, decorator: Google::Apis::ComputeAlpha::HealthCheck::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HealthCheckList::Warning, decorator: Google::Apis::ComputeAlpha::HealthCheckList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HealthCheckList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HealthCheckList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HealthCheckReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :health_check, as: 'healthCheck' + end + end + + class HealthStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :health_state, as: 'healthState' + property :instance, as: 'instance' + property :ip_address, as: 'ipAddress' + property :port, as: 'port' + end + end + + class HealthStatusForNetworkEndpoint + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :backend_service, as: 'backendService', class: Google::Apis::ComputeAlpha::BackendServiceReference, decorator: Google::Apis::ComputeAlpha::BackendServiceReference::Representation + + property :forwarding_rule, as: 'forwardingRule', class: Google::Apis::ComputeAlpha::ForwardingRuleReference, decorator: Google::Apis::ComputeAlpha::ForwardingRuleReference::Representation + + property :health_check, as: 'healthCheck', class: Google::Apis::ComputeAlpha::HealthCheckReference, decorator: Google::Apis::ComputeAlpha::HealthCheckReference::Representation + + property :health_state, as: 'healthState' + end + end + + class Host + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :host_type, as: 'hostType' + property :id, :numeric_string => true, as: 'id' + collection :instances, as: 'instances' + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :zone, as: 'zone' + end + end + + class HostAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::HostsScopedList, decorator: Google::Apis::ComputeAlpha::HostsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HostAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::HostAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HostAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HostAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HostList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Host, decorator: Google::Apis::ComputeAlpha::Host::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HostList::Warning, decorator: Google::Apis::ComputeAlpha::HostList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HostList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HostList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HostRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + collection :hosts, as: 'hosts' + property :path_matcher, as: 'pathMatcher' + end + end + + class HostType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cpu_platform, as: 'cpuPlatform' + property :creation_timestamp, as: 'creationTimestamp' + property :deprecated, as: 'deprecated', class: Google::Apis::ComputeAlpha::DeprecationStatus, decorator: Google::Apis::ComputeAlpha::DeprecationStatus::Representation + + property :description, as: 'description' + property :guest_cpus, as: 'guestCpus' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :local_ssd_gb, as: 'localSsdGb' + property :memory_mb, as: 'memoryMb' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :zone, as: 'zone' + end + end + + class HostTypeAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::HostTypesScopedList, decorator: Google::Apis::ComputeAlpha::HostTypesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HostTypeAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::HostTypeAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HostTypeAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HostTypeAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HostTypeList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::HostType, decorator: Google::Apis::ComputeAlpha::HostType::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HostTypeList::Warning, decorator: Google::Apis::ComputeAlpha::HostTypeList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HostTypeList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HostTypeList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HostTypesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :host_types, as: 'hostTypes', class: Google::Apis::ComputeAlpha::HostType, decorator: Google::Apis::ComputeAlpha::HostType::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HostTypesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::HostTypesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HostTypesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HostTypesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HostsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :hosts, as: 'hosts', class: Google::Apis::ComputeAlpha::Host, decorator: Google::Apis::ComputeAlpha::Host::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HostsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::HostsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HostsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HostsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HttpHealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval_sec, as: 'checkIntervalSec' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :healthy_threshold, as: 'healthyThreshold' + property :host, as: 'host' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :port, as: 'port' + property :request_path, as: 'requestPath' + property :self_link, as: 'selfLink' + property :timeout_sec, as: 'timeoutSec' + property :unhealthy_threshold, as: 'unhealthyThreshold' + end + end + + class HttpHealthCheckList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::HttpHealthCheck, decorator: Google::Apis::ComputeAlpha::HttpHealthCheck::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HttpHealthCheckList::Warning, decorator: Google::Apis::ComputeAlpha::HttpHealthCheckList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HttpHealthCheckList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HttpHealthCheckList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class HttpsHealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval_sec, as: 'checkIntervalSec' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :healthy_threshold, as: 'healthyThreshold' + property :host, as: 'host' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :port, as: 'port' + property :request_path, as: 'requestPath' + property :self_link, as: 'selfLink' + property :timeout_sec, as: 'timeoutSec' + property :unhealthy_threshold, as: 'unhealthyThreshold' + end + end + + class HttpsHealthCheckList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::HttpsHealthCheck, decorator: Google::Apis::ComputeAlpha::HttpsHealthCheck::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::HttpsHealthCheckList::Warning, decorator: Google::Apis::ComputeAlpha::HttpsHealthCheckList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::HttpsHealthCheckList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::HttpsHealthCheckList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class Image + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :archive_size_bytes, :numeric_string => true, as: 'archiveSizeBytes' + property :creation_timestamp, as: 'creationTimestamp' + property :deprecated, as: 'deprecated', class: Google::Apis::ComputeAlpha::DeprecationStatus, decorator: Google::Apis::ComputeAlpha::DeprecationStatus::Representation + + property :description, as: 'description' + property :disk_size_gb, :numeric_string => true, as: 'diskSizeGb' + property :family, as: 'family' + collection :guest_os_features, as: 'guestOsFeatures', class: Google::Apis::ComputeAlpha::GuestOsFeature, decorator: Google::Apis::ComputeAlpha::GuestOsFeature::Representation + + property :id, :numeric_string => true, as: 'id' + property :image_encryption_key, as: 'imageEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + collection :license_codes, as: 'licenseCodes' + collection :licenses, as: 'licenses' + property :name, as: 'name' + property :raw_disk, as: 'rawDisk', class: Google::Apis::ComputeAlpha::Image::RawDisk, decorator: Google::Apis::ComputeAlpha::Image::RawDisk::Representation + + property :self_link, as: 'selfLink' + property :source_disk, as: 'sourceDisk' + property :source_disk_encryption_key, as: 'sourceDiskEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source_disk_id, as: 'sourceDiskId' + property :source_image, as: 'sourceImage' + property :source_image_encryption_key, as: 'sourceImageEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source_image_id, as: 'sourceImageId' + property :source_type, as: 'sourceType' + property :status, as: 'status' + end + + class RawDisk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :container_type, as: 'containerType' + property :sha1_checksum, as: 'sha1Checksum' + property :source, as: 'source' + end + end + end + + class ImageList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Image, decorator: Google::Apis::ComputeAlpha::Image::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::ImageList::Warning, decorator: Google::Apis::ComputeAlpha::ImageList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::ImageList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::ImageList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class Instance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :can_ip_forward, as: 'canIpForward' + property :cpu_platform, as: 'cpuPlatform' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + collection :disks, as: 'disks', class: Google::Apis::ComputeAlpha::AttachedDisk, decorator: Google::Apis::ComputeAlpha::AttachedDisk::Representation + + collection :guest_accelerators, as: 'guestAccelerators', class: Google::Apis::ComputeAlpha::AcceleratorConfig, decorator: Google::Apis::ComputeAlpha::AcceleratorConfig::Representation + + property :host, as: 'host' + property :id, :numeric_string => true, as: 'id' + property :instance_encryption_key, as: 'instanceEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + property :machine_type, as: 'machineType' + property :metadata, as: 'metadata', class: Google::Apis::ComputeAlpha::Metadata, decorator: Google::Apis::ComputeAlpha::Metadata::Representation + + property :min_cpu_platform, as: 'minCpuPlatform' + property :name, as: 'name' + collection :network_interfaces, as: 'networkInterfaces', class: Google::Apis::ComputeAlpha::NetworkInterface, decorator: Google::Apis::ComputeAlpha::NetworkInterface::Representation + + property :scheduling, as: 'scheduling', class: Google::Apis::ComputeAlpha::Scheduling, decorator: Google::Apis::ComputeAlpha::Scheduling::Representation + + property :self_link, as: 'selfLink' + collection :service_accounts, as: 'serviceAccounts', class: Google::Apis::ComputeAlpha::ServiceAccount, decorator: Google::Apis::ComputeAlpha::ServiceAccount::Representation + + property :start_restricted, as: 'startRestricted' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :tags, as: 'tags', class: Google::Apis::ComputeAlpha::Tags, decorator: Google::Apis::ComputeAlpha::Tags::Representation + + property :zone, as: 'zone' + end + end + + class InstanceAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::InstancesScopedList, decorator: Google::Apis::ComputeAlpha::InstancesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroup + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :fingerprint, :base64 => true, as: 'fingerprint' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + collection :named_ports, as: 'namedPorts', class: Google::Apis::ComputeAlpha::NamedPort, decorator: Google::Apis::ComputeAlpha::NamedPort::Representation + + property :network, as: 'network' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :size, as: 'size' + property :subnetwork, as: 'subnetwork' + property :zone, as: 'zone' + end + end + + class InstanceGroupAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceGroupsScopedList, decorator: Google::Apis::ComputeAlpha::InstanceGroupsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceGroup, decorator: Google::Apis::ComputeAlpha::InstanceGroup::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupManager + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :activities, as: 'activities', class: Google::Apis::ComputeAlpha::InstanceGroupManagerActivities, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerActivities::Representation + + collection :auto_healing_policies, as: 'autoHealingPolicies', class: Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy::Representation + + property :base_instance_name, as: 'baseInstanceName' + property :creation_timestamp, as: 'creationTimestamp' + property :current_actions, as: 'currentActions', class: Google::Apis::ComputeAlpha::InstanceGroupManagerActionsSummary, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerActionsSummary::Representation + + property :description, as: 'description' + property :distribution_policy, as: 'distributionPolicy', class: Google::Apis::ComputeAlpha::DistributionPolicy, decorator: Google::Apis::ComputeAlpha::DistributionPolicy::Representation + + property :failover_action, as: 'failoverAction' + property :fingerprint, :base64 => true, as: 'fingerprint' + property :id, :numeric_string => true, as: 'id' + property :instance_group, as: 'instanceGroup' + property :instance_template, as: 'instanceTemplate' + property :kind, as: 'kind' + property :name, as: 'name' + collection :named_ports, as: 'namedPorts', class: Google::Apis::ComputeAlpha::NamedPort, decorator: Google::Apis::ComputeAlpha::NamedPort::Representation + + property :pending_actions, as: 'pendingActions', class: Google::Apis::ComputeAlpha::InstanceGroupManagerPendingActionsSummary, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerPendingActionsSummary::Representation + + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :service_account, as: 'serviceAccount' + property :stateful_policy, as: 'statefulPolicy', class: Google::Apis::ComputeAlpha::InstanceGroupManagerStatefulPolicy, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerStatefulPolicy::Representation + + collection :target_pools, as: 'targetPools' + property :target_size, as: 'targetSize' + property :update_policy, as: 'updatePolicy', class: Google::Apis::ComputeAlpha::InstanceGroupManagerUpdatePolicy, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerUpdatePolicy::Representation + + collection :versions, as: 'versions', class: Google::Apis::ComputeAlpha::InstanceGroupManagerVersion, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerVersion::Representation + + property :zone, as: 'zone' + end + end + + class InstanceGroupManagerActionsSummary + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :abandoning, as: 'abandoning' + property :creating, as: 'creating' + property :creating_without_retries, as: 'creatingWithoutRetries' + property :deleting, as: 'deleting' + property :none, as: 'none' + property :recreating, as: 'recreating' + property :refreshing, as: 'refreshing' + property :restarting, as: 'restarting' + property :verifying, as: 'verifying' + end + end + + class InstanceGroupManagerActivities + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :autohealing, as: 'autohealing' + property :autohealing_health_check_based, as: 'autohealingHealthCheckBased' + property :autoscaling_down, as: 'autoscalingDown' + property :autoscaling_up, as: 'autoscalingUp' + property :creating_instances, as: 'creatingInstances' + property :deleting_instances, as: 'deletingInstances' + property :recreating_instances, as: 'recreatingInstances' + end + end + + class InstanceGroupManagerAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceGroupManagersScopedList, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagersScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupManagerAutoHealingPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :health_check, as: 'healthCheck' + property :initial_delay_sec, as: 'initialDelaySec' + property :max_unavailable, as: 'maxUnavailable', class: Google::Apis::ComputeAlpha::FixedOrPercent, decorator: Google::Apis::ComputeAlpha::FixedOrPercent::Representation + + end + end + + class InstanceGroupManagerList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceGroupManager, decorator: Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupManagerList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupManagerList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupManagerPendingActionsSummary + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creating, as: 'creating' + property :deleting, as: 'deleting' + property :recreating, as: 'recreating' + property :restarting, as: 'restarting' + end + end + + class InstanceGroupManagerStatefulPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :preserved_disks, as: 'preservedDisks', class: Google::Apis::ComputeAlpha::InstanceGroupManagerStatefulPolicyDiskPolicy, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerStatefulPolicyDiskPolicy::Representation + + end + end + + class InstanceGroupManagerStatefulPolicyDiskPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :device_name, as: 'deviceName' + end + end + + class InstanceGroupManagerUpdatePolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_surge, as: 'maxSurge', class: Google::Apis::ComputeAlpha::FixedOrPercent, decorator: Google::Apis::ComputeAlpha::FixedOrPercent::Representation + + property :max_unavailable, as: 'maxUnavailable', class: Google::Apis::ComputeAlpha::FixedOrPercent, decorator: Google::Apis::ComputeAlpha::FixedOrPercent::Representation + + property :min_ready_sec, as: 'minReadySec' + property :minimal_action, as: 'minimalAction' + property :type, as: 'type' + end + end + + class InstanceGroupManagerVersion + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance_template, as: 'instanceTemplate' + property :name, as: 'name' + property :tag, as: 'tag' + property :target_size, as: 'targetSize', class: Google::Apis::ComputeAlpha::FixedOrPercent, decorator: Google::Apis::ComputeAlpha::FixedOrPercent::Representation + + end + end + + class InstanceGroupManagersAbandonInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class InstanceGroupManagersApplyUpdatesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + property :maximal_action, as: 'maximalAction' + property :minimal_action, as: 'minimalAction' + end + end + + class InstanceGroupManagersDeleteInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class InstanceGroupManagersDeletePerInstanceConfigsReq + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class InstanceGroupManagersListManagedInstancesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :managed_instances, as: 'managedInstances', class: Google::Apis::ComputeAlpha::ManagedInstance, decorator: Google::Apis::ComputeAlpha::ManagedInstance::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class InstanceGroupManagersListPerInstanceConfigsResp + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::PerInstanceConfig, decorator: Google::Apis::ComputeAlpha::PerInstanceConfig::Representation + + property :next_page_token, as: 'nextPageToken' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupManagersRecreateInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class InstanceGroupManagersResizeAdvancedRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :no_creation_retries, as: 'noCreationRetries' + property :target_size, as: 'targetSize' + end + end + + class InstanceGroupManagersScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instance_group_managers, as: 'instanceGroupManagers', class: Google::Apis::ComputeAlpha::InstanceGroupManager, decorator: Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupManagersScopedList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagersScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupManagersScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagersScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupManagersSetAutoHealingRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :auto_healing_policies, as: 'autoHealingPolicies', class: Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy::Representation + + end + end + + class InstanceGroupManagersSetInstanceTemplateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance_template, as: 'instanceTemplate' + end + end + + class InstanceGroupManagersSetTargetPoolsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :target_pools, as: 'targetPools' + end + end + + class InstanceGroupManagersUpdatePerInstanceConfigsReq + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :per_instance_configs, as: 'perInstanceConfigs', class: Google::Apis::ComputeAlpha::PerInstanceConfig, decorator: Google::Apis::ComputeAlpha::PerInstanceConfig::Representation + + end + end + + class InstanceGroupsAddInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::ComputeAlpha::InstanceReference, decorator: Google::Apis::ComputeAlpha::InstanceReference::Representation + + end + end + + class InstanceGroupsListInstances + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceWithNamedPorts, decorator: Google::Apis::ComputeAlpha::InstanceWithNamedPorts::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupsListInstances::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupsListInstances::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupsListInstances::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupsListInstances::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupsListInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance_state, as: 'instanceState' + end + end + + class InstanceGroupsRemoveInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::ComputeAlpha::InstanceReference, decorator: Google::Apis::ComputeAlpha::InstanceReference::Representation + + end + end + + class InstanceGroupsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instance_groups, as: 'instanceGroups', class: Google::Apis::ComputeAlpha::InstanceGroup, decorator: Google::Apis::ComputeAlpha::InstanceGroup::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceGroupsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceGroupsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceGroupsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceGroupsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceGroupsSetNamedPortsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :named_ports, as: 'namedPorts', class: Google::Apis::ComputeAlpha::NamedPort, decorator: Google::Apis::ComputeAlpha::NamedPort::Representation + + end + end + + class InstanceList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Instance, decorator: Google::Apis::ComputeAlpha::Instance::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceListReferrers + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Reference, decorator: Google::Apis::ComputeAlpha::Reference::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceListReferrers::Warning, decorator: Google::Apis::ComputeAlpha::InstanceListReferrers::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceListReferrers::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceListReferrers::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceMoveRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination_zone, as: 'destinationZone' + property :target_instance, as: 'targetInstance' + end + end + + class InstanceProperties + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :can_ip_forward, as: 'canIpForward' + property :description, as: 'description' + collection :disks, as: 'disks', class: Google::Apis::ComputeAlpha::AttachedDisk, decorator: Google::Apis::ComputeAlpha::AttachedDisk::Representation + + collection :guest_accelerators, as: 'guestAccelerators', class: Google::Apis::ComputeAlpha::AcceleratorConfig, decorator: Google::Apis::ComputeAlpha::AcceleratorConfig::Representation + + hash :labels, as: 'labels' + property :machine_type, as: 'machineType' + property :metadata, as: 'metadata', class: Google::Apis::ComputeAlpha::Metadata, decorator: Google::Apis::ComputeAlpha::Metadata::Representation + + property :min_cpu_platform, as: 'minCpuPlatform' + collection :network_interfaces, as: 'networkInterfaces', class: Google::Apis::ComputeAlpha::NetworkInterface, decorator: Google::Apis::ComputeAlpha::NetworkInterface::Representation + + property :scheduling, as: 'scheduling', class: Google::Apis::ComputeAlpha::Scheduling, decorator: Google::Apis::ComputeAlpha::Scheduling::Representation + + collection :service_accounts, as: 'serviceAccounts', class: Google::Apis::ComputeAlpha::ServiceAccount, decorator: Google::Apis::ComputeAlpha::ServiceAccount::Representation + + property :tags, as: 'tags', class: Google::Apis::ComputeAlpha::Tags, decorator: Google::Apis::ComputeAlpha::Tags::Representation + + end + end + + class InstanceReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance, as: 'instance' + end + end + + class InstanceTemplate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :properties, as: 'properties', class: Google::Apis::ComputeAlpha::InstanceProperties, decorator: Google::Apis::ComputeAlpha::InstanceProperties::Representation + + property :self_link, as: 'selfLink' + property :source_instance, as: 'sourceInstance' + end + end + + class InstanceTemplateList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceTemplate, decorator: Google::Apis::ComputeAlpha::InstanceTemplate::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstanceTemplateList::Warning, decorator: Google::Apis::ComputeAlpha::InstanceTemplateList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstanceTemplateList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstanceTemplateList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstanceWithNamedPorts + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance, as: 'instance' + collection :named_ports, as: 'namedPorts', class: Google::Apis::ComputeAlpha::NamedPort, decorator: Google::Apis::ComputeAlpha::NamedPort::Representation + + property :status, as: 'status' + end + end + + class InstancesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::ComputeAlpha::Instance, decorator: Google::Apis::ComputeAlpha::Instance::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InstancesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::InstancesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InstancesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InstancesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InstancesSetLabelsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + end + end + + class InstancesSetMachineResourcesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :guest_accelerators, as: 'guestAccelerators', class: Google::Apis::ComputeAlpha::AcceleratorConfig, decorator: Google::Apis::ComputeAlpha::AcceleratorConfig::Representation + + end + end + + class InstancesSetMachineTypeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :machine_type, as: 'machineType' + end + end + + class InstancesSetMinCpuPlatformRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :min_cpu_platform, as: 'minCpuPlatform' + end + end + + class InstancesSetServiceAccountRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + collection :scopes, as: 'scopes' + end + end + + class InstancesStartWithEncryptionKeyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :disks, as: 'disks', class: Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKeyProtectedDisk::Representation + + property :instance_encryption_key, as: 'instanceEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + end + end + + class Interconnect + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :admin_enabled, as: 'adminEnabled' + collection :circuit_infos, as: 'circuitInfos', class: Google::Apis::ComputeAlpha::InterconnectCircuitInfo, decorator: Google::Apis::ComputeAlpha::InterconnectCircuitInfo::Representation + + property :connection_authorization, as: 'connectionAuthorization' + property :creation_timestamp, as: 'creationTimestamp' + property :customer_name, as: 'customerName' + property :description, as: 'description' + collection :expected_outages, as: 'expectedOutages', class: Google::Apis::ComputeAlpha::InterconnectOutageNotification, decorator: Google::Apis::ComputeAlpha::InterconnectOutageNotification::Representation + + property :google_ip_address, as: 'googleIpAddress' + property :google_reference_id, as: 'googleReferenceId' + property :id, :numeric_string => true, as: 'id' + collection :interconnect_attachments, as: 'interconnectAttachments' + property :interconnect_type, as: 'interconnectType' + property :kind, as: 'kind' + property :link_type, as: 'linkType' + property :location, as: 'location' + property :name, as: 'name' + property :noc_contact_email, as: 'nocContactEmail' + property :operational_status, as: 'operationalStatus' + property :peer_ip_address, as: 'peerIpAddress' + property :provisioned_link_count, as: 'provisionedLinkCount' + property :requested_link_count, as: 'requestedLinkCount' + property :self_link, as: 'selfLink' + end + end + + class InterconnectAttachment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cloud_router_ip_address, as: 'cloudRouterIpAddress' + property :creation_timestamp, as: 'creationTimestamp' + property :customer_router_ip_address, as: 'customerRouterIpAddress' + property :description, as: 'description' + property :google_reference_id, as: 'googleReferenceId' + property :id, :numeric_string => true, as: 'id' + property :interconnect, as: 'interconnect' + property :kind, as: 'kind' + property :name, as: 'name' + property :operational_status, as: 'operationalStatus' + property :private_interconnect_info, as: 'privateInterconnectInfo', class: Google::Apis::ComputeAlpha::InterconnectAttachmentPrivateInfo, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentPrivateInfo::Representation + + property :region, as: 'region' + property :router, as: 'router' + property :self_link, as: 'selfLink' + end + end + + class InterconnectAttachmentAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::InterconnectAttachmentsScopedList, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InterconnectAttachmentList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InterconnectAttachment, decorator: Google::Apis::ComputeAlpha::InterconnectAttachment::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InterconnectAttachmentList::Warning, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InterconnectAttachmentList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InterconnectAttachmentPrivateInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :tag8021q, as: 'tag8021q' + end + end + + class InterconnectAttachmentsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :interconnect_attachments, as: 'interconnectAttachments', class: Google::Apis::ComputeAlpha::InterconnectAttachment, decorator: Google::Apis::ComputeAlpha::InterconnectAttachment::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InterconnectAttachmentsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InterconnectAttachmentsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InterconnectAttachmentsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InterconnectCircuitInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :customer_demarc_id, as: 'customerDemarcId' + property :google_circuit_id, as: 'googleCircuitId' + property :google_demarc_id, as: 'googleDemarcId' + end + end + + class InterconnectList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Interconnect, decorator: Google::Apis::ComputeAlpha::Interconnect::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InterconnectList::Warning, decorator: Google::Apis::ComputeAlpha::InterconnectList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InterconnectList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InterconnectList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InterconnectLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :address, as: 'address' + property :availability_zone, as: 'availabilityZone' + property :city, as: 'city' + property :continent, as: 'continent' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :facility_provider, as: 'facilityProvider' + property :facility_provider_facility_id, as: 'facilityProviderFacilityId' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :peeringdb_facility_id, as: 'peeringdbFacilityId' + collection :region_infos, as: 'regionInfos', class: Google::Apis::ComputeAlpha::InterconnectLocationRegionInfo, decorator: Google::Apis::ComputeAlpha::InterconnectLocationRegionInfo::Representation + + property :self_link, as: 'selfLink' + end + end + + class InterconnectLocationList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InterconnectLocation, decorator: Google::Apis::ComputeAlpha::InterconnectLocation::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::InterconnectLocationList::Warning, decorator: Google::Apis::ComputeAlpha::InterconnectLocationList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::InterconnectLocationList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::InterconnectLocationList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class InterconnectLocationRegionInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :expected_rtt_ms, :numeric_string => true, as: 'expectedRttMs' + property :location_presence, as: 'locationPresence' + property :region, as: 'region' + property :region_key, as: 'regionKey' + end + end + + class InterconnectOutageNotification + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :affected_circuits, as: 'affectedCircuits' + property :description, as: 'description' + property :end_time, :numeric_string => true, as: 'endTime' + property :issue_type, as: 'issueType' + property :name, as: 'name' + property :source, as: 'source' + property :start_time, :numeric_string => true, as: 'startTime' + property :state, as: 'state' + end + end + + class InternalIpOwner + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_cidr_range, as: 'ipCidrRange' + collection :owners, as: 'owners' + property :system_owned, as: 'systemOwned' + end + end + + class IpOwnerList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InternalIpOwner, decorator: Google::Apis::ComputeAlpha::InternalIpOwner::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::IpOwnerList::Warning, decorator: Google::Apis::ComputeAlpha::IpOwnerList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::IpOwnerList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::IpOwnerList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class License + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :charges_use_fee, as: 'chargesUseFee' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :license_code, :numeric_string => true, as: 'licenseCode' + property :name, as: 'name' + property :resource_requirements, as: 'resourceRequirements', class: Google::Apis::ComputeAlpha::LicenseResourceRequirements, decorator: Google::Apis::ComputeAlpha::LicenseResourceRequirements::Representation + + property :self_link, as: 'selfLink' + property :transferable, as: 'transferable' + end + end + + class LicenseCode + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + collection :license_alias, as: 'licenseAlias', class: Google::Apis::ComputeAlpha::LicenseCodeLicenseAlias, decorator: Google::Apis::ComputeAlpha::LicenseCodeLicenseAlias::Representation + + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :state, as: 'state' + property :transferable, as: 'transferable' + end + end + + class LicenseCodeLicenseAlias + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :self_link, as: 'selfLink' + end + end + + class LicenseResourceRequirements + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :min_guest_cpu_count, as: 'minGuestCpuCount' + property :min_memory_mb, as: 'minMemoryMb' + end + end + + class LicensesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::License, decorator: Google::Apis::ComputeAlpha::License::Representation + + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::LicensesListResponse::Warning, decorator: Google::Apis::ComputeAlpha::LicensesListResponse::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::LicensesListResponse::Warning::Datum, decorator: Google::Apis::ComputeAlpha::LicensesListResponse::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class LogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cloud_audit, as: 'cloudAudit', class: Google::Apis::ComputeAlpha::LogConfigCloudAuditOptions, decorator: Google::Apis::ComputeAlpha::LogConfigCloudAuditOptions::Representation + + property :counter, as: 'counter', class: Google::Apis::ComputeAlpha::LogConfigCounterOptions, decorator: Google::Apis::ComputeAlpha::LogConfigCounterOptions::Representation + + property :data_access, as: 'dataAccess', class: Google::Apis::ComputeAlpha::LogConfigDataAccessOptions, decorator: Google::Apis::ComputeAlpha::LogConfigDataAccessOptions::Representation + + end + end + + class LogConfigCloudAuditOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :authorization_logging_options, as: 'authorizationLoggingOptions', class: Google::Apis::ComputeAlpha::AuthorizationLoggingOptions, decorator: Google::Apis::ComputeAlpha::AuthorizationLoggingOptions::Representation + + property :log_name, as: 'logName' + end + end + + class LogConfigCounterOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field' + property :metric, as: 'metric' + end + end + + class LogConfigDataAccessOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :log_mode, as: 'logMode' + end + end + + class MachineType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :deprecated, as: 'deprecated', class: Google::Apis::ComputeAlpha::DeprecationStatus, decorator: Google::Apis::ComputeAlpha::DeprecationStatus::Representation + + property :description, as: 'description' + property :guest_cpus, as: 'guestCpus' + property :id, :numeric_string => true, as: 'id' + property :is_shared_cpu, as: 'isSharedCpu' + property :kind, as: 'kind' + property :maximum_persistent_disks, as: 'maximumPersistentDisks' + property :maximum_persistent_disks_size_gb, :numeric_string => true, as: 'maximumPersistentDisksSizeGb' + property :memory_mb, as: 'memoryMb' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :zone, as: 'zone' + end + end + + class MachineTypeAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::MachineTypesScopedList, decorator: Google::Apis::ComputeAlpha::MachineTypesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::MachineTypeAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::MachineTypeAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::MachineTypeAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::MachineTypeAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class MachineTypeList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::MachineType, decorator: Google::Apis::ComputeAlpha::MachineType::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::MachineTypeList::Warning, decorator: Google::Apis::ComputeAlpha::MachineTypeList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::MachineTypeList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::MachineTypeList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class MachineTypesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :machine_types, as: 'machineTypes', class: Google::Apis::ComputeAlpha::MachineType, decorator: Google::Apis::ComputeAlpha::MachineType::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::MachineTypesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::MachineTypesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::MachineTypesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::MachineTypesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ManagedInstance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :current_action, as: 'currentAction' + property :id, :numeric_string => true, as: 'id' + property :instance, as: 'instance' + property :instance_status, as: 'instanceStatus' + property :instance_template, as: 'instanceTemplate' + property :last_attempt, as: 'lastAttempt', class: Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt, decorator: Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt::Representation + + property :override, as: 'override', class: Google::Apis::ComputeAlpha::ManagedInstanceOverride, decorator: Google::Apis::ComputeAlpha::ManagedInstanceOverride::Representation + + property :standby_mode, as: 'standbyMode' + property :tag, as: 'tag' + property :version, as: 'version', class: Google::Apis::ComputeAlpha::ManagedInstanceVersion, decorator: Google::Apis::ComputeAlpha::ManagedInstanceVersion::Representation + + end + end + + class ManagedInstanceLastAttempt + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :errors, as: 'errors', class: Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt::Errors, decorator: Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt::Errors::Representation + + end + + class Errors + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt::Errors::Error, decorator: Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt::Errors::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + end + + class ManagedInstanceOverride + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :disks, as: 'disks', class: Google::Apis::ComputeAlpha::ManagedInstanceOverrideDiskOverride, decorator: Google::Apis::ComputeAlpha::ManagedInstanceOverrideDiskOverride::Representation + + property :origin, as: 'origin' + end + end + + class ManagedInstanceOverrideDiskOverride + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :device_name, as: 'deviceName' + property :mode, as: 'mode' + property :source, as: 'source' + end + end + + class ManagedInstanceVersion + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance_template, as: 'instanceTemplate' + property :name, as: 'name' + end + end + + class Metadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Metadata::Item, decorator: Google::Apis::ComputeAlpha::Metadata::Item::Representation + + property :kind, as: 'kind' + end + + class Item + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + + class NamedPort + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :port, as: 'port' + end + end + + class Network + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :i_pv4_range, as: 'IPv4Range' + property :auto_create_subnetworks, as: 'autoCreateSubnetworks' + property :creation_timestamp, as: 'creationTimestamp' + property :cross_vm_encryption, as: 'crossVmEncryption' + property :description, as: 'description' + property :gateway_i_pv4, as: 'gatewayIPv4' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :load_balancer_vm_encryption, as: 'loadBalancerVmEncryption' + property :name, as: 'name' + collection :peerings, as: 'peerings', class: Google::Apis::ComputeAlpha::NetworkPeering, decorator: Google::Apis::ComputeAlpha::NetworkPeering::Representation + + property :routing_config, as: 'routingConfig', class: Google::Apis::ComputeAlpha::NetworkRoutingConfig, decorator: Google::Apis::ComputeAlpha::NetworkRoutingConfig::Representation + + property :self_link, as: 'selfLink' + collection :subnetworks, as: 'subnetworks' + end + end + + class NetworkEndpoint + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance, as: 'instance' + property :ip_address, as: 'ipAddress' + property :port, as: 'port' + end + end + + class NetworkEndpointGroup + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :load_balancer, as: 'loadBalancer', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupLbNetworkEndpointGroup, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupLbNetworkEndpointGroup::Representation + + property :name, as: 'name' + property :network_endpoint_type, as: 'networkEndpointType' + property :self_link, as: 'selfLink' + property :size, as: 'size' + property :type, as: 'type' + end + end + + class NetworkEndpointGroupAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupsScopedList, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class NetworkEndpointGroupLbNetworkEndpointGroup + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :default_port, as: 'defaultPort' + property :network, as: 'network' + property :subnetwork, as: 'subnetwork' + property :zone, as: 'zone' + end + end + + class NetworkEndpointGroupList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::NetworkEndpointGroup, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroup::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupList::Warning, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class NetworkEndpointGroupsAttachEndpointsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :network_endpoints, as: 'networkEndpoints', class: Google::Apis::ComputeAlpha::NetworkEndpoint, decorator: Google::Apis::ComputeAlpha::NetworkEndpoint::Representation + + end + end + + class NetworkEndpointGroupsDetachEndpointsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :network_endpoints, as: 'networkEndpoints', class: Google::Apis::ComputeAlpha::NetworkEndpoint, decorator: Google::Apis::ComputeAlpha::NetworkEndpoint::Representation + + end + end + + class NetworkEndpointGroupsListEndpointsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :health_status, as: 'healthStatus' + end + end + + class NetworkEndpointGroupsListNetworkEndpoints + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::NetworkEndpointWithHealthStatus, decorator: Google::Apis::ComputeAlpha::NetworkEndpointWithHealthStatus::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints::Warning, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints::Warning::Datum, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class NetworkEndpointGroupsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :network_endpoint_groups, as: 'networkEndpointGroups', class: Google::Apis::ComputeAlpha::NetworkEndpointGroup, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroup::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::NetworkEndpointGroupsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::NetworkEndpointGroupsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class NetworkEndpointWithHealthStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :healths, as: 'healths', class: Google::Apis::ComputeAlpha::HealthStatusForNetworkEndpoint, decorator: Google::Apis::ComputeAlpha::HealthStatusForNetworkEndpoint::Representation + + property :network_endpoint, as: 'networkEndpoint', class: Google::Apis::ComputeAlpha::NetworkEndpoint, decorator: Google::Apis::ComputeAlpha::NetworkEndpoint::Representation + + end + end + + class NetworkInterface + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :access_configs, as: 'accessConfigs', class: Google::Apis::ComputeAlpha::AccessConfig, decorator: Google::Apis::ComputeAlpha::AccessConfig::Representation + + collection :alias_ip_ranges, as: 'aliasIpRanges', class: Google::Apis::ComputeAlpha::AliasIpRange, decorator: Google::Apis::ComputeAlpha::AliasIpRange::Representation + + property :fingerprint, :base64 => true, as: 'fingerprint' + property :kind, as: 'kind' + property :name, as: 'name' + property :network, as: 'network' + property :network_ip, as: 'networkIP' + property :subnetwork, as: 'subnetwork' + end + end + + class NetworkList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Network, decorator: Google::Apis::ComputeAlpha::Network::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::NetworkList::Warning, decorator: Google::Apis::ComputeAlpha::NetworkList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::NetworkList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::NetworkList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class NetworkPeering + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_create_routes, as: 'autoCreateRoutes' + property :name, as: 'name' + property :network, as: 'network' + property :state, as: 'state' + property :state_details, as: 'stateDetails' + end + end + + class NetworkRoutingConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :routing_mode, as: 'routingMode' + end + end + + class NetworksAddPeeringRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_create_routes, as: 'autoCreateRoutes' + property :name, as: 'name' + property :peer_network, as: 'peerNetwork' + end + end + + class NetworksRemovePeeringRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_operation_id, as: 'clientOperationId' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :end_time, as: 'endTime' + property :error, as: 'error', class: Google::Apis::ComputeAlpha::Operation::Error, decorator: Google::Apis::ComputeAlpha::Operation::Error::Representation + + property :http_error_message, as: 'httpErrorMessage' + property :http_error_status_code, as: 'httpErrorStatusCode' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + property :kind, as: 'kind' + property :name, as: 'name' + property :operation_type, as: 'operationType' + property :progress, as: 'progress' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :start_time, as: 'startTime' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :target_id, :numeric_string => true, as: 'targetId' + property :target_link, as: 'targetLink' + property :user, as: 'user' + collection :warnings, as: 'warnings', class: Google::Apis::ComputeAlpha::Operation::Warning, decorator: Google::Apis::ComputeAlpha::Operation::Warning::Representation + + property :zone, as: 'zone' + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::ComputeAlpha::Operation::Error::Error, decorator: Google::Apis::ComputeAlpha::Operation::Error::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::Operation::Warning::Datum, decorator: Google::Apis::ComputeAlpha::Operation::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class OperationAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::OperationsScopedList, decorator: Google::Apis::ComputeAlpha::OperationsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::OperationAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::OperationAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::OperationAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::OperationAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class OperationList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Operation, decorator: Google::Apis::ComputeAlpha::Operation::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::OperationList::Warning, decorator: Google::Apis::ComputeAlpha::OperationList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::OperationList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::OperationList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class OperationsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :operations, as: 'operations', class: Google::Apis::ComputeAlpha::Operation, decorator: Google::Apis::ComputeAlpha::Operation::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::OperationsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::OperationsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::OperationsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::OperationsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class PathMatcher + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :default_service, as: 'defaultService' + property :description, as: 'description' + property :name, as: 'name' + collection :path_rules, as: 'pathRules', class: Google::Apis::ComputeAlpha::PathRule, decorator: Google::Apis::ComputeAlpha::PathRule::Representation + + end + end + + class PathRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :paths, as: 'paths' + property :service, as: 'service' + end + end + + class PerInstanceConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance, as: 'instance' + property :override, as: 'override', class: Google::Apis::ComputeAlpha::ManagedInstanceOverride, decorator: Google::Apis::ComputeAlpha::ManagedInstanceOverride::Representation + + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::ComputeAlpha::AuditConfig, decorator: Google::Apis::ComputeAlpha::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::ComputeAlpha::Binding, decorator: Google::Apis::ComputeAlpha::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :iam_owned, as: 'iamOwned' + collection :rules, as: 'rules', class: Google::Apis::ComputeAlpha::Rule, decorator: Google::Apis::ComputeAlpha::Rule::Representation + + property :version, as: 'version' + end + end + + class Project + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :common_instance_metadata, as: 'commonInstanceMetadata', class: Google::Apis::ComputeAlpha::Metadata, decorator: Google::Apis::ComputeAlpha::Metadata::Representation + + property :creation_timestamp, as: 'creationTimestamp' + property :default_service_account, as: 'defaultServiceAccount' + property :description, as: 'description' + collection :enabled_features, as: 'enabledFeatures' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + collection :quotas, as: 'quotas', class: Google::Apis::ComputeAlpha::Quota, decorator: Google::Apis::ComputeAlpha::Quota::Representation + + property :self_link, as: 'selfLink' + property :usage_export_location, as: 'usageExportLocation', class: Google::Apis::ComputeAlpha::UsageExportLocation, decorator: Google::Apis::ComputeAlpha::UsageExportLocation::Representation + + property :xpn_project_status, as: 'xpnProjectStatus' + end + end + + class ProjectsDisableXpnResourceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :xpn_resource, as: 'xpnResource', class: Google::Apis::ComputeAlpha::XpnResourceId, decorator: Google::Apis::ComputeAlpha::XpnResourceId::Representation + + end + end + + class ProjectsEnableXpnResourceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :xpn_resource, as: 'xpnResource', class: Google::Apis::ComputeAlpha::XpnResourceId, decorator: Google::Apis::ComputeAlpha::XpnResourceId::Representation + + end + end + + class ProjectsGetXpnResources + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :resources, as: 'resources', class: Google::Apis::ComputeAlpha::XpnResourceId, decorator: Google::Apis::ComputeAlpha::XpnResourceId::Representation + + end + end + + class ProjectsListXpnHostsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :organization, as: 'organization' + end + end + + class ProjectsSetDefaultServiceAccountRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + end + end + + class Quota + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :limit, as: 'limit' + property :metric, as: 'metric' + property :usage, as: 'usage' + end + end + + class Reference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :reference_type, as: 'referenceType' + property :referrer, as: 'referrer' + property :target, as: 'target' + end + end + + class Region + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :deprecated, as: 'deprecated', class: Google::Apis::ComputeAlpha::DeprecationStatus, decorator: Google::Apis::ComputeAlpha::DeprecationStatus::Representation + + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + collection :quotas, as: 'quotas', class: Google::Apis::ComputeAlpha::Quota, decorator: Google::Apis::ComputeAlpha::Quota::Representation + + property :self_link, as: 'selfLink' + property :status, as: 'status' + collection :zones, as: 'zones' + end + end + + class RegionAutoscalerList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Autoscaler, decorator: Google::Apis::ComputeAlpha::Autoscaler::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RegionAutoscalerList::Warning, decorator: Google::Apis::ComputeAlpha::RegionAutoscalerList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RegionAutoscalerList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RegionAutoscalerList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RegionDiskTypeList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::DiskType, decorator: Google::Apis::ComputeAlpha::DiskType::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RegionDiskTypeList::Warning, decorator: Google::Apis::ComputeAlpha::RegionDiskTypeList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RegionDiskTypeList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RegionDiskTypeList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RegionDisksResizeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :size_gb, :numeric_string => true, as: 'sizeGb' + end + end + + class RegionInstanceGroupList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceGroup, decorator: Google::Apis::ComputeAlpha::InstanceGroup::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RegionInstanceGroupList::Warning, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RegionInstanceGroupList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RegionInstanceGroupManagerDeleteInstanceConfigReq + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class RegionInstanceGroupManagerList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceGroupManager, decorator: Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList::Warning, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RegionInstanceGroupManagerUpdateInstanceConfigReq + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :per_instance_configs, as: 'perInstanceConfigs', class: Google::Apis::ComputeAlpha::PerInstanceConfig, decorator: Google::Apis::ComputeAlpha::PerInstanceConfig::Representation + + end + end + + class RegionInstanceGroupManagersAbandonInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class RegionInstanceGroupManagersApplyUpdatesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + property :maximal_action, as: 'maximalAction' + property :minimal_action, as: 'minimalAction' + end + end + + class RegionInstanceGroupManagersDeleteInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class RegionInstanceGroupManagersListInstanceConfigsResp + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::PerInstanceConfig, decorator: Google::Apis::ComputeAlpha::PerInstanceConfig::Representation + + property :next_page_token, as: 'nextPageToken' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp::Warning, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RegionInstanceGroupManagersListInstancesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :managed_instances, as: 'managedInstances', class: Google::Apis::ComputeAlpha::ManagedInstance, decorator: Google::Apis::ComputeAlpha::ManagedInstance::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class RegionInstanceGroupManagersRecreateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances' + end + end + + class RegionInstanceGroupManagersSetAutoHealingRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :auto_healing_policies, as: 'autoHealingPolicies', class: Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy, decorator: Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy::Representation + + end + end + + class RegionInstanceGroupManagersSetTargetPoolsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :target_pools, as: 'targetPools' + end + end + + class RegionInstanceGroupManagersSetTemplateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance_template, as: 'instanceTemplate' + end + end + + class RegionInstanceGroupsListInstances + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::InstanceWithNamedPorts, decorator: Google::Apis::ComputeAlpha::InstanceWithNamedPorts::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances::Warning, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RegionInstanceGroupsListInstancesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance_state, as: 'instanceState' + property :port_name, as: 'portName' + end + end + + class RegionInstanceGroupsSetNamedPortsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :named_ports, as: 'namedPorts', class: Google::Apis::ComputeAlpha::NamedPort, decorator: Google::Apis::ComputeAlpha::NamedPort::Representation + + end + end + + class RegionList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Region, decorator: Google::Apis::ComputeAlpha::Region::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RegionList::Warning, decorator: Google::Apis::ComputeAlpha::RegionList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RegionList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RegionList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RegionSetLabelsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + end + end + + class ResourceCommitment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :amount, :numeric_string => true, as: 'amount' + property :type, as: 'type' + end + end + + class ResourceGroupReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :group, as: 'group' + end + end + + class Route + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :dest_range, as: 'destRange' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :network, as: 'network' + property :next_hop_gateway, as: 'nextHopGateway' + property :next_hop_instance, as: 'nextHopInstance' + property :next_hop_ip, as: 'nextHopIp' + property :next_hop_network, as: 'nextHopNetwork' + property :next_hop_peering, as: 'nextHopPeering' + property :next_hop_vpn_tunnel, as: 'nextHopVpnTunnel' + property :priority, as: 'priority' + property :self_link, as: 'selfLink' + collection :tags, as: 'tags' + collection :warnings, as: 'warnings', class: Google::Apis::ComputeAlpha::Route::Warning, decorator: Google::Apis::ComputeAlpha::Route::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::Route::Warning::Datum, decorator: Google::Apis::ComputeAlpha::Route::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RouteList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Route, decorator: Google::Apis::ComputeAlpha::Route::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RouteList::Warning, decorator: Google::Apis::ComputeAlpha::RouteList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RouteList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RouteList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class Router + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bgp, as: 'bgp', class: Google::Apis::ComputeAlpha::RouterBgp, decorator: Google::Apis::ComputeAlpha::RouterBgp::Representation + + collection :bgp_peers, as: 'bgpPeers', class: Google::Apis::ComputeAlpha::RouterBgpPeer, decorator: Google::Apis::ComputeAlpha::RouterBgpPeer::Representation + + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + collection :interfaces, as: 'interfaces', class: Google::Apis::ComputeAlpha::RouterInterface, decorator: Google::Apis::ComputeAlpha::RouterInterface::Representation + + property :kind, as: 'kind' + property :name, as: 'name' + collection :nats, as: 'nats', class: Google::Apis::ComputeAlpha::RouterNat, decorator: Google::Apis::ComputeAlpha::RouterNat::Representation + + property :network, as: 'network' + property :region, as: 'region' + property :self_link, as: 'selfLink' + end + end + + class RouterAdvertisedPrefix + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :prefix, as: 'prefix' + end + end + + class RouterAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::RoutersScopedList, decorator: Google::Apis::ComputeAlpha::RoutersScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RouterAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::RouterAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RouterAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RouterAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RouterBgp + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :advertise_mode, as: 'advertiseMode' + collection :advertised_groups, as: 'advertisedGroups' + collection :advertised_prefixs, as: 'advertisedPrefixs', class: Google::Apis::ComputeAlpha::RouterAdvertisedPrefix, decorator: Google::Apis::ComputeAlpha::RouterAdvertisedPrefix::Representation + + property :asn, as: 'asn' + end + end + + class RouterBgpPeer + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :advertise_mode, as: 'advertiseMode' + collection :advertised_groups, as: 'advertisedGroups' + collection :advertised_prefixs, as: 'advertisedPrefixs', class: Google::Apis::ComputeAlpha::RouterAdvertisedPrefix, decorator: Google::Apis::ComputeAlpha::RouterAdvertisedPrefix::Representation + + property :advertised_route_priority, as: 'advertisedRoutePriority' + property :interface_name, as: 'interfaceName' + property :ip_address, as: 'ipAddress' + property :name, as: 'name' + property :peer_asn, as: 'peerAsn' + property :peer_ip_address, as: 'peerIpAddress' + end + end + + class RouterInterface + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_range, as: 'ipRange' + property :linked_interconnect_attachment, as: 'linkedInterconnectAttachment' + property :linked_vpn_tunnel, as: 'linkedVpnTunnel' + property :name, as: 'name' + end + end + + class RouterList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Router, decorator: Google::Apis::ComputeAlpha::Router::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RouterList::Warning, decorator: Google::Apis::ComputeAlpha::RouterList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RouterList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RouterList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class RouterNat + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :auto_allocated_nat_ips, as: 'autoAllocatedNatIps' + property :name, as: 'name' + property :nat_ip_allocate_option, as: 'natIpAllocateOption' + collection :nat_ips, as: 'natIps' + property :source_subnetwork_ip_ranges_to_nat, as: 'sourceSubnetworkIpRangesToNat' + collection :subnetworks, as: 'subnetworks', class: Google::Apis::ComputeAlpha::RouterNatSubnetworkToNat, decorator: Google::Apis::ComputeAlpha::RouterNatSubnetworkToNat::Representation + + end + end + + class RouterNatSubnetworkToNat + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + collection :secondary_ip_range_names, as: 'secondaryIpRangeNames' + collection :source_ip_ranges_to_nats, as: 'sourceIpRangesToNats' + end + end + + class RouterStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :best_routes, as: 'bestRoutes', class: Google::Apis::ComputeAlpha::Route, decorator: Google::Apis::ComputeAlpha::Route::Representation + + collection :best_routes_for_router, as: 'bestRoutesForRouter', class: Google::Apis::ComputeAlpha::Route, decorator: Google::Apis::ComputeAlpha::Route::Representation + + collection :bgp_peer_status, as: 'bgpPeerStatus', class: Google::Apis::ComputeAlpha::RouterStatusBgpPeerStatus, decorator: Google::Apis::ComputeAlpha::RouterStatusBgpPeerStatus::Representation + + collection :nat_status, as: 'natStatus', class: Google::Apis::ComputeAlpha::RouterStatusNatStatus, decorator: Google::Apis::ComputeAlpha::RouterStatusNatStatus::Representation + + property :network, as: 'network' + end + end + + class RouterStatusBgpPeerStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :advertised_routes, as: 'advertisedRoutes', class: Google::Apis::ComputeAlpha::Route, decorator: Google::Apis::ComputeAlpha::Route::Representation + + property :ip_address, as: 'ipAddress' + property :linked_vpn_tunnel, as: 'linkedVpnTunnel' + property :name, as: 'name' + property :num_learned_routes, as: 'numLearnedRoutes' + property :peer_ip_address, as: 'peerIpAddress' + property :state, as: 'state' + property :status, as: 'status' + property :uptime, as: 'uptime' + property :uptime_seconds, as: 'uptimeSeconds' + end + end + + class RouterStatusNatStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :auto_allocated_nat_ips, as: 'autoAllocatedNatIps' + property :min_extra_nat_ips_needed, as: 'minExtraNatIpsNeeded' + property :name, as: 'name' + property :num_vm_endpoints_with_nat_mappings, as: 'numVmEndpointsWithNatMappings' + collection :user_allocated_nat_ip_resources, as: 'userAllocatedNatIpResources' + collection :user_allocated_nat_ips, as: 'userAllocatedNatIps' + end + end + + class RouterStatusResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :result, as: 'result', class: Google::Apis::ComputeAlpha::RouterStatus, decorator: Google::Apis::ComputeAlpha::RouterStatus::Representation + + end + end + + class RoutersPreviewResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ComputeAlpha::Router, decorator: Google::Apis::ComputeAlpha::Router::Representation + + end + end + + class RoutersScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :routers, as: 'routers', class: Google::Apis::ComputeAlpha::Router, decorator: Google::Apis::ComputeAlpha::Router::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::RoutersScopedList::Warning, decorator: Google::Apis::ComputeAlpha::RoutersScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::RoutersScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::RoutersScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class Rule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + collection :conditions, as: 'conditions', class: Google::Apis::ComputeAlpha::Condition, decorator: Google::Apis::ComputeAlpha::Condition::Representation + + property :description, as: 'description' + collection :ins, as: 'ins' + collection :log_configs, as: 'logConfigs', class: Google::Apis::ComputeAlpha::LogConfig, decorator: Google::Apis::ComputeAlpha::LogConfig::Representation + + collection :not_ins, as: 'notIns' + collection :permissions, as: 'permissions' + end + end + + class SslHealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :port, as: 'port' + property :port_name, as: 'portName' + property :proxy_header, as: 'proxyHeader' + property :request, as: 'request' + property :response, as: 'response' + end + end + + class Scheduling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :automatic_restart, as: 'automaticRestart' + property :on_host_maintenance, as: 'onHostMaintenance' + property :preemptible, as: 'preemptible' + end + end + + class SecurityPoliciesList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::SecurityPolicy, decorator: Google::Apis::ComputeAlpha::SecurityPolicy::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::SecurityPoliciesList::Warning, decorator: Google::Apis::ComputeAlpha::SecurityPoliciesList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::SecurityPoliciesList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::SecurityPoliciesList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class SecurityPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :fingerprint, :base64 => true, as: 'fingerprint' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + collection :rules, as: 'rules', class: Google::Apis::ComputeAlpha::SecurityPolicyRule, decorator: Google::Apis::ComputeAlpha::SecurityPolicyRule::Representation + + property :self_link, as: 'selfLink' + end + end + + class SecurityPolicyReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :security_policy, as: 'securityPolicy' + end + end + + class SecurityPolicyRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + property :description, as: 'description' + property :kind, as: 'kind' + property :match, as: 'match', class: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcher, decorator: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcher::Representation + + property :preview, as: 'preview' + property :priority, as: 'priority' + end + end + + class SecurityPolicyRuleMatcher + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config', class: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfig, decorator: Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherConfig::Representation + + collection :src_ip_ranges, as: 'srcIpRanges' + collection :src_region_codes, as: 'srcRegionCodes' + property :versioned_expr, as: 'versionedExpr' + end + end + + class SecurityPolicyRuleMatcherConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :src_ip_ranges, as: 'srcIpRanges' + end + end + + class SerialPortOutput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :contents, as: 'contents' + property :kind, as: 'kind' + property :next, :numeric_string => true, as: 'next' + property :self_link, as: 'selfLink' + property :start, :numeric_string => true, as: 'start' + end + end + + class ServiceAccount + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + collection :scopes, as: 'scopes' + end + end + + class SignedUrlKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key_name, as: 'keyName' + property :key_value, as: 'keyValue' + end + end + + class Snapshot + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :disk_size_gb, :numeric_string => true, as: 'diskSizeGb' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + collection :license_codes, as: 'licenseCodes' + collection :licenses, as: 'licenses' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :snapshot_encryption_key, as: 'snapshotEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source_disk, as: 'sourceDisk' + property :source_disk_encryption_key, as: 'sourceDiskEncryptionKey', class: Google::Apis::ComputeAlpha::CustomerEncryptionKey, decorator: Google::Apis::ComputeAlpha::CustomerEncryptionKey::Representation + + property :source_disk_id, as: 'sourceDiskId' + property :status, as: 'status' + property :storage_bytes, :numeric_string => true, as: 'storageBytes' + property :storage_bytes_status, as: 'storageBytesStatus' + end + end + + class SnapshotList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Snapshot, decorator: Google::Apis::ComputeAlpha::Snapshot::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::SnapshotList::Warning, decorator: Google::Apis::ComputeAlpha::SnapshotList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::SnapshotList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::SnapshotList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class SslCertificate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :certificate, as: 'certificate' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :private_key, as: 'privateKey' + property :self_link, as: 'selfLink' + end + end + + class SslCertificateList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::SslCertificate, decorator: Google::Apis::ComputeAlpha::SslCertificate::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::SslCertificateList::Warning, decorator: Google::Apis::ComputeAlpha::SslCertificateList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::SslCertificateList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::SslCertificateList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class Subnetwork + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :allow_subnet_cidr_routes_overlap, as: 'allowSubnetCidrRoutesOverlap' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :fingerprint, :base64 => true, as: 'fingerprint' + property :gateway_address, as: 'gatewayAddress' + property :id, :numeric_string => true, as: 'id' + property :ip_cidr_range, as: 'ipCidrRange' + property :kind, as: 'kind' + property :name, as: 'name' + property :network, as: 'network' + property :private_ip_google_access, as: 'privateIpGoogleAccess' + property :region, as: 'region' + collection :secondary_ip_ranges, as: 'secondaryIpRanges', class: Google::Apis::ComputeAlpha::SubnetworkSecondaryRange, decorator: Google::Apis::ComputeAlpha::SubnetworkSecondaryRange::Representation + + property :self_link, as: 'selfLink' + end + end + + class SubnetworkAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::SubnetworksScopedList, decorator: Google::Apis::ComputeAlpha::SubnetworksScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::SubnetworkAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::SubnetworkAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::SubnetworkAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::SubnetworkAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class SubnetworkList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Subnetwork, decorator: Google::Apis::ComputeAlpha::Subnetwork::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::SubnetworkList::Warning, decorator: Google::Apis::ComputeAlpha::SubnetworkList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::SubnetworkList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::SubnetworkList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class SubnetworkSecondaryRange + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_cidr_range, as: 'ipCidrRange' + property :range_name, as: 'rangeName' + end + end + + class SubnetworksExpandIpCidrRangeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_cidr_range, as: 'ipCidrRange' + end + end + + class SubnetworksScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :subnetworks, as: 'subnetworks', class: Google::Apis::ComputeAlpha::Subnetwork, decorator: Google::Apis::ComputeAlpha::Subnetwork::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::SubnetworksScopedList::Warning, decorator: Google::Apis::ComputeAlpha::SubnetworksScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::SubnetworksScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::SubnetworksScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class SubnetworksSetPrivateIpGoogleAccessRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :private_ip_google_access, as: 'privateIpGoogleAccess' + end + end + + class TcpHealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :port, as: 'port' + property :port_name, as: 'portName' + property :proxy_header, as: 'proxyHeader' + property :request, as: 'request' + property :response, as: 'response' + end + end + + class Tags + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :items, as: 'items' + end + end + + class TargetHttpProxy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :url_map, as: 'urlMap' + end + end + + class TargetHttpProxyList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetHttpProxy, decorator: Google::Apis::ComputeAlpha::TargetHttpProxy::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetHttpProxyList::Warning, decorator: Google::Apis::ComputeAlpha::TargetHttpProxyList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetHttpProxyList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetHttpProxyList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetHttpsProxiesSetQuicOverrideRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :quic_override, as: 'quicOverride' + end + end + + class TargetHttpsProxiesSetSslCertificatesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ssl_certificates, as: 'sslCertificates' + end + end + + class TargetHttpsProxy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_ssl_policy, as: 'clientSslPolicy' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :quic_override, as: 'quicOverride' + property :self_link, as: 'selfLink' + collection :ssl_certificates, as: 'sslCertificates' + property :url_map, as: 'urlMap' + end + end + + class TargetHttpsProxyList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetHttpsProxy, decorator: Google::Apis::ComputeAlpha::TargetHttpsProxy::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetHttpsProxyList::Warning, decorator: Google::Apis::ComputeAlpha::TargetHttpsProxyList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetHttpsProxyList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetHttpsProxyList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetInstance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :instance, as: 'instance' + property :kind, as: 'kind' + property :name, as: 'name' + property :nat_policy, as: 'natPolicy' + property :self_link, as: 'selfLink' + property :zone, as: 'zone' + end + end + + class TargetInstanceAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetInstancesScopedList, decorator: Google::Apis::ComputeAlpha::TargetInstancesScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetInstanceAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::TargetInstanceAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetInstanceAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetInstanceAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetInstanceList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetInstance, decorator: Google::Apis::ComputeAlpha::TargetInstance::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetInstanceList::Warning, decorator: Google::Apis::ComputeAlpha::TargetInstanceList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetInstanceList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetInstanceList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetInstancesScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :target_instances, as: 'targetInstances', class: Google::Apis::ComputeAlpha::TargetInstance, decorator: Google::Apis::ComputeAlpha::TargetInstance::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetInstancesScopedList::Warning, decorator: Google::Apis::ComputeAlpha::TargetInstancesScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetInstancesScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetInstancesScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetPool + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :backup_pool, as: 'backupPool' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :failover_ratio, as: 'failoverRatio' + collection :health_checks, as: 'healthChecks' + property :id, :numeric_string => true, as: 'id' + collection :instances, as: 'instances' + property :kind, as: 'kind' + property :name, as: 'name' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :session_affinity, as: 'sessionAffinity' + end + end + + class TargetPoolAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetPoolsScopedList, decorator: Google::Apis::ComputeAlpha::TargetPoolsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetPoolAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::TargetPoolAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetPoolAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetPoolAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetPoolInstanceHealth + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :health_status, as: 'healthStatus', class: Google::Apis::ComputeAlpha::HealthStatus, decorator: Google::Apis::ComputeAlpha::HealthStatus::Representation + + property :kind, as: 'kind' + end + end + + class TargetPoolList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetPool, decorator: Google::Apis::ComputeAlpha::TargetPool::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetPoolList::Warning, decorator: Google::Apis::ComputeAlpha::TargetPoolList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetPoolList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetPoolList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetPoolsAddHealthCheckRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :health_checks, as: 'healthChecks', class: Google::Apis::ComputeAlpha::HealthCheckReference, decorator: Google::Apis::ComputeAlpha::HealthCheckReference::Representation + + end + end + + class TargetPoolsAddInstanceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::ComputeAlpha::InstanceReference, decorator: Google::Apis::ComputeAlpha::InstanceReference::Representation + + end + end + + class TargetPoolsRemoveHealthCheckRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :health_checks, as: 'healthChecks', class: Google::Apis::ComputeAlpha::HealthCheckReference, decorator: Google::Apis::ComputeAlpha::HealthCheckReference::Representation + + end + end + + class TargetPoolsRemoveInstanceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instances, as: 'instances', class: Google::Apis::ComputeAlpha::InstanceReference, decorator: Google::Apis::ComputeAlpha::InstanceReference::Representation + + end + end + + class TargetPoolsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :target_pools, as: 'targetPools', class: Google::Apis::ComputeAlpha::TargetPool, decorator: Google::Apis::ComputeAlpha::TargetPool::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetPoolsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::TargetPoolsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetPoolsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetPoolsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :target, as: 'target' + end + end + + class TargetSslProxiesSetBackendServiceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :service, as: 'service' + end + end + + class TargetSslProxiesSetProxyHeaderRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :proxy_header, as: 'proxyHeader' + end + end + + class TargetSslProxiesSetSslCertificatesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ssl_certificates, as: 'sslCertificates' + end + end + + class TargetSslProxy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_ssl_policy, as: 'clientSslPolicy' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :proxy_header, as: 'proxyHeader' + property :self_link, as: 'selfLink' + property :service, as: 'service' + collection :ssl_certificates, as: 'sslCertificates' + end + end + + class TargetSslProxyList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetSslProxy, decorator: Google::Apis::ComputeAlpha::TargetSslProxy::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetSslProxyList::Warning, decorator: Google::Apis::ComputeAlpha::TargetSslProxyList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetSslProxyList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetSslProxyList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetTcpProxiesSetBackendServiceRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :service, as: 'service' + end + end + + class TargetTcpProxiesSetProxyHeaderRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :proxy_header, as: 'proxyHeader' + end + end + + class TargetTcpProxy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :proxy_header, as: 'proxyHeader' + property :self_link, as: 'selfLink' + property :service, as: 'service' + end + end + + class TargetTcpProxyList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetTcpProxy, decorator: Google::Apis::ComputeAlpha::TargetTcpProxy::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetTcpProxyList::Warning, decorator: Google::Apis::ComputeAlpha::TargetTcpProxyList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetTcpProxyList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetTcpProxyList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetVpnGateway + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + collection :forwarding_rules, as: 'forwardingRules' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :network, as: 'network' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :status, as: 'status' + collection :tunnels, as: 'tunnels' + end + end + + class TargetVpnGatewayAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetVpnGatewaysScopedList, decorator: Google::Apis::ComputeAlpha::TargetVpnGatewaysScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetVpnGatewayList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::TargetVpnGateway, decorator: Google::Apis::ComputeAlpha::TargetVpnGateway::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetVpnGatewayList::Warning, decorator: Google::Apis::ComputeAlpha::TargetVpnGatewayList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetVpnGatewayList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetVpnGatewayList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TargetVpnGatewaysScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :target_vpn_gateways, as: 'targetVpnGateways', class: Google::Apis::ComputeAlpha::TargetVpnGateway, decorator: Google::Apis::ComputeAlpha::TargetVpnGateway::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::TargetVpnGatewaysScopedList::Warning, decorator: Google::Apis::ComputeAlpha::TargetVpnGatewaysScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::TargetVpnGatewaysScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::TargetVpnGatewaysScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class TestFailure + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :actual_service, as: 'actualService' + property :expected_service, as: 'expectedService' + property :host, as: 'host' + property :path, as: 'path' + end + end + + class TestPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class UdpHealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :port, as: 'port' + property :port_name, as: 'portName' + property :request, as: 'request' + property :response, as: 'response' + end + end + + class UrlMap + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :default_service, as: 'defaultService' + property :description, as: 'description' + property :fingerprint, :base64 => true, as: 'fingerprint' + collection :host_rules, as: 'hostRules', class: Google::Apis::ComputeAlpha::HostRule, decorator: Google::Apis::ComputeAlpha::HostRule::Representation + + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + collection :path_matchers, as: 'pathMatchers', class: Google::Apis::ComputeAlpha::PathMatcher, decorator: Google::Apis::ComputeAlpha::PathMatcher::Representation + + property :self_link, as: 'selfLink' + collection :tests, as: 'tests', class: Google::Apis::ComputeAlpha::UrlMapTest, decorator: Google::Apis::ComputeAlpha::UrlMapTest::Representation + + end + end + + class UrlMapList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::UrlMap, decorator: Google::Apis::ComputeAlpha::UrlMap::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::UrlMapList::Warning, decorator: Google::Apis::ComputeAlpha::UrlMapList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::UrlMapList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::UrlMapList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class UrlMapReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :url_map, as: 'urlMap' + end + end + + class UrlMapTest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :host, as: 'host' + property :path, as: 'path' + property :service, as: 'service' + end + end + + class UrlMapValidationResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :load_errors, as: 'loadErrors' + property :load_succeeded, as: 'loadSucceeded' + collection :test_failures, as: 'testFailures', class: Google::Apis::ComputeAlpha::TestFailure, decorator: Google::Apis::ComputeAlpha::TestFailure::Representation + + property :test_passed, as: 'testPassed' + end + end + + class UrlMapsValidateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ComputeAlpha::UrlMap, decorator: Google::Apis::ComputeAlpha::UrlMap::Representation + + end + end + + class UrlMapsValidateResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :result, as: 'result', class: Google::Apis::ComputeAlpha::UrlMapValidationResult, decorator: Google::Apis::ComputeAlpha::UrlMapValidationResult::Representation + + end + end + + class UsageExportLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_name, as: 'bucketName' + property :report_name_prefix, as: 'reportNamePrefix' + end + end + + class VpnTunnel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :detailed_status, as: 'detailedStatus' + property :id, :numeric_string => true, as: 'id' + property :ike_version, as: 'ikeVersion' + property :kind, as: 'kind' + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + collection :local_traffic_selector, as: 'localTrafficSelector' + property :name, as: 'name' + property :peer_ip, as: 'peerIp' + property :region, as: 'region' + collection :remote_traffic_selector, as: 'remoteTrafficSelector' + property :router, as: 'router' + property :self_link, as: 'selfLink' + property :shared_secret, as: 'sharedSecret' + property :shared_secret_hash, as: 'sharedSecretHash' + property :status, as: 'status' + property :target_vpn_gateway, as: 'targetVpnGateway' + end + end + + class VpnTunnelAggregatedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + hash :items, as: 'items', class: Google::Apis::ComputeAlpha::VpnTunnelsScopedList, decorator: Google::Apis::ComputeAlpha::VpnTunnelsScopedList::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::VpnTunnelAggregatedList::Warning, decorator: Google::Apis::ComputeAlpha::VpnTunnelAggregatedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::VpnTunnelAggregatedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::VpnTunnelAggregatedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class VpnTunnelList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::VpnTunnel, decorator: Google::Apis::ComputeAlpha::VpnTunnel::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::VpnTunnelList::Warning, decorator: Google::Apis::ComputeAlpha::VpnTunnelList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::VpnTunnelList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::VpnTunnelList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class VpnTunnelsScopedList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :vpn_tunnels, as: 'vpnTunnels', class: Google::Apis::ComputeAlpha::VpnTunnel, decorator: Google::Apis::ComputeAlpha::VpnTunnel::Representation + + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::VpnTunnelsScopedList::Warning, decorator: Google::Apis::ComputeAlpha::VpnTunnelsScopedList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::VpnTunnelsScopedList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::VpnTunnelsScopedList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class XpnHostList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Project, decorator: Google::Apis::ComputeAlpha::Project::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::XpnHostList::Warning, decorator: Google::Apis::ComputeAlpha::XpnHostList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::XpnHostList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::XpnHostList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class XpnResourceId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :type, as: 'type' + end + end + + class Zone + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :available_cpu_platforms, as: 'availableCpuPlatforms' + property :creation_timestamp, as: 'creationTimestamp' + property :deprecated, as: 'deprecated', class: Google::Apis::ComputeAlpha::DeprecationStatus, decorator: Google::Apis::ComputeAlpha::DeprecationStatus::Representation + + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :status, as: 'status' + end + end + + class ZoneList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + collection :items, as: 'items', class: Google::Apis::ComputeAlpha::Zone, decorator: Google::Apis::ComputeAlpha::Zone::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + property :warning, as: 'warning', class: Google::Apis::ComputeAlpha::ZoneList::Warning, decorator: Google::Apis::ComputeAlpha::ZoneList::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::ComputeAlpha::ZoneList::Warning::Datum, decorator: Google::Apis::ComputeAlpha::ZoneList::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ZoneSetLabelsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label_fingerprint, :base64 => true, as: 'labelFingerprint' + hash :labels, as: 'labels' + end + end + end + end +end diff --git a/generated/google/apis/compute_alpha/service.rb b/generated/google/apis/compute_alpha/service.rb new file mode 100644 index 000000000..39e522dbe --- /dev/null +++ b/generated/google/apis/compute_alpha/service.rb @@ -0,0 +1,24188 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ComputeAlpha + # Compute Engine API + # + # Creates and runs virtual machines on Google Cloud Platform. + # + # @example + # require 'google/apis/compute_alpha' + # + # Compute = Google::Apis::ComputeAlpha # Alias the module + # service = Compute::ComputeService.new + # + # @see https://developers.google.com/compute/docs/reference/latest/ + class ComputeService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'compute/alpha/projects/') + @batch_path = 'batch' + end + + # Retrieves an aggregated list of accelerator types. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_accelerator_type_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/acceleratorTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::AcceleratorTypeAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified accelerator type. Get a list of available accelerator + # types by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] accelerator_type + # Name of the accelerator type to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AcceleratorType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AcceleratorType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_accelerator_type(project, zone, accelerator_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/acceleratorTypes/{acceleratorType}', options) + command.response_representation = Google::Apis::ComputeAlpha::AcceleratorType::Representation + command.response_class = Google::Apis::ComputeAlpha::AcceleratorType + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['acceleratorType'] = accelerator_type unless accelerator_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of accelerator types available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AcceleratorTypeList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AcceleratorTypeList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_accelerator_types(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/acceleratorTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::AcceleratorTypeList::Representation + command.response_class = Google::Apis::ComputeAlpha::AcceleratorTypeList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of addresses. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AddressAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AddressAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_address_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/addresses', options) + command.response_representation = Google::Apis::ComputeAlpha::AddressAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::AddressAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified address resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] address + # Name of the address resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_address(project, region, address, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/addresses/{address}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['address'] = address unless address.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified address resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] address + # Name of the address resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Address] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Address] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_address(project, region, address, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/addresses/{address}', options) + command.response_representation = Google::Apis::ComputeAlpha::Address::Representation + command.response_class = Google::Apis::ComputeAlpha::Address + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['address'] = address unless address.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an address resource in the specified project using the data included + # in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::Address] address_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_address(project, region, address_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/addresses', options) + command.request_representation = Google::Apis::ComputeAlpha::Address::Representation + command.request_object = address_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of addresses contained within the specified region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AddressList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AddressList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_addresses(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/addresses', options) + command.response_representation = Google::Apis::ComputeAlpha::AddressList::Representation + command.response_class = Google::Apis::ComputeAlpha::AddressList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on an Address. To learn more about labels, read the Labeling + # Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::RegionSetLabelsRequest] region_set_labels_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_address_labels(project, region, resource, region_set_labels_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/addresses/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionSetLabelsRequest::Representation + command.request_object = region_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_address_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/addresses/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of autoscalers. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AutoscalerAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AutoscalerAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_autoscaler_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/autoscalers', options) + command.response_representation = Google::Apis::ComputeAlpha::AutoscalerAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::AutoscalerAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified autoscaler. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] autoscaler + # Name of the autoscaler to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_autoscaler(project, zone, autoscaler, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/autoscalers/{autoscaler}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified autoscaler resource. Get a list of available autoscalers + # by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] autoscaler + # Name of the autoscaler to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Autoscaler] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Autoscaler] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_autoscaler(project, zone, autoscaler, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/autoscalers/{autoscaler}', options) + command.response_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.response_class = Google::Apis::ComputeAlpha::Autoscaler + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an autoscaler in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [Google::Apis::ComputeAlpha::Autoscaler] autoscaler_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_autoscaler(project, zone, autoscaler_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/autoscalers', options) + command.request_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.request_object = autoscaler_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of autoscalers contained within the specified zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AutoscalerList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AutoscalerList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_autoscalers(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/autoscalers', options) + command.response_representation = Google::Apis::ComputeAlpha::AutoscalerList::Representation + command.response_class = Google::Apis::ComputeAlpha::AutoscalerList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an autoscaler in the specified project using the data included in the + # request. This method supports PATCH semantics and uses the JSON merge patch + # format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [Google::Apis::ComputeAlpha::Autoscaler] autoscaler_object + # @param [String] autoscaler + # Name of the autoscaler to patch. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_autoscaler(project, zone, autoscaler_object = nil, autoscaler: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/zones/{zone}/autoscalers', options) + command.request_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.request_object = autoscaler_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_autoscaler_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/autoscalers/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an autoscaler in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [Google::Apis::ComputeAlpha::Autoscaler] autoscaler_object + # @param [String] autoscaler + # Name of the autoscaler to update. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_autoscaler(project, zone, autoscaler_object = nil, autoscaler: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/zones/{zone}/autoscalers', options) + command.request_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.request_object = autoscaler_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds the given Signed URL Key to the backend bucket. + # @param [String] project + # Project ID for this request. + # @param [String] backend_bucket + # Name of the BackendBucket resource to which the Signed URL Key should be added. + # The name should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::SignedUrlKey] signed_url_key_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_backend_bucket_signed_url_key(project, backend_bucket, signed_url_key_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendBuckets/{backendBucket}/addSignedUrlKey', options) + command.request_representation = Google::Apis::ComputeAlpha::SignedUrlKey::Representation + command.request_object = signed_url_key_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendBucket'] = backend_bucket unless backend_bucket.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified BackendBucket resource. + # @param [String] project + # Project ID for this request. + # @param [String] backend_bucket + # Name of the BackendBucket resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_backend_bucket(project, backend_bucket, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/backendBuckets/{backendBucket}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendBucket'] = backend_bucket unless backend_bucket.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the given Signed URL Key from the backend bucket. + # @param [String] project + # Project ID for this request. + # @param [String] backend_bucket + # Name of the BackendBucket resource to which the Signed URL Key should be added. + # The name should conform to RFC1035. + # @param [String] key_name + # The name of the Signed URL Key to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_backend_bucket_signed_url_key(project, backend_bucket, key_name, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendBuckets/{backendBucket}/deleteSignedUrlKey', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendBucket'] = backend_bucket unless backend_bucket.nil? + command.query['keyName'] = key_name unless key_name.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified BackendBucket resource. Get a list of available backend + # buckets by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] backend_bucket + # Name of the BackendBucket resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendBucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendBucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_backend_bucket(project, backend_bucket, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/backendBuckets/{backendBucket}', options) + command.response_representation = Google::Apis::ComputeAlpha::BackendBucket::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendBucket + command.params['project'] = project unless project.nil? + command.params['backendBucket'] = backend_bucket unless backend_bucket.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_backend_bucket_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/backendBuckets/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a BackendBucket resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::BackendBucket] backend_bucket_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_backend_bucket(project, backend_bucket_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendBuckets', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendBucket::Representation + command.request_object = backend_bucket_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of BackendBucket resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendBucketList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendBucketList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_backend_buckets(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/backendBuckets', options) + command.response_representation = Google::Apis::ComputeAlpha::BackendBucketList::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendBucketList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified BackendBucket resource with the data included in the + # request. This method supports PATCH semantics and uses the JSON merge patch + # format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] backend_bucket + # Name of the BackendBucket resource to patch. + # @param [Google::Apis::ComputeAlpha::BackendBucket] backend_bucket_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_backend_bucket(project, backend_bucket, backend_bucket_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/backendBuckets/{backendBucket}', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendBucket::Representation + command.request_object = backend_bucket_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendBucket'] = backend_bucket unless backend_bucket.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_backend_bucket_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendBuckets/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_backend_bucket_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendBuckets/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified BackendBucket resource with the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] backend_bucket + # Name of the BackendBucket resource to update. + # @param [Google::Apis::ComputeAlpha::BackendBucket] backend_bucket_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_backend_bucket(project, backend_bucket, backend_bucket_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/backendBuckets/{backendBucket}', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendBucket::Representation + command.request_object = backend_bucket_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendBucket'] = backend_bucket unless backend_bucket.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds the given Signed URL Key to the specified backend service. + # @param [String] project + # Project ID for this request. + # @param [String] backend_service + # Name of the BackendService resource to which the Signed URL Key should be + # added. The name should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::SignedUrlKey] signed_url_key_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_backend_service_signed_url_key(project, backend_service, signed_url_key_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendServices/{backendService}/addSignedUrlKey', options) + command.request_representation = Google::Apis::ComputeAlpha::SignedUrlKey::Representation + command.request_object = signed_url_key_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of all BackendService resources, regional and global, + # available to the specified project. + # @param [String] project + # Name of the project scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendServiceAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendServiceAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_backend_service_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/backendServices', options) + command.response_representation = Google::Apis::ComputeAlpha::BackendServiceAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendServiceAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified BackendService resource. + # @param [String] project + # Project ID for this request. + # @param [String] backend_service + # Name of the BackendService resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_backend_service(project, backend_service, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/backendServices/{backendService}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the given Signed URL Key from the specified backend service. + # @param [String] project + # Project ID for this request. + # @param [String] backend_service + # Name of the BackendService resource to which the Signed URL Key should be + # added. The name should conform to RFC1035. + # @param [String] key_name + # The name of the Signed URL Key to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_backend_service_signed_url_key(project, backend_service, key_name, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendServices/{backendService}/deleteSignedUrlKey', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['keyName'] = key_name unless key_name.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified BackendService resource. Get a list of available backend + # services by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] backend_service + # Name of the BackendService resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendService] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendService] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_backend_service(project, backend_service, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/backendServices/{backendService}', options) + command.response_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendService + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the most recent health check results for this BackendService. + # @param [String] project + # @param [String] backend_service + # Name of the BackendService resource to which the queried instance belongs. + # @param [Google::Apis::ComputeAlpha::ResourceGroupReference] resource_group_reference_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendServiceGroupHealth] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendServiceGroupHealth] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_backend_service_health(project, backend_service, resource_group_reference_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendServices/{backendService}/getHealth', options) + command.request_representation = Google::Apis::ComputeAlpha::ResourceGroupReference::Representation + command.request_object = resource_group_reference_object + command.response_representation = Google::Apis::ComputeAlpha::BackendServiceGroupHealth::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendServiceGroupHealth + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::BackendService] backend_service_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_backend_service(project, backend_service_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendServices', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.request_object = backend_service_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of BackendService resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendServiceList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendServiceList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_backend_services(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/backendServices', options) + command.response_representation = Google::Apis::ComputeAlpha::BackendServiceList::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendServiceList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Patches the specified BackendService resource with the data included in the + # request. There are several restrictions and guidelines to keep in mind when + # updating a backend service. Read Restrictions and Guidelines for more + # information. This method supports PATCH semantics and uses the JSON merge + # patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] backend_service + # Name of the BackendService resource to patch. + # @param [Google::Apis::ComputeAlpha::BackendService] backend_service_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_backend_service(project, backend_service, backend_service_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/backendServices/{backendService}', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.request_object = backend_service_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the security policy for the specified backend service. + # @param [String] project + # Project ID for this request. + # @param [String] backend_service + # Name of the BackendService resource to which the security policy should be set. + # The name should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::SecurityPolicyReference] security_policy_reference_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_backend_service_security_policy(project, backend_service, security_policy_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendServices/{backendService}/setSecurityPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::SecurityPolicyReference::Representation + command.request_object = security_policy_reference_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_backend_service_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/backendServices/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified BackendService resource with the data included in the + # request. There are several restrictions and guidelines to keep in mind when + # updating a backend service. Read Restrictions and Guidelines for more + # information. + # @param [String] project + # Project ID for this request. + # @param [String] backend_service + # Name of the BackendService resource to update. + # @param [Google::Apis::ComputeAlpha::BackendService] backend_service_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_backend_service(project, backend_service, backend_service_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/backendServices/{backendService}', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.request_object = backend_service_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_client_ssl_policy_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/clientSslPolicies/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of disk types. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::DiskTypeAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::DiskTypeAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_disk_type_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/diskTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::DiskTypeAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::DiskTypeAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified disk type. Get a list of available disk types by making + # a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] disk_type + # Name of the disk type to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::DiskType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::DiskType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_disk_type(project, zone, disk_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/diskTypes/{diskType}', options) + command.response_representation = Google::Apis::ComputeAlpha::DiskType::Representation + command.response_class = Google::Apis::ComputeAlpha::DiskType + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['diskType'] = disk_type unless disk_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of disk types available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::DiskTypeList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::DiskTypeList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_disk_types(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/diskTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::DiskTypeList::Representation + command.response_class = Google::Apis::ComputeAlpha::DiskTypeList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of persistent disks. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::DiskAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::DiskAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_disk_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/disks', options) + command.response_representation = Google::Apis::ComputeAlpha::DiskAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::DiskAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a snapshot of a specified persistent disk. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] disk + # Name of the persistent disk to snapshot. + # @param [Google::Apis::ComputeAlpha::Snapshot] snapshot_object + # @param [Boolean] guest_flush + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_disk_snapshot(project, zone, disk, snapshot_object = nil, guest_flush: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/disks/{disk}/createSnapshot', options) + command.request_representation = Google::Apis::ComputeAlpha::Snapshot::Representation + command.request_object = snapshot_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['disk'] = disk unless disk.nil? + command.query['guestFlush'] = guest_flush unless guest_flush.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] disk + # Name of the persistent disk to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_disk(project, zone, disk, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/disks/{disk}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['disk'] = disk unless disk.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns a specified persistent disk. Get a list of available persistent disks + # by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] disk + # Name of the persistent disk to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Disk] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Disk] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_disk(project, zone, disk, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/disks/{disk}', options) + command.response_representation = Google::Apis::ComputeAlpha::Disk::Representation + command.response_class = Google::Apis::ComputeAlpha::Disk + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['disk'] = disk unless disk.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_disk_iam_policy(project, zone, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/disks/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [Google::Apis::ComputeAlpha::Disk] disk_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] source_image + # Optional. Source image to restore onto a disk. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_disk(project, zone, disk_object = nil, request_id: nil, source_image: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/disks', options) + command.request_representation = Google::Apis::ComputeAlpha::Disk::Representation + command.request_object = disk_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['sourceImage'] = source_image unless source_image.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of persistent disks contained within the specified zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::DiskList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::DiskList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_disks(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/disks', options) + command.response_representation = Google::Apis::ComputeAlpha::DiskList::Representation + command.response_class = Google::Apis::ComputeAlpha::DiskList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Resizes the specified persistent disk. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] disk + # The name of the persistent disk. + # @param [Google::Apis::ComputeAlpha::DisksResizeRequest] disks_resize_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def resize_disk(project, zone, disk, disks_resize_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/disks/{disk}/resize', options) + command.request_representation = Google::Apis::ComputeAlpha::DisksResizeRequest::Representation + command.request_object = disks_resize_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['disk'] = disk unless disk.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_disk_iam_policy(project, zone, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/disks/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on a disk. To learn more about labels, read the Labeling + # Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::ZoneSetLabelsRequest] zone_set_labels_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_disk_labels(project, zone, resource, zone_set_labels_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/disks/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::ZoneSetLabelsRequest::Representation + command.request_object = zone_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_disk_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/disks/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified firewall. + # @param [String] project + # Project ID for this request. + # @param [String] firewall + # Name of the firewall rule to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_firewall(project, firewall, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/firewalls/{firewall}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['firewall'] = firewall unless firewall.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified firewall. + # @param [String] project + # Project ID for this request. + # @param [String] firewall + # Name of the firewall rule to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Firewall] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Firewall] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_firewall(project, firewall, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/firewalls/{firewall}', options) + command.response_representation = Google::Apis::ComputeAlpha::Firewall::Representation + command.response_class = Google::Apis::ComputeAlpha::Firewall + command.params['project'] = project unless project.nil? + command.params['firewall'] = firewall unless firewall.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a firewall rule in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::Firewall] firewall_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_firewall(project, firewall_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/firewalls', options) + command.request_representation = Google::Apis::ComputeAlpha::Firewall::Representation + command.request_object = firewall_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of firewall rules available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::FirewallList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::FirewallList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_firewalls(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/firewalls', options) + command.response_representation = Google::Apis::ComputeAlpha::FirewallList::Representation + command.response_class = Google::Apis::ComputeAlpha::FirewallList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified firewall rule with the data included in the request. + # This method supports PATCH semantics and uses the JSON merge patch format and + # processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] firewall + # Name of the firewall rule to patch. + # @param [Google::Apis::ComputeAlpha::Firewall] firewall_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_firewall(project, firewall, firewall_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/firewalls/{firewall}', options) + command.request_representation = Google::Apis::ComputeAlpha::Firewall::Representation + command.request_object = firewall_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['firewall'] = firewall unless firewall.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_firewall_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/firewalls/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified firewall rule with the data included in the request. + # Using PUT method, can only update following fields of firewall rule: allowed, + # description, sourceRanges, sourceTags, targetTags. + # @param [String] project + # Project ID for this request. + # @param [String] firewall + # Name of the firewall rule to update. + # @param [Google::Apis::ComputeAlpha::Firewall] firewall_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_firewall(project, firewall, firewall_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/firewalls/{firewall}', options) + command.request_representation = Google::Apis::ComputeAlpha::Firewall::Representation + command.request_object = firewall_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['firewall'] = firewall unless firewall.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of forwarding rules. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_forwarding_rule_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/forwardingRules', options) + command.response_representation = Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::ForwardingRuleAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified ForwardingRule resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_forwarding_rule(project, region, forwarding_rule, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/forwardingRules/{forwardingRule}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified ForwardingRule resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ForwardingRule] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ForwardingRule] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_forwarding_rule(project, region, forwarding_rule, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/forwardingRules/{forwardingRule}', options) + command.response_representation = Google::Apis::ComputeAlpha::ForwardingRule::Representation + command.response_class = Google::Apis::ComputeAlpha::ForwardingRule + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a ForwardingRule resource in the specified project and region using + # the data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::ForwardingRule] forwarding_rule_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_forwarding_rule(project, region, forwarding_rule_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/forwardingRules', options) + command.request_representation = Google::Apis::ComputeAlpha::ForwardingRule::Representation + command.request_object = forwarding_rule_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of ForwardingRule resources available to the specified + # project and region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ForwardingRuleList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ForwardingRuleList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_forwarding_rules(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/forwardingRules', options) + command.response_representation = Google::Apis::ComputeAlpha::ForwardingRuleList::Representation + command.response_class = Google::Apis::ComputeAlpha::ForwardingRuleList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified forwarding rule with the data included in the request. + # This method supports PATCH semantics and uses the JSON merge patch format and + # processing rules. Currently, you can only patch the network_tier field. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource to patch. + # @param [Google::Apis::ComputeAlpha::ForwardingRule] forwarding_rule_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_forwarding_rule(project, region, forwarding_rule, forwarding_rule_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/regions/{region}/forwardingRules/{forwardingRule}', options) + command.request_representation = Google::Apis::ComputeAlpha::ForwardingRule::Representation + command.request_object = forwarding_rule_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on the specified resource. To learn more about labels, read + # the Labeling Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::RegionSetLabelsRequest] region_set_labels_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_forwarding_rule_labels(project, region, resource, region_set_labels_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/forwardingRules/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionSetLabelsRequest::Representation + command.request_object = region_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes target URL for forwarding rule. The new target should be of the same + # type as the old target. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource in which target is to be set. + # @param [Google::Apis::ComputeAlpha::TargetReference] target_reference_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_forwarding_rule_target(project, region, forwarding_rule, target_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetReference::Representation + command.request_object = target_reference_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_forwarding_rule_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified address resource. + # @param [String] project + # Project ID for this request. + # @param [String] address + # Name of the address resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_global_address(project, address, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/addresses/{address}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['address'] = address unless address.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified address resource. Get a list of available addresses by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] address + # Name of the address resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Address] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Address] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_global_address(project, address, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/addresses/{address}', options) + command.response_representation = Google::Apis::ComputeAlpha::Address::Representation + command.response_class = Google::Apis::ComputeAlpha::Address + command.params['project'] = project unless project.nil? + command.params['address'] = address unless address.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an address resource in the specified project using the data included + # in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::Address] address_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_global_address(project, address_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/addresses', options) + command.request_representation = Google::Apis::ComputeAlpha::Address::Representation + command.request_object = address_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of global addresses. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::AddressList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::AddressList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_global_addresses(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/addresses', options) + command.response_representation = Google::Apis::ComputeAlpha::AddressList::Representation + command.response_class = Google::Apis::ComputeAlpha::AddressList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on a GlobalAddress. To learn more about labels, read the + # Labeling Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::GlobalSetLabelsRequest] global_set_labels_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_global_address_labels(project, resource, global_set_labels_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/addresses/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::GlobalSetLabelsRequest::Representation + command.request_object = global_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_global_address_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/addresses/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified GlobalForwardingRule resource. + # @param [String] project + # Project ID for this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_global_forwarding_rule(project, forwarding_rule, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/forwardingRules/{forwardingRule}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified GlobalForwardingRule resource. Get a list of available + # forwarding rules by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ForwardingRule] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ForwardingRule] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_global_forwarding_rule(project, forwarding_rule, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/forwardingRules/{forwardingRule}', options) + command.response_representation = Google::Apis::ComputeAlpha::ForwardingRule::Representation + command.response_class = Google::Apis::ComputeAlpha::ForwardingRule + command.params['project'] = project unless project.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a GlobalForwardingRule resource in the specified project using the + # data included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::ForwardingRule] forwarding_rule_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_global_forwarding_rule(project, forwarding_rule_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/forwardingRules', options) + command.request_representation = Google::Apis::ComputeAlpha::ForwardingRule::Representation + command.request_object = forwarding_rule_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of GlobalForwardingRule resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ForwardingRuleList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ForwardingRuleList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_global_forwarding_rules(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/forwardingRules', options) + command.response_representation = Google::Apis::ComputeAlpha::ForwardingRuleList::Representation + command.response_class = Google::Apis::ComputeAlpha::ForwardingRuleList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified forwarding rule with the data included in the request. + # This method supports PATCH semantics and uses the JSON merge patch format and + # processing rules. Currently, you can only patch the network_tier field. + # @param [String] project + # Project ID for this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource to patch. + # @param [Google::Apis::ComputeAlpha::ForwardingRule] forwarding_rule_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_global_forwarding_rule(project, forwarding_rule, forwarding_rule_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/forwardingRules/{forwardingRule}', options) + command.request_representation = Google::Apis::ComputeAlpha::ForwardingRule::Representation + command.request_object = forwarding_rule_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on the specified resource. To learn more about labels, read + # the Labeling Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::GlobalSetLabelsRequest] global_set_labels_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_global_forwarding_rule_labels(project, resource, global_set_labels_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/forwardingRules/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::GlobalSetLabelsRequest::Representation + command.request_object = global_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes target URL for the GlobalForwardingRule resource. The new target + # should be of the same type as the old target. + # @param [String] project + # Project ID for this request. + # @param [String] forwarding_rule + # Name of the ForwardingRule resource in which target is to be set. + # @param [Google::Apis::ComputeAlpha::TargetReference] target_reference_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_global_forwarding_rule_target(project, forwarding_rule, target_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/forwardingRules/{forwardingRule}/setTarget', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetReference::Representation + command.request_object = target_reference_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['forwardingRule'] = forwarding_rule unless forwarding_rule.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_global_forwarding_rule_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/forwardingRules/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of all operations. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::OperationAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::OperationAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_global_operation_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/operations', options) + command.response_representation = Google::Apis::ComputeAlpha::OperationAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::OperationAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified Operations resource. + # @param [String] project + # Project ID for this request. + # @param [String] operation + # Name of the Operations resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_global_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/operations/{operation}', options) + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the specified Operations resource. Get a list of operations by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] operation + # Name of the Operations resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_global_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations/{operation}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of Operation resources contained within the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::OperationList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::OperationList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_global_operations(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations', options) + command.response_representation = Google::Apis::ComputeAlpha::OperationList::Representation + command.response_class = Google::Apis::ComputeAlpha::OperationList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified HealthCheck resource. + # @param [String] project + # Project ID for this request. + # @param [String] health_check + # Name of the HealthCheck resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_health_check(project, health_check, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/healthChecks/{healthCheck}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['healthCheck'] = health_check unless health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified HealthCheck resource. Get a list of available health + # checks by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] health_check + # Name of the HealthCheck resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HealthCheck] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HealthCheck] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_health_check(project, health_check, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/healthChecks/{healthCheck}', options) + command.response_representation = Google::Apis::ComputeAlpha::HealthCheck::Representation + command.response_class = Google::Apis::ComputeAlpha::HealthCheck + command.params['project'] = project unless project.nil? + command.params['healthCheck'] = health_check unless health_check.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a HealthCheck resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::HealthCheck] health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_health_check(project, health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/healthChecks', options) + command.request_representation = Google::Apis::ComputeAlpha::HealthCheck::Representation + command.request_object = health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of HealthCheck resources available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HealthCheckList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HealthCheckList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_health_checks(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/healthChecks', options) + command.response_representation = Google::Apis::ComputeAlpha::HealthCheckList::Representation + command.response_class = Google::Apis::ComputeAlpha::HealthCheckList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a HealthCheck resource in the specified project using the data + # included in the request. This method supports PATCH semantics and uses the + # JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] health_check + # Name of the HealthCheck resource to patch. + # @param [Google::Apis::ComputeAlpha::HealthCheck] health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_health_check(project, health_check, health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/healthChecks/{healthCheck}', options) + command.request_representation = Google::Apis::ComputeAlpha::HealthCheck::Representation + command.request_object = health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['healthCheck'] = health_check unless health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_health_check_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/healthChecks/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a HealthCheck resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] health_check + # Name of the HealthCheck resource to update. + # @param [Google::Apis::ComputeAlpha::HealthCheck] health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_health_check(project, health_check, health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/healthChecks/{healthCheck}', options) + command.request_representation = Google::Apis::ComputeAlpha::HealthCheck::Representation + command.request_object = health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['healthCheck'] = health_check unless health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of host types. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HostTypeAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HostTypeAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_host_type_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/hostTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::HostTypeAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::HostTypeAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified host type. Get a list of available host types by making + # a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] host_type + # Name of the host type to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HostType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HostType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_host_type(project, zone, host_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/hostTypes/{hostType}', options) + command.response_representation = Google::Apis::ComputeAlpha::HostType::Representation + command.response_class = Google::Apis::ComputeAlpha::HostType + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['hostType'] = host_type unless host_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of host types available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HostTypeList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HostTypeList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_host_types(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/hostTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::HostTypeList::Representation + command.response_class = Google::Apis::ComputeAlpha::HostTypeList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of hosts. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HostAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HostAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_host_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/hosts', options) + command.response_representation = Google::Apis::ComputeAlpha::HostAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::HostAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified Host resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] host + # Name of the Host resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_host(project, zone, host, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/hosts/{host}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['host'] = host unless host.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified host. Get a list of available hosts by making a list() + # request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] host + # Name of the host to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Host] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Host] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_host(project, zone, host, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/hosts/{host}', options) + command.response_representation = Google::Apis::ComputeAlpha::Host::Representation + command.response_class = Google::Apis::ComputeAlpha::Host + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['host'] = host unless host.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_host_iam_policy(project, zone, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/hosts/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a host resource in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [Google::Apis::ComputeAlpha::Host] host_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_host(project, zone, host_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/hosts', options) + command.request_representation = Google::Apis::ComputeAlpha::Host::Representation + command.request_object = host_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of hosts available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HostList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HostList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_hosts(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/hosts', options) + command.response_representation = Google::Apis::ComputeAlpha::HostList::Representation + command.response_class = Google::Apis::ComputeAlpha::HostList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_host_iam_policy(project, zone, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/hosts/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_host_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/hosts/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified HttpHealthCheck resource. + # @param [String] project + # Project ID for this request. + # @param [String] http_health_check + # Name of the HttpHealthCheck resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_http_health_check(project, http_health_check, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/httpHealthChecks/{httpHealthCheck}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['httpHealthCheck'] = http_health_check unless http_health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified HttpHealthCheck resource. Get a list of available HTTP + # health checks by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] http_health_check + # Name of the HttpHealthCheck resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HttpHealthCheck] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HttpHealthCheck] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_http_health_check(project, http_health_check, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/httpHealthChecks/{httpHealthCheck}', options) + command.response_representation = Google::Apis::ComputeAlpha::HttpHealthCheck::Representation + command.response_class = Google::Apis::ComputeAlpha::HttpHealthCheck + command.params['project'] = project unless project.nil? + command.params['httpHealthCheck'] = http_health_check unless http_health_check.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a HttpHealthCheck resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::HttpHealthCheck] http_health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_http_health_check(project, http_health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/httpHealthChecks', options) + command.request_representation = Google::Apis::ComputeAlpha::HttpHealthCheck::Representation + command.request_object = http_health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of HttpHealthCheck resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HttpHealthCheckList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HttpHealthCheckList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_http_health_checks(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/httpHealthChecks', options) + command.response_representation = Google::Apis::ComputeAlpha::HttpHealthCheckList::Representation + command.response_class = Google::Apis::ComputeAlpha::HttpHealthCheckList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a HttpHealthCheck resource in the specified project using the data + # included in the request. This method supports PATCH semantics and uses the + # JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] http_health_check + # Name of the HttpHealthCheck resource to patch. + # @param [Google::Apis::ComputeAlpha::HttpHealthCheck] http_health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_http_health_check(project, http_health_check, http_health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/httpHealthChecks/{httpHealthCheck}', options) + command.request_representation = Google::Apis::ComputeAlpha::HttpHealthCheck::Representation + command.request_object = http_health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['httpHealthCheck'] = http_health_check unless http_health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_http_health_check_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/httpHealthChecks/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a HttpHealthCheck resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] http_health_check + # Name of the HttpHealthCheck resource to update. + # @param [Google::Apis::ComputeAlpha::HttpHealthCheck] http_health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_http_health_check(project, http_health_check, http_health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/httpHealthChecks/{httpHealthCheck}', options) + command.request_representation = Google::Apis::ComputeAlpha::HttpHealthCheck::Representation + command.request_object = http_health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['httpHealthCheck'] = http_health_check unless http_health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified HttpsHealthCheck resource. + # @param [String] project + # Project ID for this request. + # @param [String] https_health_check + # Name of the HttpsHealthCheck resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_https_health_check(project, https_health_check, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/httpsHealthChecks/{httpsHealthCheck}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['httpsHealthCheck'] = https_health_check unless https_health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS + # health checks by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] https_health_check + # Name of the HttpsHealthCheck resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HttpsHealthCheck] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HttpsHealthCheck] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_https_health_check(project, https_health_check, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/httpsHealthChecks/{httpsHealthCheck}', options) + command.response_representation = Google::Apis::ComputeAlpha::HttpsHealthCheck::Representation + command.response_class = Google::Apis::ComputeAlpha::HttpsHealthCheck + command.params['project'] = project unless project.nil? + command.params['httpsHealthCheck'] = https_health_check unless https_health_check.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a HttpsHealthCheck resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::HttpsHealthCheck] https_health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_https_health_check(project, https_health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/httpsHealthChecks', options) + command.request_representation = Google::Apis::ComputeAlpha::HttpsHealthCheck::Representation + command.request_object = https_health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of HttpsHealthCheck resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::HttpsHealthCheckList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::HttpsHealthCheckList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_https_health_checks(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/httpsHealthChecks', options) + command.response_representation = Google::Apis::ComputeAlpha::HttpsHealthCheckList::Representation + command.response_class = Google::Apis::ComputeAlpha::HttpsHealthCheckList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a HttpsHealthCheck resource in the specified project using the data + # included in the request. This method supports PATCH semantics and uses the + # JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] https_health_check + # Name of the HttpsHealthCheck resource to patch. + # @param [Google::Apis::ComputeAlpha::HttpsHealthCheck] https_health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_https_health_check(project, https_health_check, https_health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/httpsHealthChecks/{httpsHealthCheck}', options) + command.request_representation = Google::Apis::ComputeAlpha::HttpsHealthCheck::Representation + command.request_object = https_health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['httpsHealthCheck'] = https_health_check unless https_health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_https_health_check_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/httpsHealthChecks/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a HttpsHealthCheck resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] https_health_check + # Name of the HttpsHealthCheck resource to update. + # @param [Google::Apis::ComputeAlpha::HttpsHealthCheck] https_health_check_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_https_health_check(project, https_health_check, https_health_check_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/httpsHealthChecks/{httpsHealthCheck}', options) + command.request_representation = Google::Apis::ComputeAlpha::HttpsHealthCheck::Representation + command.request_object = https_health_check_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['httpsHealthCheck'] = https_health_check unless https_health_check.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified image. + # @param [String] project + # Project ID for this request. + # @param [String] image + # Name of the image resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_image(project, image, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/images/{image}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['image'] = image unless image.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the deprecation status of an image. + # If an empty request body is given, clears the deprecation status instead. + # @param [String] project + # Project ID for this request. + # @param [String] image + # Image name. + # @param [Google::Apis::ComputeAlpha::DeprecationStatus] deprecation_status_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def deprecate_image(project, image, deprecation_status_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/images/{image}/deprecate', options) + command.request_representation = Google::Apis::ComputeAlpha::DeprecationStatus::Representation + command.request_object = deprecation_status_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['image'] = image unless image.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified image. Get a list of available images by making a list() + # request. + # @param [String] project + # Project ID for this request. + # @param [String] image + # Name of the image resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Image] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Image] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_image(project, image, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/images/{image}', options) + command.response_representation = Google::Apis::ComputeAlpha::Image::Representation + command.response_class = Google::Apis::ComputeAlpha::Image + command.params['project'] = project unless project.nil? + command.params['image'] = image unless image.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the latest image that is part of an image family and is not deprecated. + # @param [String] project + # Project ID for this request. + # @param [String] family + # Name of the image family to search for. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Image] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Image] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_image_from_family(project, family, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/images/family/{family}', options) + command.response_representation = Google::Apis::ComputeAlpha::Image::Representation + command.response_class = Google::Apis::ComputeAlpha::Image + command.params['project'] = project unless project.nil? + command.params['family'] = family unless family.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_image_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/images/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an image in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::Image] image_object + # @param [Boolean] force_create + # Force image creation if true. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_image(project, image_object = nil, force_create: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/images', options) + command.request_representation = Google::Apis::ComputeAlpha::Image::Representation + command.request_object = image_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['forceCreate'] = force_create unless force_create.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ImageList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ImageList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_images(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/images', options) + command.response_representation = Google::Apis::ComputeAlpha::ImageList::Representation + command.response_class = Google::Apis::ComputeAlpha::ImageList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_image_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/images/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on an image. To learn more about labels, read the Labeling + # Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::GlobalSetLabelsRequest] global_set_labels_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_image_labels(project, resource, global_set_labels_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/images/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::GlobalSetLabelsRequest::Representation + command.request_object = global_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_image_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/images/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # You can specify a maximum of 1000 instances with this method per request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersAbandonInstancesRequest] instance_group_managers_abandon_instances_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def abandon_instance_group_manager_instances(project, zone, instance_group_manager, instance_group_managers_abandon_instances_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersAbandonInstancesRequest::Representation + command.request_object = instance_group_managers_abandon_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of managed instance groups and groups them by zone. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_instance_group_manager_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/instanceGroupManagers', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupManagerAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Apply changes to selected instances on the managed instance group. This method + # can be used to apply new overrides and/or new versions. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. Should + # conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group, should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersApplyUpdatesRequest] instance_group_managers_apply_updates_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def apply_instance_group_manager_updates_to_instances(project, zone, instance_group_manager, instance_group_managers_apply_updates_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersApplyUpdatesRequest::Representation + command.request_object = instance_group_managers_apply_updates_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance_group_manager(project, zone, instance_group_manager, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # You can specify a maximum of 1000 instances with this method per request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersDeleteInstancesRequest] instance_group_managers_delete_instances_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance_group_manager_instances(project, zone, instance_group_manager, instance_group_managers_delete_instances_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersDeleteInstancesRequest::Representation + command.request_object = instance_group_managers_delete_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete selected per-instance configs for the managed instance group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. It should + # conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group. It should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersDeletePerInstanceConfigsReq] instance_group_managers_delete_per_instance_configs_req_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance_group_manager_per_instance_configs(project, zone, instance_group_manager, instance_group_managers_delete_per_instance_configs_req_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersDeletePerInstanceConfigsReq::Representation + command.request_object = instance_group_managers_delete_per_instance_configs_req_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns all of the details about the specified managed instance group. Get a + # list of available managed instance groups by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupManager] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupManager] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance_group_manager(project, zone, instance_group_manager, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupManager + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # A managed instance group can have up to 1000 VM instances per group. Please + # contact Cloud Support if you need an increase in this limit. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where you want to create the managed instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManager] instance_group_manager_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_instance_group_manager(project, zone, instance_group_manager_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of managed instance groups that are contained within the + # specified project and zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupManagerList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instance_group_managers(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instanceGroupManagers', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupManagerList::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupManagerList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [String] filter + # @param [Fixnum] max_results + # @param [String] order_by + # @param [String] page_token + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupManagersListManagedInstancesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagersListManagedInstancesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instance_group_manager_managed_instances(project, zone, instance_group_manager, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersListManagedInstancesResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupManagersListManagedInstancesResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['order_by'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all of the per-instance configs defined for the managed instance group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. It should + # conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group. It should conform to RFC1035. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instance_group_manager_per_instance_configs(project, zone, instance_group_manager, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupManagersListPerInstanceConfigsResp + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a managed instance group using the information that you specify in the + # request. This operation is marked as DONE when the group is patched even if + # the instances in the group are still in the process of being patched. You must + # separately verify the status of the individual instances with the + # listManagedInstances method. This method supports PATCH semantics and uses the + # JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where you want to create the managed instance group. + # @param [String] instance_group_manager + # The name of the instance group manager. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManager] instance_group_manager_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_instance_group_manager(project, zone, instance_group_manager, instance_group_manager_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # You can specify a maximum of 1000 instances with this method per request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersRecreateInstancesRequest] instance_group_managers_recreate_instances_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def recreate_instance_group_manager_instances(project, zone, instance_group_manager, instance_group_managers_recreate_instances_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersRecreateInstancesRequest::Representation + command.request_object = instance_group_managers_recreate_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Fixnum] size + # 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. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def resize_instance_group_manager(project, zone, instance_group_manager, size, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['size'] = size unless size.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Resizes the managed instance group with advanced configuration options like + # disabling creation retries. This is an extended version of the resize method. + # If 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersResizeAdvancedRequest] instance_group_managers_resize_advanced_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def resize_instance_group_manager_advanced(project, zone, instance_group_manager, instance_group_managers_resize_advanced_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersResizeAdvancedRequest::Representation + command.request_object = instance_group_managers_resize_advanced_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Modifies the autohealing policies. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the instance group manager. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersSetAutoHealingRequest] instance_group_managers_set_auto_healing_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_group_manager_auto_healing_policies(project, zone, instance_group_manager, instance_group_managers_set_auto_healing_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersSetAutoHealingRequest::Representation + command.request_object = instance_group_managers_set_auto_healing_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersSetInstanceTemplateRequest] instance_group_managers_set_instance_template_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_group_manager_instance_template(project, zone, instance_group_manager, instance_group_managers_set_instance_template_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersSetInstanceTemplateRequest::Representation + command.request_object = instance_group_managers_set_instance_template_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersSetTargetPoolsRequest] instance_group_managers_set_target_pools_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_group_manager_target_pools(project, zone, instance_group_manager, instance_group_managers_set_target_pools_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersSetTargetPoolsRequest::Representation + command.request_object = instance_group_managers_set_target_pools_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_instance_group_manager_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where you want to create the managed instance group. + # @param [String] instance_group_manager + # The name of the instance group manager. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManager] instance_group_manager_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_instance_group_manager(project, zone, instance_group_manager, instance_group_manager_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Insert or patch (for the ones that already exist) per-instance configs for the + # managed instance group. perInstanceConfig.instance serves as a key used to + # distinguish whether to perform insert or patch. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the managed instance group is located. It should + # conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group. It should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManagersUpdatePerInstanceConfigsReq] instance_group_managers_update_per_instance_configs_req_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_instance_group_manager_per_instance_configs(project, zone, instance_group_manager, instance_group_managers_update_per_instance_configs_req_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManagersUpdatePerInstanceConfigsReq::Representation + command.request_object = instance_group_managers_update_per_instance_configs_req_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the instance group is located. + # @param [String] instance_group + # The name of the instance group where you are adding instances. + # @param [Google::Apis::ComputeAlpha::InstanceGroupsAddInstancesRequest] instance_groups_add_instances_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_instance_group_instances(project, zone, instance_group, instance_groups_add_instances_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupsAddInstancesRequest::Representation + command.request_object = instance_groups_add_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of instance groups and sorts them by zone. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_instance_group_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/instanceGroups', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the instance group is located. + # @param [String] instance_group + # The name of the instance group to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance_group(project, zone, instance_group, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/instanceGroups/{instanceGroup}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified instance group. Get a list of available instance groups + # by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the instance group is located. + # @param [String] instance_group + # The name of the instance group. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroup] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroup] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance_group(project, zone, instance_group, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instanceGroups/{instanceGroup}', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroup::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroup + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an instance group in the specified project using the parameters that + # are included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where you want to create the instance group. + # @param [Google::Apis::ComputeAlpha::InstanceGroup] instance_group_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_instance_group(project, zone, instance_group_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroups', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroup::Representation + command.request_object = instance_group_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of instance groups that are located in the specified + # project and zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the instance group is located. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instance_groups(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instanceGroups', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupList::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists the instances in the specified instance group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the instance group is located. + # @param [String] instance_group + # The name of the instance group from which you want to generate a list of + # included instances. + # @param [Google::Apis::ComputeAlpha::InstanceGroupsListInstancesRequest] instance_groups_list_instances_request_object + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupsListInstances] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupsListInstances] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instance_group_instances(project, zone, instance_group, instance_groups_list_instances_request_object = nil, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupsListInstancesRequest::Representation + command.request_object = instance_groups_list_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupsListInstances::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupsListInstances + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes one or more instances from the specified instance group, but does not + # delete those instances. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration before + # the VM instance is removed or deleted. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the instance group is located. + # @param [String] instance_group + # The name of the instance group where the specified instances will be removed. + # @param [Google::Apis::ComputeAlpha::InstanceGroupsRemoveInstancesRequest] instance_groups_remove_instances_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_instance_group_instances(project, zone, instance_group, instance_groups_remove_instances_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupsRemoveInstancesRequest::Representation + command.request_object = instance_groups_remove_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the named ports for the specified instance group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the instance group is located. + # @param [String] instance_group + # The name of the instance group where the named ports are updated. + # @param [Google::Apis::ComputeAlpha::InstanceGroupsSetNamedPortsRequest] instance_groups_set_named_ports_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_group_named_ports(project, zone, instance_group, instance_groups_set_named_ports_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupsSetNamedPortsRequest::Representation + command.request_object = instance_groups_set_named_ports_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_instance_group_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] instance_template + # The name of the instance template to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance_template(project, instance_template, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/instanceTemplates/{instanceTemplate}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['instanceTemplate'] = instance_template unless instance_template.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified instance template. Get a list of available instance + # templates by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] instance_template + # The name of the instance template. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance_template(project, instance_template, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/instanceTemplates/{instanceTemplate}', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceTemplate::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceTemplate + command.params['project'] = project unless project.nil? + command.params['instanceTemplate'] = instance_template unless instance_template.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::InstanceTemplate] instance_template_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_instance_template(project, instance_template_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/instanceTemplates', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceTemplate::Representation + command.request_object = instance_template_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of instance templates that are contained within the specified + # project and zone. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceTemplateList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceTemplateList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instance_templates(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/instanceTemplates', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceTemplateList::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceTemplateList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_instance_template_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/instanceTemplates/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds an access config to an instance's network interface. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name for this request. + # @param [String] network_interface + # The name of the network interface to add to this instance. + # @param [Google::Apis::ComputeAlpha::AccessConfig] access_config_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_instance_access_config(project, zone, instance, network_interface, access_config_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/addAccessConfig', options) + command.request_representation = Google::Apis::ComputeAlpha::AccessConfig::Representation + command.request_object = access_config_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['networkInterface'] = network_interface unless network_interface.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves aggregated list of instances. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_instance_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/instances', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Attaches an existing Disk resource to an instance. You must first create the + # disk before you can attach it. It is not possible to create and attach a disk + # at the same time. For more information, read Adding a persistent disk to your + # instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name for this request. + # @param [Google::Apis::ComputeAlpha::AttachedDisk] attached_disk_object + # @param [Boolean] force_attach + # Whether to force attach the disk even if it's currently attached to another + # instance. This is only available for regional disks. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def attach_instance_disk(project, zone, instance, attached_disk_object = nil, force_attach: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/attachDisk', options) + command.request_representation = Google::Apis::ComputeAlpha::AttachedDisk::Representation + command.request_object = attached_disk_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['forceAttach'] = force_attach unless force_attach.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified Instance resource. For more information, see Stopping or + # Deleting an Instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance(project, zone, instance, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/instances/{instance}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an access config from an instance's network interface. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name for this request. + # @param [String] access_config + # The name of the access config to delete. + # @param [String] network_interface + # The name of the network interface. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance_access_config(project, zone, instance, access_config, network_interface, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/deleteAccessConfig', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['accessConfig'] = access_config unless access_config.nil? + command.query['networkInterface'] = network_interface unless network_interface.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Detaches a disk from an instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Instance name. + # @param [String] device_name + # Disk device name to detach. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def detach_instance_disk(project, zone, instance, device_name, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/detachDisk', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['deviceName'] = device_name unless device_name.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Instance resource. Get a list of available instances by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Instance] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Instance] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance(project, zone, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instances/{instance}', options) + command.response_representation = Google::Apis::ComputeAlpha::Instance::Representation + command.response_class = Google::Apis::ComputeAlpha::Instance + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified guest attributes entry. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [String] variable_key + # Specifies the key for the guest attributes entry. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::GuestAttributes] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::GuestAttributes] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance_guest_attributes(project, zone, instance, variable_key: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instances/{instance}/getGuestAttributes', options) + command.response_representation = Google::Apis::ComputeAlpha::GuestAttributes::Representation + command.response_class = Google::Apis::ComputeAlpha::GuestAttributes + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['variableKey'] = variable_key unless variable_key.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance_iam_policy(project, zone, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instances/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified instance's serial port output. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Fixnum] port + # Specifies which COM or serial port to retrieve data from. + # @param [Fixnum] start + # Returns output starting from a specific byte position. Use this to page + # through output when the output is too large to return in a single request. For + # the initial request, leave this field unspecified. For subsequent calls, this + # field should be set to the next value returned in the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SerialPortOutput] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SerialPortOutput] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance_serial_port_output(project, zone, instance, port: nil, start: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instances/{instance}/serialPort', options) + command.response_representation = Google::Apis::ComputeAlpha::SerialPortOutput::Representation + command.response_class = Google::Apis::ComputeAlpha::SerialPortOutput + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['port'] = port unless port.nil? + command.query['start'] = start unless start.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an instance resource in the specified project using the data included + # in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [Google::Apis::ComputeAlpha::Instance] instance_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] source_instance_template + # Specifies instance template to create the instance. + # This field is optional. It can be a full or partial URL. For example, the + # following are all valid URLs to an instance template: + # - https://www.googleapis.com/compute/v1/projects/project/global/global/ + # instanceTemplates/instanceTemplate + # - projects/project/global/global/instanceTemplates/instanceTemplate + # - global/instancesTemplates/instanceTemplate + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_instance(project, zone, instance_object = nil, request_id: nil, source_instance_template: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances', options) + command.request_representation = Google::Apis::ComputeAlpha::Instance::Representation + command.request_object = instance_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['sourceInstanceTemplate'] = source_instance_template unless source_instance_template.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of instances contained within the specified zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instances(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instances', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceList::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of referrers to instances contained within the specified + # zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the target instance scoping this request, or '-' if the request should + # span over all instances in the container. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceListReferrers] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceListReferrers] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instance_referrers(project, zone, instance, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/instances/{instance}/referrers', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceListReferrers::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceListReferrers + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Performs a reset on the instance. For more information, see Resetting an + # instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def reset_instance(project, zone, instance, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/reset', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the auto-delete flag for a disk attached to an instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name. + # @param [Boolean] auto_delete + # Whether to auto-delete the disk when the instance is deleted. + # @param [String] device_name + # The device name of the disk to modify. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_disk_auto_delete(project, zone, instance, auto_delete, device_name, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['autoDelete'] = auto_delete unless auto_delete.nil? + command.query['deviceName'] = device_name unless device_name.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_iam_policy(project, zone, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets labels on an instance. To learn more about labels, read the Labeling + # Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeAlpha::InstancesSetLabelsRequest] instances_set_labels_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_labels(project, zone, instance, instances_set_labels_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesSetLabelsRequest::Representation + command.request_object = instances_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the number and/or type of accelerator for a stopped instance to the + # values specified in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeAlpha::InstancesSetMachineResourcesRequest] instances_set_machine_resources_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_machine_resources(project, zone, instance, instances_set_machine_resources_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setMachineResources', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesSetMachineResourcesRequest::Representation + command.request_object = instances_set_machine_resources_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the machine type for a stopped instance to the machine type specified + # in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeAlpha::InstancesSetMachineTypeRequest] instances_set_machine_type_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_machine_type(project, zone, instance, instances_set_machine_type_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setMachineType', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesSetMachineTypeRequest::Representation + command.request_object = instances_set_machine_type_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets metadata for the specified instance to the data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeAlpha::Metadata] metadata_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_metadata(project, zone, instance, metadata_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setMetadata', options) + command.request_representation = Google::Apis::ComputeAlpha::Metadata::Representation + command.request_object = metadata_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the minimum CPU platform that this instance should use. This method + # can only be called on a stopped instance. For more information, read + # Specifying a Minimum CPU Platform. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeAlpha::InstancesSetMinCpuPlatformRequest] instances_set_min_cpu_platform_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_min_cpu_platform(project, zone, instance, instances_set_min_cpu_platform_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesSetMinCpuPlatformRequest::Representation + command.request_object = instances_set_min_cpu_platform_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets an instance's scheduling options. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Instance name. + # @param [Google::Apis::ComputeAlpha::Scheduling] scheduling_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_scheduling(project, zone, instance, scheduling_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setScheduling', options) + command.request_representation = Google::Apis::ComputeAlpha::Scheduling::Representation + command.request_object = scheduling_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the service account on the instance. For more information, read Changing + # the service account and access scopes for an instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance resource to start. + # @param [Google::Apis::ComputeAlpha::InstancesSetServiceAccountRequest] instances_set_service_account_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_service_account(project, zone, instance, instances_set_service_account_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setServiceAccount', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesSetServiceAccountRequest::Representation + command.request_object = instances_set_service_account_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets tags for the specified instance to the data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [Google::Apis::ComputeAlpha::Tags] tags_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_tags(project, zone, instance, tags_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/setTags', options) + command.request_representation = Google::Apis::ComputeAlpha::Tags::Representation + command.request_object = tags_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Simulates a maintenance event on the instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance scoping this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def simulate_instance_maintenance_event(project, zone, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Starts an instance that was stopped using the using the instances().stop + # method. For more information, see Restart an instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance resource to start. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def start_instance(project, zone, instance, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/start', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Starts an instance that was stopped using the using the instances().stop + # method. For more information, see Restart an instance. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance resource to start. + # @param [Google::Apis::ComputeAlpha::InstancesStartWithEncryptionKeyRequest] instances_start_with_encryption_key_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def start_instance_with_encryption_key(project, zone, instance, instances_start_with_encryption_key_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey', options) + command.request_representation = Google::Apis::ComputeAlpha::InstancesStartWithEncryptionKeyRequest::Representation + command.request_object = instances_start_with_encryption_key_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance resource to stop. + # @param [Boolean] discard_local_ssd + # If true, discard the contents of any attached localSSD partitions. Default + # value is false (== preserve localSSD data). + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def stop_instance(project, zone, instance, discard_local_ssd: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/stop', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['discardLocalSsd'] = discard_local_ssd unless discard_local_ssd.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # Name of the instance resource to suspend. + # @param [Boolean] discard_local_ssd + # If true, discard the contents of any attached localSSD partitions. Default + # value is false (== preserve localSSD data). + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def suspend_instance(project, zone, instance, discard_local_ssd: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/suspend', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['discardLocalSsd'] = discard_local_ssd unless discard_local_ssd.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_instance_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified access config from an instance's network interface with + # the data included in the request. This method supports PATCH semantics and + # uses the JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name for this request. + # @param [String] network_interface + # The name of the network interface where the access config is attached. + # @param [Google::Apis::ComputeAlpha::AccessConfig] access_config_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_instance_access_config(project, zone, instance, network_interface, access_config_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/instances/{instance}/updateAccessConfig', options) + command.request_representation = Google::Apis::ComputeAlpha::AccessConfig::Representation + command.request_object = access_config_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['networkInterface'] = network_interface unless network_interface.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an instance's network interface. This method follows PATCH semantics. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] instance + # The instance name for this request. + # @param [String] network_interface + # The name of the network interface to update. + # @param [Google::Apis::ComputeAlpha::NetworkInterface] network_interface_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_instance_network_interface(project, zone, instance, network_interface, network_interface_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/zones/{zone}/instances/{instance}/updateNetworkInterface', options) + command.request_representation = Google::Apis::ComputeAlpha::NetworkInterface::Representation + command.request_object = network_interface_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['instance'] = instance unless instance.nil? + command.query['networkInterface'] = network_interface unless network_interface.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of interconnect attachments. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_interconnect_attachment_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/interconnectAttachments', options) + command.response_representation = Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::InterconnectAttachmentAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified interconnect attachment. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] interconnect_attachment + # Name of the interconnect attachment to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_interconnect_attachment(project, region, interconnect_attachment, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['interconnectAttachment'] = interconnect_attachment unless interconnect_attachment.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified interconnect attachment. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] interconnect_attachment + # Name of the interconnect attachment to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InterconnectAttachment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InterconnectAttachment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_interconnect_attachment(project, region, interconnect_attachment, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}', options) + command.response_representation = Google::Apis::ComputeAlpha::InterconnectAttachment::Representation + command.response_class = Google::Apis::ComputeAlpha::InterconnectAttachment + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['interconnectAttachment'] = interconnect_attachment unless interconnect_attachment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_interconnect_attachment_iam_policy(project, region, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/interconnectAttachments/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an InterconnectAttachment in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::InterconnectAttachment] interconnect_attachment_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_interconnect_attachment(project, region, interconnect_attachment_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/interconnectAttachments', options) + command.request_representation = Google::Apis::ComputeAlpha::InterconnectAttachment::Representation + command.request_object = interconnect_attachment_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of interconnect attachments contained within the specified + # region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InterconnectAttachmentList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InterconnectAttachmentList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_interconnect_attachments(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/interconnectAttachments', options) + command.response_representation = Google::Apis::ComputeAlpha::InterconnectAttachmentList::Representation + command.response_class = Google::Apis::ComputeAlpha::InterconnectAttachmentList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_interconnect_attachment_iam_policy(project, region, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/interconnectAttachments/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_interconnect_attachment_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/interconnectAttachments/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the details for the specified interconnect location. Get a list of + # available interconnect locations by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] interconnect_location + # Name of the interconnect location to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InterconnectLocation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InterconnectLocation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_interconnect_location(project, interconnect_location, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/interconnectLocations/{interconnectLocation}', options) + command.response_representation = Google::Apis::ComputeAlpha::InterconnectLocation::Representation + command.response_class = Google::Apis::ComputeAlpha::InterconnectLocation + command.params['project'] = project unless project.nil? + command.params['interconnectLocation'] = interconnect_location unless interconnect_location.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of interconnect locations available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InterconnectLocationList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InterconnectLocationList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_interconnect_locations(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/interconnectLocations', options) + command.response_representation = Google::Apis::ComputeAlpha::InterconnectLocationList::Representation + command.response_class = Google::Apis::ComputeAlpha::InterconnectLocationList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_interconnect_location_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/interconnectLocations/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified interconnect. + # @param [String] project + # Project ID for this request. + # @param [String] interconnect + # Name of the interconnect to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_interconnect(project, interconnect, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/interconnects/{interconnect}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['interconnect'] = interconnect unless interconnect.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified interconnect. Get a list of available interconnects by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] interconnect + # Name of the interconnect to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Interconnect] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Interconnect] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_interconnect(project, interconnect, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/interconnects/{interconnect}', options) + command.response_representation = Google::Apis::ComputeAlpha::Interconnect::Representation + command.response_class = Google::Apis::ComputeAlpha::Interconnect + command.params['project'] = project unless project.nil? + command.params['interconnect'] = interconnect unless interconnect.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_interconnect_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/interconnects/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Interconnect in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::Interconnect] interconnect_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_interconnect(project, interconnect_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/interconnects', options) + command.request_representation = Google::Apis::ComputeAlpha::Interconnect::Representation + command.request_object = interconnect_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of interconnect available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InterconnectList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InterconnectList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_interconnects(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/interconnects', options) + command.response_representation = Google::Apis::ComputeAlpha::InterconnectList::Representation + command.response_class = Google::Apis::ComputeAlpha::InterconnectList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified interconnect with the data included in the request. This + # method supports PATCH semantics and uses the JSON merge patch format and + # processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] interconnect + # Name of the interconnect to update. + # @param [Google::Apis::ComputeAlpha::Interconnect] interconnect_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_interconnect(project, interconnect, interconnect_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/interconnects/{interconnect}', options) + command.request_representation = Google::Apis::ComputeAlpha::Interconnect::Representation + command.request_object = interconnect_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['interconnect'] = interconnect unless interconnect.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_interconnect_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/interconnects/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_interconnect_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/interconnects/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Return a specified license code. License codes are mirrored across all + # projects that have permissions to read the License Code. + # @param [String] project + # Project ID for this request. + # @param [String] license_code + # Number corresponding to the License code resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::LicenseCode] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::LicenseCode] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_license_code(project, license_code, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/licenseCodes/{licenseCode}', options) + command.response_representation = Google::Apis::ComputeAlpha::LicenseCode::Representation + command.response_class = Google::Apis::ComputeAlpha::LicenseCode + command.params['project'] = project unless project.nil? + command.params['licenseCode'] = license_code unless license_code.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified license. + # @param [String] project + # Project ID for this request. + # @param [String] license + # Name of the license resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_license(project, license, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/licenses/{license}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['license'] = license unless license.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified License resource. + # @param [String] project + # Project ID for this request. + # @param [String] license + # Name of the License resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::License] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::License] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_license(project, license, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/licenses/{license}', options) + command.response_representation = Google::Apis::ComputeAlpha::License::Representation + command.response_class = Google::Apis::ComputeAlpha::License + command.params['project'] = project unless project.nil? + command.params['license'] = license unless license.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_license_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/licenses/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Create a License resource in the specified project. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::License] license_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_license(project, license_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/licenses', options) + command.request_representation = Google::Apis::ComputeAlpha::License::Representation + command.request_object = license_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of licenses available in the specified project. This method + # does not get any licenses that belong to other projects, including licenses + # attached to publicly-available images, like Debian 8. If you want to get a + # list of publicly-available licenses, use this method to make a request to the + # respective image project, such as debian-cloud or windows-cloud. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::LicensesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::LicensesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_licenses(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/licenses', options) + command.response_representation = Google::Apis::ComputeAlpha::LicensesListResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::LicensesListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_license_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/licenses/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_license_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/licenses/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of machine types. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::MachineTypeAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::MachineTypeAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_machine_type_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/machineTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::MachineTypeAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::MachineTypeAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified machine type. Get a list of available machine types by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] machine_type + # Name of the machine type to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::MachineType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::MachineType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_machine_type(project, zone, machine_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/machineTypes/{machineType}', options) + command.response_representation = Google::Apis::ComputeAlpha::MachineType::Representation + command.response_class = Google::Apis::ComputeAlpha::MachineType + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['machineType'] = machine_type unless machine_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of machine types available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::MachineTypeList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::MachineTypeList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_machine_types(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/machineTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::MachineTypeList::Representation + command.response_class = Google::Apis::ComputeAlpha::MachineTypeList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of network endpoint groups and sorts them by zone. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_network_endpoint_group_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/networkEndpointGroups', options) + command.response_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::NetworkEndpointGroupAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Attach a list of network endpoints to the specified network endpoint group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the network endpoint group is located. It should + # comply with RFC1035. + # @param [String] network_endpoint_group + # The name of the network endpoint group where you are attaching network + # endpoints to. It should comply with RFC1035. + # @param [Google::Apis::ComputeAlpha::NetworkEndpointGroupsAttachEndpointsRequest] network_endpoint_groups_attach_endpoints_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def attach_network_endpoint_group_network_endpoints(project, zone, network_endpoint_group, network_endpoint_groups_attach_endpoints_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints', options) + command.request_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroupsAttachEndpointsRequest::Representation + command.request_object = network_endpoint_groups_attach_endpoints_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['networkEndpointGroup'] = network_endpoint_group unless network_endpoint_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified network endpoint group. The network endpoints in the NEG + # and the VM instances they belong to are not terminated when the NEG is deleted. + # Note that the NEG cannot be deleted if there are backend services referencing + # it. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the network endpoint group is located. It should + # comply with RFC1035. + # @param [String] network_endpoint_group + # The name of the network endpoint group to delete. It should comply with + # RFC1035. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_network_endpoint_group(project, zone, network_endpoint_group, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['networkEndpointGroup'] = network_endpoint_group unless network_endpoint_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Detach a list of network endpoints from the specified network endpoint group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the network endpoint group is located. It should + # comply with RFC1035. + # @param [String] network_endpoint_group + # The name of the network endpoint group where you are removing network + # endpoints. It should comply with RFC1035. + # @param [Google::Apis::ComputeAlpha::NetworkEndpointGroupsDetachEndpointsRequest] network_endpoint_groups_detach_endpoints_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def detach_network_endpoint_group_network_endpoints(project, zone, network_endpoint_group, network_endpoint_groups_detach_endpoints_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints', options) + command.request_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroupsDetachEndpointsRequest::Representation + command.request_object = network_endpoint_groups_detach_endpoints_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['networkEndpointGroup'] = network_endpoint_group unless network_endpoint_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified network endpoint group. Get a list of available network + # endpoint groups by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the network endpoint group is located. It should + # comply with RFC1035. + # @param [String] network_endpoint_group + # The name of the network endpoint group. It should comply with RFC1035. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::NetworkEndpointGroup] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroup] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_network_endpoint_group(project, zone, network_endpoint_group, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}', options) + command.response_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroup::Representation + command.response_class = Google::Apis::ComputeAlpha::NetworkEndpointGroup + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['networkEndpointGroup'] = network_endpoint_group unless network_endpoint_group.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a network endpoint group in the specified project using the parameters + # that are included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where you want to create the network endpoint group. It + # should comply with RFC1035. + # @param [Google::Apis::ComputeAlpha::NetworkEndpointGroup] network_endpoint_group_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_network_endpoint_group(project, zone, network_endpoint_group_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/networkEndpointGroups', options) + command.request_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroup::Representation + command.request_object = network_endpoint_group_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of network endpoint groups that are located in the + # specified project and zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the network endpoint group is located. It should + # comply with RFC1035. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::NetworkEndpointGroupList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_network_endpoint_groups(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/networkEndpointGroups', options) + command.response_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroupList::Representation + command.response_class = Google::Apis::ComputeAlpha::NetworkEndpointGroupList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the network endpoints in the specified network endpoint group. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone where the network endpoint group is located. It should + # comply with RFC1035. + # @param [String] network_endpoint_group + # The name of the network endpoint group from which you want to generate a list + # of included network endpoints. It should comply with RFC1035. + # @param [Google::Apis::ComputeAlpha::NetworkEndpointGroupsListEndpointsRequest] network_endpoint_groups_list_endpoints_request_object + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_network_endpoint_group_network_endpoints(project, zone, network_endpoint_group, network_endpoint_groups_list_endpoints_request_object = nil, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints', options) + command.request_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroupsListEndpointsRequest::Representation + command.request_object = network_endpoint_groups_list_endpoints_request_object + command.response_representation = Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints::Representation + command.response_class = Google::Apis::ComputeAlpha::NetworkEndpointGroupsListNetworkEndpoints + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['networkEndpointGroup'] = network_endpoint_group unless network_endpoint_group.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_network_endpoint_group_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds a peering to the specified network. + # @param [String] project + # Project ID for this request. + # @param [String] network + # Name of the network resource to add peering to. + # @param [Google::Apis::ComputeAlpha::NetworksAddPeeringRequest] networks_add_peering_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_network_peering(project, network, networks_add_peering_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/networks/{network}/addPeering', options) + command.request_representation = Google::Apis::ComputeAlpha::NetworksAddPeeringRequest::Representation + command.request_object = networks_add_peering_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['network'] = network unless network.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified network. + # @param [String] project + # Project ID for this request. + # @param [String] network + # Name of the network to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_network(project, network, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/networks/{network}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['network'] = network unless network.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified network. Get a list of available networks by making a + # list() request. + # @param [String] project + # Project ID for this request. + # @param [String] network + # Name of the network to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Network] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Network] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_network(project, network, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/networks/{network}', options) + command.response_representation = Google::Apis::ComputeAlpha::Network::Representation + command.response_class = Google::Apis::ComputeAlpha::Network + command.params['project'] = project unless project.nil? + command.params['network'] = network unless network.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a network in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::Network] network_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_network(project, network_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/networks', options) + command.request_representation = Google::Apis::ComputeAlpha::Network::Representation + command.request_object = network_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of networks available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::NetworkList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::NetworkList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_networks(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/networks', options) + command.response_representation = Google::Apis::ComputeAlpha::NetworkList::Representation + command.response_class = Google::Apis::ComputeAlpha::NetworkList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the internal IP owners in the specified network. + # @param [String] project + # Project ID for this request. + # @param [String] network + # Name of the network to return. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [String] ip_cidr_range + # (Optional) IP CIDR range filter, example: "10.128.10.0/30". + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] owner_projects + # (Optional) Project IDs filter, example: "project-1,project-2". + # @param [String] owner_types + # (Optional) Owner types filter, example: "instance,forwardingRule". + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] subnet_name + # (Optional) Subnetwork name filter. + # @param [String] subnet_region + # (Optional) Subnetwork region filter. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::IpOwnerList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::IpOwnerList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_network_ip_owners(project, network, filter: nil, ip_cidr_range: nil, max_results: nil, order_by: nil, owner_projects: nil, owner_types: nil, page_token: nil, subnet_name: nil, subnet_region: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/networks/{network}/listIpOwners', options) + command.response_representation = Google::Apis::ComputeAlpha::IpOwnerList::Representation + command.response_class = Google::Apis::ComputeAlpha::IpOwnerList + command.params['project'] = project unless project.nil? + command.params['network'] = network unless network.nil? + command.query['filter'] = filter unless filter.nil? + command.query['ipCidrRange'] = ip_cidr_range unless ip_cidr_range.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['ownerProjects'] = owner_projects unless owner_projects.nil? + command.query['ownerTypes'] = owner_types unless owner_types.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['subnetName'] = subnet_name unless subnet_name.nil? + command.query['subnetRegion'] = subnet_region unless subnet_region.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Patches the specified network with the data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] network + # Name of the network to update. + # @param [Google::Apis::ComputeAlpha::Network] network_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_network(project, network, network_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/networks/{network}', options) + command.request_representation = Google::Apis::ComputeAlpha::Network::Representation + command.request_object = network_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['network'] = network unless network.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes a peering from the specified network. + # @param [String] project + # Project ID for this request. + # @param [String] network + # Name of the network resource to remove peering from. + # @param [Google::Apis::ComputeAlpha::NetworksRemovePeeringRequest] networks_remove_peering_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_network_peering(project, network, networks_remove_peering_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/networks/{network}/removePeering', options) + command.request_representation = Google::Apis::ComputeAlpha::NetworksRemovePeeringRequest::Representation + command.request_object = networks_remove_peering_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['network'] = network unless network.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Switches the network mode from auto subnet mode to custom subnet mode. + # @param [String] project + # Project ID for this request. + # @param [String] network + # Name of the network to be updated. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def switch_network_to_custom_mode(project, network, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/networks/{network}/switchToCustomMode', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['network'] = network unless network.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_network_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/networks/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Disable this project as a shared VPC host project. + # @param [String] project + # Project ID for this request. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def disable_project_xpn_host(project, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/disableXpnHost', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Disable a serivce resource (a.k.a service project) associated with this host + # project. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::ProjectsDisableXpnResourceRequest] projects_disable_xpn_resource_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def disable_project_xpn_resource(project, projects_disable_xpn_resource_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/disableXpnResource', options) + command.request_representation = Google::Apis::ComputeAlpha::ProjectsDisableXpnResourceRequest::Representation + command.request_object = projects_disable_xpn_resource_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Enable this project as a shared VPC host project. + # @param [String] project + # Project ID for this request. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def enable_project_xpn_host(project, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/enableXpnHost', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Enable service resource (a.k.a service project) for a host project, so that + # subnets in the host project can be used by instances in the service project. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::ProjectsEnableXpnResourceRequest] projects_enable_xpn_resource_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def enable_project_xpn_resource(project, projects_enable_xpn_resource_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/enableXpnResource', options) + command.request_representation = Google::Apis::ComputeAlpha::ProjectsEnableXpnResourceRequest::Representation + command.request_object = projects_enable_xpn_resource_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Project resource. + # @param [String] project + # Project ID for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Project] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Project] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project(project, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}', options) + command.response_representation = Google::Apis::ComputeAlpha::Project::Representation + command.response_class = Google::Apis::ComputeAlpha::Project + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get the shared VPC host project that this project links to. May be empty if no + # link exists. + # @param [String] project + # Project ID for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Project] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Project] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_xpn_host(project, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/getXpnHost', options) + command.response_representation = Google::Apis::ComputeAlpha::Project::Representation + command.response_class = Google::Apis::ComputeAlpha::Project + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get service resources (a.k.a service project) associated with this host + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # @param [Fixnum] max_results + # @param [String] order_by + # @param [String] page_token + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ProjectsGetXpnResources] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ProjectsGetXpnResources] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_xpn_resources(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/getXpnResources', options) + command.response_representation = Google::Apis::ComputeAlpha::ProjectsGetXpnResources::Representation + command.response_class = Google::Apis::ComputeAlpha::ProjectsGetXpnResources + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['order_by'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all shared VPC host projects visible to the user in an organization. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::ProjectsListXpnHostsRequest] projects_list_xpn_hosts_request_object + # @param [String] filter + # @param [Fixnum] max_results + # @param [String] order_by + # @param [String] page_token + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::XpnHostList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::XpnHostList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_xpn_hosts(project, projects_list_xpn_hosts_request_object = nil, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/listXpnHosts', options) + command.request_representation = Google::Apis::ComputeAlpha::ProjectsListXpnHostsRequest::Representation + command.request_object = projects_list_xpn_hosts_request_object + command.response_representation = Google::Apis::ComputeAlpha::XpnHostList::Representation + command.response_class = Google::Apis::ComputeAlpha::XpnHostList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['order_by'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Moves a persistent disk from one zone to another. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::DiskMoveRequest] disk_move_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def move_project_disk(project, disk_move_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/moveDisk', options) + command.request_representation = Google::Apis::ComputeAlpha::DiskMoveRequest::Representation + command.request_object = disk_move_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Moves an instance and its attached persistent disks from one zone to another. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::InstanceMoveRequest] instance_move_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def move_project_instance(project, instance_move_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/moveInstance', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceMoveRequest::Representation + command.request_object = instance_move_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets metadata common to all instances within the specified project using the + # data included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::Metadata] metadata_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_common_instance_metadata(project, metadata_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/setCommonInstanceMetadata', options) + command.request_representation = Google::Apis::ComputeAlpha::Metadata::Representation + command.request_object = metadata_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the default service account of the project. The default service account + # is used when a VM instance is created with the service account email address + # set to "default". + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::ProjectsSetDefaultServiceAccountRequest] projects_set_default_service_account_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_default_service_account(project, projects_set_default_service_account_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/setDefaultServiceAccount', options) + command.request_representation = Google::Apis::ComputeAlpha::ProjectsSetDefaultServiceAccountRequest::Representation + command.request_object = projects_set_default_service_account_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::UsageExportLocation] usage_export_location_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_usage_export_bucket(project, usage_export_location_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/setUsageExportBucket', options) + command.request_representation = Google::Apis::ComputeAlpha::UsageExportLocation::Representation + command.request_object = usage_export_location_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified autoscaler. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] autoscaler + # Name of the autoscaler to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_autoscaler(project, region, autoscaler, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/autoscalers/{autoscaler}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified autoscaler. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] autoscaler + # Name of the autoscaler to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Autoscaler] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Autoscaler] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_autoscaler(project, region, autoscaler, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/autoscalers/{autoscaler}', options) + command.response_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.response_class = Google::Apis::ComputeAlpha::Autoscaler + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an autoscaler in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::Autoscaler] autoscaler_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_region_autoscaler(project, region, autoscaler_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/autoscalers', options) + command.request_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.request_object = autoscaler_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of autoscalers contained within the specified region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionAutoscalerList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionAutoscalerList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_autoscalers(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/autoscalers', options) + command.response_representation = Google::Apis::ComputeAlpha::RegionAutoscalerList::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionAutoscalerList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an autoscaler in the specified project using the data included in the + # request. This method supports PATCH semantics and uses the JSON merge patch + # format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::Autoscaler] autoscaler_object + # @param [String] autoscaler + # Name of the autoscaler to patch. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_region_autoscaler(project, region, autoscaler_object = nil, autoscaler: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/regions/{region}/autoscalers', options) + command.request_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.request_object = autoscaler_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_region_autoscaler_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/autoscalers/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an autoscaler in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::Autoscaler] autoscaler_object + # @param [String] autoscaler + # Name of the autoscaler to update. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_region_autoscaler(project, region, autoscaler_object = nil, autoscaler: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/regions/{region}/autoscalers', options) + command.request_representation = Google::Apis::ComputeAlpha::Autoscaler::Representation + command.request_object = autoscaler_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['autoscaler'] = autoscaler unless autoscaler.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified regional BackendService resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] backend_service + # Name of the BackendService resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_backend_service(project, region, backend_service, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/backendServices/{backendService}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified regional BackendService resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] backend_service + # Name of the BackendService resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendService] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendService] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_backend_service(project, region, backend_service, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/backendServices/{backendService}', options) + command.response_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendService + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the most recent health check results for this regional BackendService. + # @param [String] project + # @param [String] region + # Name of the region scoping this request. + # @param [String] backend_service + # Name of the BackendService resource to which the queried instance belongs. + # @param [Google::Apis::ComputeAlpha::ResourceGroupReference] resource_group_reference_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendServiceGroupHealth] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendServiceGroupHealth] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_backend_service_health(project, region, backend_service, resource_group_reference_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/backendServices/{backendService}/getHealth', options) + command.request_representation = Google::Apis::ComputeAlpha::ResourceGroupReference::Representation + command.request_object = resource_group_reference_object + command.response_representation = Google::Apis::ComputeAlpha::BackendServiceGroupHealth::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendServiceGroupHealth + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::BackendService] backend_service_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_region_backend_service(project, region, backend_service_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/backendServices', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.request_object = backend_service_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of regional BackendService resources available to the + # specified project in the given region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::BackendServiceList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::BackendServiceList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_backend_services(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/backendServices', options) + command.response_representation = Google::Apis::ComputeAlpha::BackendServiceList::Representation + command.response_class = Google::Apis::ComputeAlpha::BackendServiceList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified regional BackendService resource with the data included + # in the request. There are several restrictions and guidelines to keep in mind + # when updating a backend service. Read Restrictions and Guidelines for more + # information. This method supports PATCH semantics and uses the JSON merge + # patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] backend_service + # Name of the BackendService resource to patch. + # @param [Google::Apis::ComputeAlpha::BackendService] backend_service_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_region_backend_service(project, region, backend_service, backend_service_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/regions/{region}/backendServices/{backendService}', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.request_object = backend_service_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_region_backend_service_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/backendServices/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified regional BackendService resource with the data included + # in the request. There are several restrictions and guidelines to keep in mind + # when updating a backend service. Read Restrictions and Guidelines for more + # information. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] backend_service + # Name of the BackendService resource to update. + # @param [Google::Apis::ComputeAlpha::BackendService] backend_service_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_region_backend_service(project, region, backend_service, backend_service_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/regions/{region}/backendServices/{backendService}', options) + command.request_representation = Google::Apis::ComputeAlpha::BackendService::Representation + command.request_object = backend_service_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['backendService'] = backend_service unless backend_service.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of commitments. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::CommitmentAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::CommitmentAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_region_commitment_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/commitments', options) + command.response_representation = Google::Apis::ComputeAlpha::CommitmentAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::CommitmentAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified commitment resource. Get a list of available commitments + # by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] commitment + # Name of the commitment to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Commitment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Commitment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_commitment(project, region, commitment, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/commitments/{commitment}', options) + command.response_representation = Google::Apis::ComputeAlpha::Commitment::Representation + command.response_class = Google::Apis::ComputeAlpha::Commitment + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['commitment'] = commitment unless commitment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a commitment in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::Commitment] commitment_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_region_commitment(project, region, commitment_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/commitments', options) + command.request_representation = Google::Apis::ComputeAlpha::Commitment::Representation + command.request_object = commitment_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of commitments contained within the specified region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::CommitmentList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::CommitmentList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_commitments(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/commitments', options) + command.response_representation = Google::Apis::ComputeAlpha::CommitmentList::Representation + command.response_class = Google::Apis::ComputeAlpha::CommitmentList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_region_commitment_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/commitments/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified regional disk type. Get a list of available disk types + # by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] disk_type + # Name of the disk type to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::DiskType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::DiskType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_disk_type(project, region, disk_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/diskTypes/{diskType}', options) + command.response_representation = Google::Apis::ComputeAlpha::DiskType::Representation + command.response_class = Google::Apis::ComputeAlpha::DiskType + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['diskType'] = disk_type unless disk_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of regional disk types available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionDiskTypeList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionDiskTypeList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_disk_types(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/diskTypes', options) + command.response_representation = Google::Apis::ComputeAlpha::RegionDiskTypeList::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionDiskTypeList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a snapshot of this regional disk. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] disk + # Name of the regional persistent disk to snapshot. + # @param [Google::Apis::ComputeAlpha::Snapshot] snapshot_object + # @param [Boolean] guest_flush + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_region_disk_snapshot(project, region, disk, snapshot_object = nil, guest_flush: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/disks/{disk}/createSnapshot', options) + command.request_representation = Google::Apis::ComputeAlpha::Snapshot::Representation + command.request_object = snapshot_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['disk'] = disk unless disk.nil? + command.query['guestFlush'] = guest_flush unless guest_flush.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] disk + # Name of the regional persistent disk to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_disk(project, region, disk, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/disks/{disk}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['disk'] = disk unless disk.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns a specified regional persistent disk. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] disk + # Name of the regional persistent disk to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Disk] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Disk] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_disk(project, region, disk, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/disks/{disk}', options) + command.response_representation = Google::Apis::ComputeAlpha::Disk::Representation + command.response_class = Google::Apis::ComputeAlpha::Disk + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['disk'] = disk unless disk.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a persistent regional disk in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::Disk] disk_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] source_image + # Optional. Source image to restore onto a disk. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_region_disk(project, region, disk_object = nil, request_id: nil, source_image: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/disks', options) + command.request_representation = Google::Apis::ComputeAlpha::Disk::Representation + command.request_object = disk_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['sourceImage'] = source_image unless source_image.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of persistent disks contained within the specified region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::DiskList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::DiskList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_disks(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/disks', options) + command.response_representation = Google::Apis::ComputeAlpha::DiskList::Representation + command.response_class = Google::Apis::ComputeAlpha::DiskList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Resizes the specified regional persistent disk. + # @param [String] project + # The project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] disk + # Name of the regional persistent disk. + # @param [Google::Apis::ComputeAlpha::RegionDisksResizeRequest] region_disks_resize_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def resize_region_disk(project, region, disk, region_disks_resize_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/disks/{disk}/resize', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionDisksResizeRequest::Representation + command.request_object = region_disks_resize_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['disk'] = disk unless disk.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on the target regional disk. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::RegionSetLabelsRequest] region_set_labels_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_region_disk_labels(project, region, resource, region_set_labels_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/disks/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionSetLabelsRequest::Representation + command.request_object = region_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_region_disk_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/disks/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # You can specify a maximum of 1000 instances with this method per request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersAbandonInstancesRequest] region_instance_group_managers_abandon_instances_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def abandon_region_instance_group_manager_instances(project, region, instance_group_manager, region_instance_group_managers_abandon_instances_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersAbandonInstancesRequest::Representation + command.request_object = region_instance_group_managers_abandon_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Apply updates to selected instances the managed instance group. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request, should conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group, should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersApplyUpdatesRequest] region_instance_group_managers_apply_updates_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def apply_region_instance_group_manager_updates_to_instances(project, region, instance_group_manager, region_instance_group_managers_apply_updates_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersApplyUpdatesRequest::Representation + command.request_object = region_instance_group_managers_apply_updates_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified managed instance group and all of the instances in that + # group. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_instance_group_manager(project, region, instance_group_manager, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # You can specify a maximum of 1000 instances with this method per request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersDeleteInstancesRequest] region_instance_group_managers_delete_instances_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_instance_group_manager_instances(project, region, instance_group_manager, region_instance_group_managers_delete_instances_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersDeleteInstancesRequest::Representation + command.request_object = region_instance_group_managers_delete_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete selected per-instance configs for the managed instance group. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request, should conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group. It should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagerDeleteInstanceConfigReq] region_instance_group_manager_delete_instance_config_req_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_instance_group_manager_per_instance_configs(project, region, instance_group_manager, region_instance_group_manager_delete_instance_config_req_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagerDeleteInstanceConfigReq::Representation + command.request_object = region_instance_group_manager_delete_instance_config_req_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns all of the details about the specified managed instance group. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroupManager] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroupManager] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_instance_group_manager(project, region, instance_group_manager, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroupManager + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # A regional managed instance group can contain up to 2000 instances. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManager] instance_group_manager_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_region_instance_group_manager(project, region, instance_group_manager_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of managed instance groups that are contained within the + # specified region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_instance_group_managers(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/instanceGroupManagers', options) + command.response_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionInstanceGroupManagerList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [String] filter + # @param [Fixnum] max_results + # @param [String] order_by + # @param [String] page_token + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstancesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstancesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_instance_group_manager_managed_instances(project, region, instance_group_manager, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances', options) + command.response_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstancesResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstancesResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['order_by'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all of the per-instance configs defined for the managed instance group. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request, should conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group. It should conform to RFC1035. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_instance_group_manager_per_instance_configs(project, region, instance_group_manager, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs', options) + command.response_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersListInstanceConfigsResp + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a managed instance group using the information that you specify in the + # request. This operation is marked as DONE when the group is patched even if + # the instances in the group are still in the process of being patched. You must + # separately verify the status of the individual instances with the + # listmanagedinstances method. This method supports PATCH semantics and uses the + # JSON merge patch format and processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # The name of the instance group manager. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManager] instance_group_manager_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_region_instance_group_manager(project, region, instance_group_manager, instance_group_manager_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # You can specify a maximum of 1000 instances with this method per request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersRecreateRequest] region_instance_group_managers_recreate_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def recreate_region_instance_group_manager_instances(project, region, instance_group_manager, region_instance_group_managers_recreate_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersRecreateRequest::Representation + command.request_object = region_instance_group_managers_recreate_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # If the group is part of a backend service that has enabled connection draining, + # it can take up to 60 seconds after the connection draining duration has + # elapsed before the VM instance is removed or deleted. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group. + # @param [Fixnum] size + # Number of instances that should exist in this instance group manager. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def resize_region_instance_group_manager(project, region, instance_group_manager, size, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['size'] = size unless size.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Modifies the autohealing policy for the instances in this managed instance + # group. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersSetAutoHealingRequest] region_instance_group_managers_set_auto_healing_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_region_instance_group_manager_auto_healing_policies(project, region, instance_group_manager, region_instance_group_managers_set_auto_healing_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersSetAutoHealingRequest::Representation + command.request_object = region_instance_group_managers_set_auto_healing_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the instance template to use when creating new instances or recreating + # instances in this group. Existing instances are not affected. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # The name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersSetTemplateRequest] region_instance_group_managers_set_template_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_region_instance_group_manager_instance_template(project, region, instance_group_manager, region_instance_group_managers_set_template_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersSetTemplateRequest::Representation + command.request_object = region_instance_group_managers_set_template_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Modifies the target pools to which all new instances in this group are + # assigned. Existing instances in the group are not affected. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # Name of the managed instance group. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagersSetTargetPoolsRequest] region_instance_group_managers_set_target_pools_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_region_instance_group_manager_target_pools(project, region, instance_group_manager, region_instance_group_managers_set_target_pools_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagersSetTargetPoolsRequest::Representation + command.request_object = region_instance_group_managers_set_target_pools_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_region_instance_group_manager_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # The name of the instance group manager. + # @param [Google::Apis::ComputeAlpha::InstanceGroupManager] instance_group_manager_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_region_instance_group_manager(project, region, instance_group_manager, instance_group_manager_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Insert or patch (for the ones that already exist) per-instance configs for the + # managed instance group. perInstanceConfig.instance serves as a key used to + # distinguish whether to perform insert or patch. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request, should conform to RFC1035. + # @param [String] instance_group_manager + # The name of the managed instance group. It should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupManagerUpdateInstanceConfigReq] region_instance_group_manager_update_instance_config_req_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_region_instance_group_manager_per_instance_configs(project, region, instance_group_manager, region_instance_group_manager_update_instance_config_req_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupManagerUpdateInstanceConfigReq::Representation + command.request_object = region_instance_group_manager_update_instance_config_req_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified instance group resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group + # Name of the instance group resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::InstanceGroup] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::InstanceGroup] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_instance_group(project, region, instance_group, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/instanceGroups/{instanceGroup}', options) + command.response_representation = Google::Apis::ComputeAlpha::InstanceGroup::Representation + command.response_class = Google::Apis::ComputeAlpha::InstanceGroup + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of instance group resources contained within the specified + # region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionInstanceGroupList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_instance_groups(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/instanceGroups', options) + command.response_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupList::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionInstanceGroupList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group + # Name of the regional instance group for which we want to list the instances. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstancesRequest] region_instance_groups_list_instances_request_object + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_instance_group_instances(project, region, instance_group, region_instance_groups_list_instances_request_object = nil, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstancesRequest::Representation + command.request_object = region_instance_groups_list_instances_request_object + command.response_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionInstanceGroupsListInstances + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the named ports for the specified regional instance group. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group + # The name of the regional instance group where the named ports are updated. + # @param [Google::Apis::ComputeAlpha::RegionInstanceGroupsSetNamedPortsRequest] region_instance_groups_set_named_ports_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_region_instance_group_named_ports(project, region, instance_group, region_instance_groups_set_named_ports_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionInstanceGroupsSetNamedPortsRequest::Representation + command.request_object = region_instance_groups_set_named_ports_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroup'] = instance_group unless instance_group.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_region_instance_group_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified region-specific Operations resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] operation + # Name of the Operations resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_operation(project, region, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/operations/{operation}', options) + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the specified region-specific Operations resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] operation + # Name of the Operations resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_operation(project, region, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/operations/{operation}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of Operation resources contained within the specified region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::OperationList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::OperationList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_operations(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/operations', options) + command.response_representation = Google::Apis::ComputeAlpha::OperationList::Representation + command.response_class = Google::Apis::ComputeAlpha::OperationList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Region resource. Get a list of available regions by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Region] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Region] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region(project, region, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}', options) + command.response_representation = Google::Apis::ComputeAlpha::Region::Representation + command.response_class = Google::Apis::ComputeAlpha::Region + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of region resources available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RegionList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RegionList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_regions(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions', options) + command.response_representation = Google::Apis::ComputeAlpha::RegionList::Representation + command.response_class = Google::Apis::ComputeAlpha::RegionList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of routers. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RouterAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RouterAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_router_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/routers', options) + command.response_representation = Google::Apis::ComputeAlpha::RouterAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::RouterAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified Router resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] router + # Name of the Router resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_router(project, region, router, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/routers/{router}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['router'] = router unless router.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Router resource. Get a list of available routers by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] router + # Name of the Router resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Router] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Router] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_router(project, region, router, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/routers/{router}', options) + command.response_representation = Google::Apis::ComputeAlpha::Router::Representation + command.response_class = Google::Apis::ComputeAlpha::Router + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['router'] = router unless router.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves runtime information of the specified router. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] router + # Name of the Router resource to query. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RouterStatusResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RouterStatusResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_router_router_status(project, region, router, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/routers/{router}/getRouterStatus', options) + command.response_representation = Google::Apis::ComputeAlpha::RouterStatusResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::RouterStatusResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['router'] = router unless router.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Router resource in the specified project and region using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::Router] router_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_router(project, region, router_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/routers', options) + command.request_representation = Google::Apis::ComputeAlpha::Router::Representation + command.request_object = router_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of Router resources available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RouterList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RouterList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_routers(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/routers', options) + command.response_representation = Google::Apis::ComputeAlpha::RouterList::Representation + command.response_class = Google::Apis::ComputeAlpha::RouterList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Patches the specified Router resource with the data included in the request. + # This method supports PATCH semantics and uses JSON merge patch format and + # processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] router + # Name of the Router resource to patch. + # @param [Google::Apis::ComputeAlpha::Router] router_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_router(project, region, router, router_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/regions/{region}/routers/{router}', options) + command.request_representation = Google::Apis::ComputeAlpha::Router::Representation + command.request_object = router_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['router'] = router unless router.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Preview fields auto-generated during router create and update operations. + # Calling this method does NOT create or update the router. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] router + # Name of the Router resource to query. + # @param [Google::Apis::ComputeAlpha::Router] router_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RoutersPreviewResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RoutersPreviewResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def preview_router(project, region, router, router_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/routers/{router}/preview', options) + command.request_representation = Google::Apis::ComputeAlpha::Router::Representation + command.request_object = router_object + command.response_representation = Google::Apis::ComputeAlpha::RoutersPreviewResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::RoutersPreviewResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['router'] = router unless router.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_router_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/routers/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified Router resource with the data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] router + # Name of the Router resource to update. + # @param [Google::Apis::ComputeAlpha::Router] router_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_router(project, region, router, router_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/regions/{region}/routers/{router}', options) + command.request_representation = Google::Apis::ComputeAlpha::Router::Representation + command.request_object = router_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['router'] = router unless router.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified Route resource. + # @param [String] project + # Project ID for this request. + # @param [String] route + # Name of the Route resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_route(project, route, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/routes/{route}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['route'] = route unless route.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Route resource. Get a list of available routes by making + # a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] route + # Name of the Route resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Route] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Route] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_route(project, route, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/routes/{route}', options) + command.response_representation = Google::Apis::ComputeAlpha::Route::Representation + command.response_class = Google::Apis::ComputeAlpha::Route + command.params['project'] = project unless project.nil? + command.params['route'] = route unless route.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Route resource in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::Route] route_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_route(project, route_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/routes', options) + command.request_representation = Google::Apis::ComputeAlpha::Route::Representation + command.request_object = route_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of Route resources available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::RouteList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::RouteList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_routes(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/routes', options) + command.response_representation = Google::Apis::ComputeAlpha::RouteList::Representation + command.response_class = Google::Apis::ComputeAlpha::RouteList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_route_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/routes/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified policy. + # @param [String] project + # Project ID for this request. + # @param [String] security_policy + # Name of the security policy to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_security_policy(project, security_policy, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/securityPolicies/{securityPolicy}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['securityPolicy'] = security_policy unless security_policy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all of the ordered rules present in a single specified policy. + # @param [String] project + # Project ID for this request. + # @param [String] security_policy + # Name of the security policy to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SecurityPolicy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SecurityPolicy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_security_policy(project, security_policy, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/securityPolicies/{securityPolicy}', options) + command.response_representation = Google::Apis::ComputeAlpha::SecurityPolicy::Representation + command.response_class = Google::Apis::ComputeAlpha::SecurityPolicy + command.params['project'] = project unless project.nil? + command.params['securityPolicy'] = security_policy unless security_policy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new policy in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::SecurityPolicy] security_policy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_security_policy(project, security_policy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/securityPolicies', options) + command.request_representation = Google::Apis::ComputeAlpha::SecurityPolicy::Representation + command.request_object = security_policy_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all the policies that have been configured for the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SecurityPoliciesList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SecurityPoliciesList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_security_policies(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/securityPolicies', options) + command.response_representation = Google::Apis::ComputeAlpha::SecurityPoliciesList::Representation + command.response_class = Google::Apis::ComputeAlpha::SecurityPoliciesList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Patches the specified policy with the data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] security_policy + # Name of the security policy to update. + # @param [Google::Apis::ComputeAlpha::SecurityPolicy] security_policy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_security_policy(project, security_policy, security_policy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/securityPolicies/{securityPolicy}', options) + command.request_representation = Google::Apis::ComputeAlpha::SecurityPolicy::Representation + command.request_object = security_policy_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['securityPolicy'] = security_policy unless security_policy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_security_policy_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/securityPolicies/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # For more information, see Deleting snaphots. + # @param [String] project + # Project ID for this request. + # @param [String] snapshot + # Name of the Snapshot resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_snapshot(project, snapshot, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/snapshots/{snapshot}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['snapshot'] = snapshot unless snapshot.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Snapshot resource. Get a list of available snapshots by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] snapshot + # Name of the Snapshot resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Snapshot] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Snapshot] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_snapshot(project, snapshot, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/snapshots/{snapshot}', options) + command.response_representation = Google::Apis::ComputeAlpha::Snapshot::Representation + command.response_class = Google::Apis::ComputeAlpha::Snapshot + command.params['project'] = project unless project.nil? + command.params['snapshot'] = snapshot unless snapshot.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_snapshot_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/snapshots/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of Snapshot resources contained within the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SnapshotList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SnapshotList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_snapshots(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/snapshots', options) + command.response_representation = Google::Apis::ComputeAlpha::SnapshotList::Representation + command.response_class = Google::Apis::ComputeAlpha::SnapshotList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_snapshot_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/snapshots/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on a snapshot. To learn more about labels, read the Labeling + # Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::GlobalSetLabelsRequest] global_set_labels_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_snapshot_labels(project, resource, global_set_labels_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/snapshots/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::GlobalSetLabelsRequest::Representation + command.request_object = global_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_snapshot_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/snapshots/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified SslCertificate resource. + # @param [String] project + # Project ID for this request. + # @param [String] ssl_certificate + # Name of the SslCertificate resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_ssl_certificate(project, ssl_certificate, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/sslCertificates/{sslCertificate}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['sslCertificate'] = ssl_certificate unless ssl_certificate.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified SslCertificate resource. Get a list of available SSL + # certificates by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] ssl_certificate + # Name of the SslCertificate resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SslCertificate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SslCertificate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_ssl_certificate(project, ssl_certificate, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/sslCertificates/{sslCertificate}', options) + command.response_representation = Google::Apis::ComputeAlpha::SslCertificate::Representation + command.response_class = Google::Apis::ComputeAlpha::SslCertificate + command.params['project'] = project unless project.nil? + command.params['sslCertificate'] = ssl_certificate unless ssl_certificate.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a SslCertificate resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::SslCertificate] ssl_certificate_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_ssl_certificate(project, ssl_certificate_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/sslCertificates', options) + command.request_representation = Google::Apis::ComputeAlpha::SslCertificate::Representation + command.request_object = ssl_certificate_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of SslCertificate resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SslCertificateList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SslCertificateList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_ssl_certificates(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/sslCertificates', options) + command.response_representation = Google::Apis::ComputeAlpha::SslCertificateList::Representation + command.response_class = Google::Apis::ComputeAlpha::SslCertificateList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_ssl_certificate_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/sslCertificates/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of subnetworks. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SubnetworkAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SubnetworkAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_subnetwork_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/subnetworks', options) + command.response_representation = Google::Apis::ComputeAlpha::SubnetworkAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::SubnetworkAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified subnetwork. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] subnetwork + # Name of the Subnetwork resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_subnetwork(project, region, subnetwork, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/subnetworks/{subnetwork}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['subnetwork'] = subnetwork unless subnetwork.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Expands the IP CIDR range of the subnetwork to a specified value. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] subnetwork + # Name of the Subnetwork resource to update. + # @param [Google::Apis::ComputeAlpha::SubnetworksExpandIpCidrRangeRequest] subnetworks_expand_ip_cidr_range_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def expand_subnetwork_ip_cidr_range(project, region, subnetwork, subnetworks_expand_ip_cidr_range_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange', options) + command.request_representation = Google::Apis::ComputeAlpha::SubnetworksExpandIpCidrRangeRequest::Representation + command.request_object = subnetworks_expand_ip_cidr_range_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['subnetwork'] = subnetwork unless subnetwork.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified subnetwork. Get a list of available subnetworks list() + # request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] subnetwork + # Name of the Subnetwork resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Subnetwork] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Subnetwork] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_subnetwork(project, region, subnetwork, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/subnetworks/{subnetwork}', options) + command.response_representation = Google::Apis::ComputeAlpha::Subnetwork::Representation + command.response_class = Google::Apis::ComputeAlpha::Subnetwork + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['subnetwork'] = subnetwork unless subnetwork.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_subnetwork_iam_policy(project, region, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/subnetworks/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a subnetwork in the specified project using the data included in the + # request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::Subnetwork] subnetwork_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_subnetwork(project, region, subnetwork_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/subnetworks', options) + command.request_representation = Google::Apis::ComputeAlpha::Subnetwork::Representation + command.request_object = subnetwork_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of subnetworks available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::SubnetworkList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::SubnetworkList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_subnetworks(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/subnetworks', options) + command.response_representation = Google::Apis::ComputeAlpha::SubnetworkList::Representation + command.response_class = Google::Apis::ComputeAlpha::SubnetworkList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Patches the specified subnetwork with the data included in the request. Only + # the following fields within the subnetwork resource can be specified in the + # request: secondary_ip_range and allow_subnet_cidr_routes_overlap. It is also + # mandatory to specify the current fingeprint of the subnetwork resource being + # patched. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] subnetwork + # Name of the Subnetwork resource to patch. + # @param [Google::Apis::ComputeAlpha::Subnetwork] subnetwork_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_subnetwork(project, region, subnetwork, subnetwork_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/regions/{region}/subnetworks/{subnetwork}', options) + command.request_representation = Google::Apis::ComputeAlpha::Subnetwork::Representation + command.request_object = subnetwork_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['subnetwork'] = subnetwork unless subnetwork.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_subnetwork_iam_policy(project, region, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/subnetworks/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::ComputeAlpha::Policy::Representation + command.response_class = Google::Apis::ComputeAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Set whether VMs in this subnet can access Google services without assigning + # external IP addresses through Private Google Access. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] subnetwork + # Name of the Subnetwork resource. + # @param [Google::Apis::ComputeAlpha::SubnetworksSetPrivateIpGoogleAccessRequest] subnetworks_set_private_ip_google_access_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_subnetwork_private_ip_google_access(project, region, subnetwork, subnetworks_set_private_ip_google_access_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess', options) + command.request_representation = Google::Apis::ComputeAlpha::SubnetworksSetPrivateIpGoogleAccessRequest::Representation + command.request_object = subnetworks_set_private_ip_google_access_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['subnetwork'] = subnetwork unless subnetwork.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_subnetwork_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/subnetworks/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified TargetHttpProxy resource. + # @param [String] project + # Project ID for this request. + # @param [String] target_http_proxy + # Name of the TargetHttpProxy resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_target_http_proxy(project, target_http_proxy, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/targetHttpProxies/{targetHttpProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetHttpProxy'] = target_http_proxy unless target_http_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified TargetHttpProxy resource. Get a list of available target + # HTTP proxies by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] target_http_proxy + # Name of the TargetHttpProxy resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetHttpProxy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetHttpProxy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_http_proxy(project, target_http_proxy, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetHttpProxies/{targetHttpProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetHttpProxy::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetHttpProxy + command.params['project'] = project unless project.nil? + command.params['targetHttpProxy'] = target_http_proxy unless target_http_proxy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a TargetHttpProxy resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::TargetHttpProxy] target_http_proxy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_target_http_proxy(project, target_http_proxy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetHttpProxies', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetHttpProxy::Representation + command.request_object = target_http_proxy_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of TargetHttpProxy resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetHttpProxyList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetHttpProxyList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_target_http_proxies(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetHttpProxies', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetHttpProxyList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetHttpProxyList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the URL map for TargetHttpProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_http_proxy + # Name of the TargetHttpProxy to set a URL map for. + # @param [Google::Apis::ComputeAlpha::UrlMapReference] url_map_reference_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_http_proxy_url_map(project, target_http_proxy, url_map_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap', options) + command.request_representation = Google::Apis::ComputeAlpha::UrlMapReference::Representation + command.request_object = url_map_reference_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetHttpProxy'] = target_http_proxy unless target_http_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_target_http_proxy_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetHttpProxies/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified TargetHttpsProxy resource. + # @param [String] project + # Project ID for this request. + # @param [String] target_https_proxy + # Name of the TargetHttpsProxy resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_target_https_proxy(project, target_https_proxy, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/targetHttpsProxies/{targetHttpsProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetHttpsProxy'] = target_https_proxy unless target_https_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified TargetHttpsProxy resource. Get a list of available + # target HTTPS proxies by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] target_https_proxy + # Name of the TargetHttpsProxy resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetHttpsProxy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetHttpsProxy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_https_proxy(project, target_https_proxy, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetHttpsProxies/{targetHttpsProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetHttpsProxy::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetHttpsProxy + command.params['project'] = project unless project.nil? + command.params['targetHttpsProxy'] = target_https_proxy unless target_https_proxy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a TargetHttpsProxy resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::TargetHttpsProxy] target_https_proxy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_target_https_proxy(project, target_https_proxy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetHttpsProxies', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetHttpsProxy::Representation + command.request_object = target_https_proxy_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of TargetHttpsProxy resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetHttpsProxyList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetHttpsProxyList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_target_https_proxies(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetHttpsProxies', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetHttpsProxyList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetHttpsProxyList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the QUIC override policy for TargetHttpsProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_https_proxy + # Name of the TargetHttpsProxy resource to set the QUIC override policy for. The + # name should conform to RFC1035. + # @param [Google::Apis::ComputeAlpha::TargetHttpsProxiesSetQuicOverrideRequest] target_https_proxies_set_quic_override_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_https_proxy_quic_override(project, target_https_proxy, target_https_proxies_set_quic_override_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetHttpsProxiesSetQuicOverrideRequest::Representation + command.request_object = target_https_proxies_set_quic_override_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetHttpsProxy'] = target_https_proxy unless target_https_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Replaces SslCertificates for TargetHttpsProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_https_proxy + # Name of the TargetHttpsProxy resource to set an SslCertificates resource for. + # @param [Google::Apis::ComputeAlpha::TargetHttpsProxiesSetSslCertificatesRequest] target_https_proxies_set_ssl_certificates_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_https_proxy_ssl_certificates(project, target_https_proxy, target_https_proxies_set_ssl_certificates_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetHttpsProxiesSetSslCertificatesRequest::Representation + command.request_object = target_https_proxies_set_ssl_certificates_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetHttpsProxy'] = target_https_proxy unless target_https_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the URL map for TargetHttpsProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_https_proxy + # Name of the TargetHttpsProxy resource whose URL map is to be set. + # @param [Google::Apis::ComputeAlpha::UrlMapReference] url_map_reference_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_https_proxy_url_map(project, target_https_proxy, url_map_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap', options) + command.request_representation = Google::Apis::ComputeAlpha::UrlMapReference::Representation + command.request_object = url_map_reference_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetHttpsProxy'] = target_https_proxy unless target_https_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_target_https_proxy_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetHttpsProxies/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of target instances. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetInstanceAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetInstanceAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_target_instance_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/targetInstances', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetInstanceAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetInstanceAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified TargetInstance resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone scoping this request. + # @param [String] target_instance + # Name of the TargetInstance resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_target_instance(project, zone, target_instance, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/targetInstances/{targetInstance}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['targetInstance'] = target_instance unless target_instance.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified TargetInstance resource. Get a list of available target + # instances by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone scoping this request. + # @param [String] target_instance + # Name of the TargetInstance resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetInstance] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetInstance] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_instance(project, zone, target_instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/targetInstances/{targetInstance}', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetInstance::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetInstance + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['targetInstance'] = target_instance unless target_instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a TargetInstance resource in the specified project and zone using the + # data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone scoping this request. + # @param [Google::Apis::ComputeAlpha::TargetInstance] target_instance_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_target_instance(project, zone, target_instance_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/targetInstances', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetInstance::Representation + command.request_object = target_instance_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of TargetInstance resources available to the specified + # project and zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetInstanceList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetInstanceList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_target_instances(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/targetInstances', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetInstanceList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetInstanceList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # The name of the zone for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_target_instance_iam_permissions(project, zone, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds health check URLs to a target pool. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] target_pool + # Name of the target pool to add a health check to. + # @param [Google::Apis::ComputeAlpha::TargetPoolsAddHealthCheckRequest] target_pools_add_health_check_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_target_pool_health_check(project, region, target_pool, target_pools_add_health_check_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetPoolsAddHealthCheckRequest::Representation + command.request_object = target_pools_add_health_check_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds an instance to a target pool. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] target_pool + # Name of the TargetPool resource to add instances to. + # @param [Google::Apis::ComputeAlpha::TargetPoolsAddInstanceRequest] target_pools_add_instance_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def add_target_pool_instance(project, region, target_pool, target_pools_add_instance_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools/{targetPool}/addInstance', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetPoolsAddInstanceRequest::Representation + command.request_object = target_pools_add_instance_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of target pools. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetPoolAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetPoolAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_target_pool_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/targetPools', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetPoolAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetPoolAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified target pool. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] target_pool + # Name of the TargetPool resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_target_pool(project, region, target_pool, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/targetPools/{targetPool}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified target pool. Get a list of available target pools by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] target_pool + # Name of the TargetPool resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetPool] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetPool] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_pool(project, region, target_pool, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/targetPools/{targetPool}', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetPool::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetPool + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the most recent health check results for each IP for the instance that is + # referenced by the given target pool. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] target_pool + # Name of the TargetPool resource to which the queried instance belongs. + # @param [Google::Apis::ComputeAlpha::InstanceReference] instance_reference_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetPoolInstanceHealth] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetPoolInstanceHealth] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_pool_health(project, region, target_pool, instance_reference_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools/{targetPool}/getHealth', options) + command.request_representation = Google::Apis::ComputeAlpha::InstanceReference::Representation + command.request_object = instance_reference_object + command.response_representation = Google::Apis::ComputeAlpha::TargetPoolInstanceHealth::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetPoolInstanceHealth + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a target pool in the specified project and region using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [Google::Apis::ComputeAlpha::TargetPool] target_pool_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_target_pool(project, region, target_pool_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetPool::Representation + command.request_object = target_pool_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of target pools available to the specified project and region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetPoolList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetPoolList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_target_pools(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/targetPools', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetPoolList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetPoolList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes health check URL from a target pool. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] target_pool + # Name of the target pool to remove health checks from. + # @param [Google::Apis::ComputeAlpha::TargetPoolsRemoveHealthCheckRequest] target_pools_remove_health_check_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_target_pool_health_check(project, region, target_pool, target_pools_remove_health_check_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetPoolsRemoveHealthCheckRequest::Representation + command.request_object = target_pools_remove_health_check_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Removes instance URL from a target pool. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] target_pool + # Name of the TargetPool resource to remove instances from. + # @param [Google::Apis::ComputeAlpha::TargetPoolsRemoveInstanceRequest] target_pools_remove_instance_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def remove_target_pool_instance(project, region, target_pool, target_pools_remove_instance_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools/{targetPool}/removeInstance', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetPoolsRemoveInstanceRequest::Representation + command.request_object = target_pools_remove_instance_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes a backup target pool's configurations. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] target_pool + # Name of the TargetPool resource to set a backup pool for. + # @param [Google::Apis::ComputeAlpha::TargetReference] target_reference_object + # @param [Float] failover_ratio + # New failoverRatio value for the target pool. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_pool_backup(project, region, target_pool, target_reference_object = nil, failover_ratio: nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools/{targetPool}/setBackup', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetReference::Representation + command.request_object = target_reference_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetPool'] = target_pool unless target_pool.nil? + command.query['failoverRatio'] = failover_ratio unless failover_ratio.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_target_pool_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetPools/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified TargetSslProxy resource. + # @param [String] project + # Project ID for this request. + # @param [String] target_ssl_proxy + # Name of the TargetSslProxy resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_target_ssl_proxy(project, target_ssl_proxy, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/targetSslProxies/{targetSslProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetSslProxy'] = target_ssl_proxy unless target_ssl_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified TargetSslProxy resource. Get a list of available target + # SSL proxies by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] target_ssl_proxy + # Name of the TargetSslProxy resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetSslProxy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetSslProxy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_ssl_proxy(project, target_ssl_proxy, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetSslProxies/{targetSslProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetSslProxy::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetSslProxy + command.params['project'] = project unless project.nil? + command.params['targetSslProxy'] = target_ssl_proxy unless target_ssl_proxy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a TargetSslProxy resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::TargetSslProxy] target_ssl_proxy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_target_ssl_proxy(project, target_ssl_proxy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetSslProxies', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetSslProxy::Representation + command.request_object = target_ssl_proxy_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of TargetSslProxy resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetSslProxyList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetSslProxyList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_target_ssl_proxies(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetSslProxies', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetSslProxyList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetSslProxyList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the BackendService for TargetSslProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_ssl_proxy + # Name of the TargetSslProxy resource whose BackendService resource is to be set. + # @param [Google::Apis::ComputeAlpha::TargetSslProxiesSetBackendServiceRequest] target_ssl_proxies_set_backend_service_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_ssl_proxy_backend_service(project, target_ssl_proxy, target_ssl_proxies_set_backend_service_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetSslProxies/{targetSslProxy}/setBackendService', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetSslProxiesSetBackendServiceRequest::Representation + command.request_object = target_ssl_proxies_set_backend_service_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetSslProxy'] = target_ssl_proxy unless target_ssl_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the ProxyHeaderType for TargetSslProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_ssl_proxy + # Name of the TargetSslProxy resource whose ProxyHeader is to be set. + # @param [Google::Apis::ComputeAlpha::TargetSslProxiesSetProxyHeaderRequest] target_ssl_proxies_set_proxy_header_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_ssl_proxy_proxy_header(project, target_ssl_proxy, target_ssl_proxies_set_proxy_header_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetSslProxiesSetProxyHeaderRequest::Representation + command.request_object = target_ssl_proxies_set_proxy_header_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetSslProxy'] = target_ssl_proxy unless target_ssl_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes SslCertificates for TargetSslProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_ssl_proxy + # Name of the TargetSslProxy resource whose SslCertificate resource is to be set. + # @param [Google::Apis::ComputeAlpha::TargetSslProxiesSetSslCertificatesRequest] target_ssl_proxies_set_ssl_certificates_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_ssl_proxy_ssl_certificates(project, target_ssl_proxy, target_ssl_proxies_set_ssl_certificates_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetSslProxiesSetSslCertificatesRequest::Representation + command.request_object = target_ssl_proxies_set_ssl_certificates_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetSslProxy'] = target_ssl_proxy unless target_ssl_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_target_ssl_proxy_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetSslProxies/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified TargetTcpProxy resource. + # @param [String] project + # Project ID for this request. + # @param [String] target_tcp_proxy + # Name of the TargetTcpProxy resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_target_tcp_proxy(project, target_tcp_proxy, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/targetTcpProxies/{targetTcpProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetTcpProxy'] = target_tcp_proxy unless target_tcp_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified TargetTcpProxy resource. Get a list of available target + # TCP proxies by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] target_tcp_proxy + # Name of the TargetTcpProxy resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetTcpProxy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetTcpProxy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_tcp_proxy(project, target_tcp_proxy, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetTcpProxies/{targetTcpProxy}', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetTcpProxy::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetTcpProxy + command.params['project'] = project unless project.nil? + command.params['targetTcpProxy'] = target_tcp_proxy unless target_tcp_proxy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a TargetTcpProxy resource in the specified project using the data + # included in the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::TargetTcpProxy] target_tcp_proxy_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_target_tcp_proxy(project, target_tcp_proxy_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetTcpProxies', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetTcpProxy::Representation + command.request_object = target_tcp_proxy_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of TargetTcpProxy resources available to the specified + # project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetTcpProxyList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetTcpProxyList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_target_tcp_proxies(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/targetTcpProxies', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetTcpProxyList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetTcpProxyList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the BackendService for TargetTcpProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_tcp_proxy + # Name of the TargetTcpProxy resource whose BackendService resource is to be set. + # @param [Google::Apis::ComputeAlpha::TargetTcpProxiesSetBackendServiceRequest] target_tcp_proxies_set_backend_service_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_tcp_proxy_backend_service(project, target_tcp_proxy, target_tcp_proxies_set_backend_service_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetTcpProxiesSetBackendServiceRequest::Representation + command.request_object = target_tcp_proxies_set_backend_service_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetTcpProxy'] = target_tcp_proxy unless target_tcp_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Changes the ProxyHeaderType for TargetTcpProxy. + # @param [String] project + # Project ID for this request. + # @param [String] target_tcp_proxy + # Name of the TargetTcpProxy resource whose ProxyHeader is to be set. + # @param [Google::Apis::ComputeAlpha::TargetTcpProxiesSetProxyHeaderRequest] target_tcp_proxies_set_proxy_header_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_target_tcp_proxy_proxy_header(project, target_tcp_proxy, target_tcp_proxies_set_proxy_header_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetTcpProxiesSetProxyHeaderRequest::Representation + command.request_object = target_tcp_proxies_set_proxy_header_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['targetTcpProxy'] = target_tcp_proxy unless target_tcp_proxy.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_target_tcp_proxy_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/targetTcpProxies/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of target VPN gateways. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_target_vpn_gateway_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/targetVpnGateways', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetVpnGatewayAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified target VPN gateway. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] target_vpn_gateway + # Name of the target VPN gateway to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_target_vpn_gateway(project, region, target_vpn_gateway, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetVpnGateway'] = target_vpn_gateway unless target_vpn_gateway.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified target VPN gateway. Get a list of available target VPN + # gateways by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] target_vpn_gateway + # Name of the target VPN gateway to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetVpnGateway] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetVpnGateway] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_target_vpn_gateway(project, region, target_vpn_gateway, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetVpnGateway::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetVpnGateway + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['targetVpnGateway'] = target_vpn_gateway unless target_vpn_gateway.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a target VPN gateway in the specified project and region using the + # data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::TargetVpnGateway] target_vpn_gateway_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_target_vpn_gateway(project, region, target_vpn_gateway_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetVpnGateways', options) + command.request_representation = Google::Apis::ComputeAlpha::TargetVpnGateway::Representation + command.request_object = target_vpn_gateway_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of target VPN gateways available to the specified project and + # region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TargetVpnGatewayList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TargetVpnGatewayList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_target_vpn_gateways(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/targetVpnGateways', options) + command.response_representation = Google::Apis::ComputeAlpha::TargetVpnGatewayList::Representation + command.response_class = Google::Apis::ComputeAlpha::TargetVpnGatewayList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_target_vpn_gateway_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/targetVpnGateways/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified UrlMap resource. + # @param [String] project + # Project ID for this request. + # @param [String] url_map + # Name of the UrlMap resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_url_map(project, url_map, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/urlMaps/{urlMap}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['urlMap'] = url_map unless url_map.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified UrlMap resource. Get a list of available URL maps by + # making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] url_map + # Name of the UrlMap resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::UrlMap] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::UrlMap] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_url_map(project, url_map, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/urlMaps/{urlMap}', options) + command.response_representation = Google::Apis::ComputeAlpha::UrlMap::Representation + command.response_class = Google::Apis::ComputeAlpha::UrlMap + command.params['project'] = project unless project.nil? + command.params['urlMap'] = url_map unless url_map.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a UrlMap resource in the specified project using the data included in + # the request. + # @param [String] project + # Project ID for this request. + # @param [Google::Apis::ComputeAlpha::UrlMap] url_map_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_url_map(project, url_map_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/urlMaps', options) + command.request_representation = Google::Apis::ComputeAlpha::UrlMap::Representation + command.request_object = url_map_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Initiates a cache invalidation operation, invalidating the specified path, + # scoped to the specified UrlMap. + # @param [String] project + # Project ID for this request. + # @param [String] url_map + # Name of the UrlMap scoping this request. + # @param [Google::Apis::ComputeAlpha::CacheInvalidationRule] cache_invalidation_rule_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def invalidate_url_map_cache(project, url_map, cache_invalidation_rule_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/urlMaps/{urlMap}/invalidateCache', options) + command.request_representation = Google::Apis::ComputeAlpha::CacheInvalidationRule::Representation + command.request_object = cache_invalidation_rule_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['urlMap'] = url_map unless url_map.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of UrlMap resources available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::UrlMapList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::UrlMapList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_url_maps(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/urlMaps', options) + command.response_representation = Google::Apis::ComputeAlpha::UrlMapList::Representation + command.response_class = Google::Apis::ComputeAlpha::UrlMapList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Patches the specified UrlMap resource with the data included in the request. + # This method supports PATCH semantics and uses the JSON merge patch format and + # processing rules. + # @param [String] project + # Project ID for this request. + # @param [String] url_map + # Name of the UrlMap resource to patch. + # @param [Google::Apis::ComputeAlpha::UrlMap] url_map_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_url_map(project, url_map, url_map_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/urlMaps/{urlMap}', options) + command.request_representation = Google::Apis::ComputeAlpha::UrlMap::Representation + command.request_object = url_map_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['urlMap'] = url_map unless url_map.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_url_map_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/urlMaps/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the specified UrlMap resource with the data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] url_map + # Name of the UrlMap resource to update. + # @param [Google::Apis::ComputeAlpha::UrlMap] url_map_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_url_map(project, url_map, url_map_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/urlMaps/{urlMap}', options) + command.request_representation = Google::Apis::ComputeAlpha::UrlMap::Representation + command.request_object = url_map_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['urlMap'] = url_map unless url_map.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] project + # Project ID for this request. + # @param [String] url_map + # Name of the UrlMap resource to be validated as. + # @param [Google::Apis::ComputeAlpha::UrlMapsValidateRequest] url_maps_validate_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::UrlMapsValidateResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::UrlMapsValidateResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def validate_url_map(project, url_map, url_maps_validate_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/urlMaps/{urlMap}/validate', options) + command.request_representation = Google::Apis::ComputeAlpha::UrlMapsValidateRequest::Representation + command.request_object = url_maps_validate_request_object + command.response_representation = Google::Apis::ComputeAlpha::UrlMapsValidateResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::UrlMapsValidateResponse + command.params['project'] = project unless project.nil? + command.params['urlMap'] = url_map unless url_map.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an aggregated list of VPN tunnels. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::VpnTunnelAggregatedList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::VpnTunnelAggregatedList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def aggregated_vpn_tunnel_list(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/aggregated/vpnTunnels', options) + command.response_representation = Google::Apis::ComputeAlpha::VpnTunnelAggregatedList::Representation + command.response_class = Google::Apis::ComputeAlpha::VpnTunnelAggregatedList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified VpnTunnel resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] vpn_tunnel + # Name of the VpnTunnel resource to delete. + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_vpn_tunnel(project, region, vpn_tunnel, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/regions/{region}/vpnTunnels/{vpnTunnel}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['vpnTunnel'] = vpn_tunnel unless vpn_tunnel.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified VpnTunnel resource. Get a list of available VPN tunnels + # by making a list() request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] vpn_tunnel + # Name of the VpnTunnel resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::VpnTunnel] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::VpnTunnel] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_vpn_tunnel(project, region, vpn_tunnel, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/vpnTunnels/{vpnTunnel}', options) + command.response_representation = Google::Apis::ComputeAlpha::VpnTunnel::Representation + command.response_class = Google::Apis::ComputeAlpha::VpnTunnel + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['vpnTunnel'] = vpn_tunnel unless vpn_tunnel.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a VpnTunnel resource in the specified project and region using the + # data included in the request. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [Google::Apis::ComputeAlpha::VpnTunnel] vpn_tunnel_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_vpn_tunnel(project, region, vpn_tunnel_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/vpnTunnels', options) + command.request_representation = Google::Apis::ComputeAlpha::VpnTunnel::Representation + command.request_object = vpn_tunnel_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of VpnTunnel resources contained in the specified project and + # region. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::VpnTunnelList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::VpnTunnelList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_vpn_tunnels(project, region, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/regions/{region}/vpnTunnels', options) + command.response_representation = Google::Apis::ComputeAlpha::VpnTunnelList::Representation + command.response_class = Google::Apis::ComputeAlpha::VpnTunnelList + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the labels on a VpnTunnel. To learn more about labels, read the Labeling + # Resources documentation. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::RegionSetLabelsRequest] region_set_labels_request_object + # @param [String] request_id + # An optional request ID to identify requests. Specify a unique request ID so + # that if you must retry your request, the server will know to ignore the + # request if it has already been completed. + # For example, consider a situation where you make an initial request and the + # request times out. If you make the request again with the same request ID, the + # server can check if original operation with the same request ID was received, + # and if so, will ignore the second request. This prevents clients from + # accidentally creating duplicate commitments. + # The request ID must be a valid UUID with the exception that zero UUID is not + # supported (00000000-0000-0000-0000-000000000000). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_vpn_tunnel_labels(project, region, resource, region_set_labels_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/vpnTunnels/{resource}/setLabels', options) + command.request_representation = Google::Apis::ComputeAlpha::RegionSetLabelsRequest::Representation + command.request_object = region_set_labels_request_object + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] region + # The name of the region for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::ComputeAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_vpn_tunnel_iam_permissions(project, region, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::ComputeAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::ComputeAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::ComputeAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the specified zone-specific Operations resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] operation + # Name of the Operations resource to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_zone_operation(project, zone, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/zones/{zone}/operations/{operation}', options) + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the specified zone-specific Operations resource. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for this request. + # @param [String] operation + # Name of the Operations resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_zone_operation(project, zone, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/operations/{operation}', options) + command.response_representation = Google::Apis::ComputeAlpha::Operation::Representation + command.response_class = Google::Apis::ComputeAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of Operation resources contained within the specified zone. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone for request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::OperationList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::OperationList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_zone_operations(project, zone, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}/operations', options) + command.response_representation = Google::Apis::ComputeAlpha::OperationList::Representation + command.response_class = Google::Apis::ComputeAlpha::OperationList + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the specified Zone resource. Get a list of available zones by making a + # list() request. + # @param [String] project + # Project ID for this request. + # @param [String] zone + # Name of the zone resource to return. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::Zone] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::Zone] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_zone(project, zone, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones/{zone}', options) + command.response_representation = Google::Apis::ComputeAlpha::Zone::Representation + command.response_class = Google::Apis::ComputeAlpha::Zone + command.params['project'] = project unless project.nil? + command.params['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the list of Zone resources available to the specified project. + # @param [String] project + # Project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeAlpha::ZoneList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeAlpha::ZoneList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_zones(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/zones', options) + command.response_representation = Google::Apis::ComputeAlpha::ZoneList::Representation + command.response_class = Google::Apis::ComputeAlpha::ZoneList + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/container_v1beta1.rb b/generated/google/apis/container_v1beta1.rb new file mode 100644 index 000000000..979c7f9ad --- /dev/null +++ b/generated/google/apis/container_v1beta1.rb @@ -0,0 +1,35 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/container_v1beta1/service.rb' +require 'google/apis/container_v1beta1/classes.rb' +require 'google/apis/container_v1beta1/representations.rb' + +module Google + module Apis + # Google Container Engine API + # + # The Google Container Engine API is used for building and managing container + # based applications, powered by the open source Kubernetes technology. + # + # @see https://cloud.google.com/container-engine/ + module ContainerV1beta1 + VERSION = 'V1beta1' + REVISION = '20170814' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + end + end +end diff --git a/generated/google/apis/container_v1beta1/classes.rb b/generated/google/apis/container_v1beta1/classes.rb new file mode 100644 index 000000000..5f329fddc --- /dev/null +++ b/generated/google/apis/container_v1beta1/classes.rb @@ -0,0 +1,1900 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ContainerV1beta1 + + # AcceleratorConfig represents a Hardware Accelerator request. + class AcceleratorConfig + include Google::Apis::Core::Hashable + + # The number of the accelerator cards exposed to an instance. + # Corresponds to the JSON property `acceleratorCount` + # @return [Fixnum] + attr_accessor :accelerator_count + + # The accelerator type resource name. List of supported accelerators + # [here](/compute/docs/gpus/#Introduction) + # Corresponds to the JSON property `acceleratorType` + # @return [String] + attr_accessor :accelerator_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @accelerator_count = args[:accelerator_count] if args.key?(:accelerator_count) + @accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type) + end + end + + # Configuration for the addons that can be automatically spun up in the + # cluster, enabling additional functionality. + class AddonsConfig + include Google::Apis::Core::Hashable + + # Configuration options for the horizontal pod autoscaling feature, which + # increases or decreases the number of replica pods a replication controller + # has based on the resource usage of the existing pods. + # Corresponds to the JSON property `horizontalPodAutoscaling` + # @return [Google::Apis::ContainerV1beta1::HorizontalPodAutoscaling] + attr_accessor :horizontal_pod_autoscaling + + # Configuration options for the HTTP (L7) load balancing controller addon, + # which makes it easy to set up HTTP load balancers for services in a cluster. + # Corresponds to the JSON property `httpLoadBalancing` + # @return [Google::Apis::ContainerV1beta1::HttpLoadBalancing] + attr_accessor :http_load_balancing + + # Configuration for the Kubernetes Dashboard. + # Corresponds to the JSON property `kubernetesDashboard` + # @return [Google::Apis::ContainerV1beta1::KubernetesDashboard] + attr_accessor :kubernetes_dashboard + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @horizontal_pod_autoscaling = args[:horizontal_pod_autoscaling] if args.key?(:horizontal_pod_autoscaling) + @http_load_balancing = args[:http_load_balancing] if args.key?(:http_load_balancing) + @kubernetes_dashboard = args[:kubernetes_dashboard] if args.key?(:kubernetes_dashboard) + end + end + + # AutoUpgradeOptions defines the set of options for the user to control how + # the Auto Upgrades will proceed. + class AutoUpgradeOptions + include Google::Apis::Core::Hashable + + # [Output only] This field is set when upgrades are about to commence + # with the approximate start time for the upgrades, in + # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. + # Corresponds to the JSON property `autoUpgradeStartTime` + # @return [String] + attr_accessor :auto_upgrade_start_time + + # [Output only] This field is set when upgrades are about to commence + # with the description of the upgrade. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_upgrade_start_time = args[:auto_upgrade_start_time] if args.key?(:auto_upgrade_start_time) + @description = args[:description] if args.key?(:description) + end + end + + # CancelOperationRequest cancels a single operation. + class CancelOperationRequest + include Google::Apis::Core::Hashable + + # The name (project, location, operation id) of the operation to cancel. + # Specified in the format 'projects/*/locations/*/operations/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The server-assigned `name` of the operation. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the operation resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # CidrBlock contains an optional name and one CIDR block. + class CidrBlock + include Google::Apis::Core::Hashable + + # cidr_block must be specified in CIDR notation. + # Corresponds to the JSON property `cidrBlock` + # @return [String] + attr_accessor :cidr_block + + # display_name is an optional field for users to identify CIDR blocks. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cidr_block = args[:cidr_block] if args.key?(:cidr_block) + @display_name = args[:display_name] if args.key?(:display_name) + end + end + + # Configuration for client certificates on the cluster. + class ClientCertificateConfig + include Google::Apis::Core::Hashable + + # Issue a client certificate. + # Corresponds to the JSON property `issueClientCertificate` + # @return [Boolean] + attr_accessor :issue_client_certificate + alias_method :issue_client_certificate?, :issue_client_certificate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @issue_client_certificate = args[:issue_client_certificate] if args.key?(:issue_client_certificate) + end + end + + # A Google Container Engine cluster. + class Cluster + include Google::Apis::Core::Hashable + + # Configuration for the addons that can be automatically spun up in the + # cluster, enabling additional functionality. + # Corresponds to the JSON property `addonsConfig` + # @return [Google::Apis::ContainerV1beta1::AddonsConfig] + attr_accessor :addons_config + + # The IP address range of the container pods in this cluster, in + # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + # notation (e.g. `10.96.0.0/14`). Leave blank to have + # one automatically chosen or specify a `/14` block in `10.0.0.0/8`. + # Corresponds to the JSON property `clusterIpv4Cidr` + # @return [String] + attr_accessor :cluster_ipv4_cidr + + # [Output only] The time the cluster was created, in + # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # [Output only] The current software version of the master endpoint. + # Corresponds to the JSON property `currentMasterVersion` + # @return [String] + attr_accessor :current_master_version + + # [Output only] The number of nodes currently in the cluster. + # Corresponds to the JSON property `currentNodeCount` + # @return [Fixnum] + attr_accessor :current_node_count + + # [Output only] The current version of the node software components. + # If they are currently at multiple versions because they're in the process + # of being upgraded, this reflects the minimum version of all nodes. + # Corresponds to the JSON property `currentNodeVersion` + # @return [String] + attr_accessor :current_node_version + + # An optional description of this cluster. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Kubernetes alpha features are enabled on this cluster. This includes alpha + # API groups (e.g. v1beta1) and features that may not be production ready in + # the kubernetes version of the master and nodes. + # The cluster has no SLA for uptime and master/node upgrades are disabled. + # Alpha enabled clusters are automatically deleted thirty days after + # creation. + # Corresponds to the JSON property `enableKubernetesAlpha` + # @return [Boolean] + attr_accessor :enable_kubernetes_alpha + alias_method :enable_kubernetes_alpha?, :enable_kubernetes_alpha + + # [Output only] The IP address of this cluster's master endpoint. + # The endpoint can be accessed from the internet at + # `https://username:password@endpoint/`. + # See the `masterAuth` property of this resource for username and + # password information. + # Corresponds to the JSON property `endpoint` + # @return [String] + attr_accessor :endpoint + + # [Output only] The time the cluster will be automatically + # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. + # Corresponds to the JSON property `expireTime` + # @return [String] + attr_accessor :expire_time + + # The initial Kubernetes version for this cluster. Valid versions are those + # found in validMasterVersions returned by getServerConfig. The version can + # be upgraded over time; such upgrades are reflected in + # currentMasterVersion and currentNodeVersion. + # Corresponds to the JSON property `initialClusterVersion` + # @return [String] + attr_accessor :initial_cluster_version + + # The number of nodes to create in this cluster. 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. + # For requests, this field should only be used in lieu of a + # "node_pool" object, since this configuration (along with the + # "node_config") will be used to create a "NodePool" object with an + # auto-generated name. Do not use this and a node_pool at the same time. + # Corresponds to the JSON property `initialNodeCount` + # @return [Fixnum] + attr_accessor :initial_node_count + + # [Output only] The resource URLs of [instance + # groups](/compute/docs/instance-groups/) associated with this + # cluster. + # Corresponds to the JSON property `instanceGroupUrls` + # @return [Array] + attr_accessor :instance_group_urls + + # Configuration for controlling how IPs are allocated in the cluster. + # Corresponds to the JSON property `ipAllocationPolicy` + # @return [Google::Apis::ContainerV1beta1::IpAllocationPolicy] + attr_accessor :ip_allocation_policy + + # [Output only] The name of the Google Compute Engine + # [zone](/compute/docs/regions-zones/regions-zones#available) or + # [region](/compute/docs/regions-zones/regions-zones#available) in which + # the cluster resides. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # The list of Google Compute Engine + # [locations](/compute/docs/zones#available) in which the cluster's nodes + # should be located. + # Corresponds to the JSON property `locations` + # @return [Array] + attr_accessor :locations + + # The logging service the cluster should use to write logs. + # Currently available options: + # * `logging.googleapis.com` - the Google Cloud Logging service. + # * `none` - no logs will be exported from the cluster. + # * if left as an empty string,`logging.googleapis.com` will be used. + # Corresponds to the JSON property `loggingService` + # @return [String] + attr_accessor :logging_service + + # The authentication information for accessing the master endpoint. + # Authentication can be done using HTTP basic auth or using client + # certificates. + # Corresponds to the JSON property `masterAuth` + # @return [Google::Apis::ContainerV1beta1::MasterAuth] + attr_accessor :master_auth + + # Configuration options for the master authorized networks feature. Enabled + # master authorized networks will disallow all external traffic to access + # Kubernetes master through HTTPS except traffic from the given CIDR blocks, + # Google Compute Engine Public IPs and Google Prod IPs. + # Corresponds to the JSON property `masterAuthorizedNetworksConfig` + # @return [Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig] + attr_accessor :master_authorized_networks_config + + # The monitoring service the cluster should use to write metrics. + # Currently available options: + # * `monitoring.googleapis.com` - the Google Cloud Monitoring service. + # * `none` - no metrics will be exported from the cluster. + # * if left as an empty string, `monitoring.googleapis.com` will be used. + # Corresponds to the JSON property `monitoringService` + # @return [String] + attr_accessor :monitoring_service + + # The name of this cluster. The name must be unique within this project + # and zone, and can be up to 40 characters with the following restrictions: + # * Lowercase letters, numbers, and hyphens only. + # * Must start with a letter. + # * Must end with a number or a letter. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The name of the Google Compute Engine + # [network](/compute/docs/networks-and-firewalls#networks) to which the + # cluster is connected. If left unspecified, the `default` network + # will be used. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # Configuration options for the NetworkPolicy feature. + # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/ + # Corresponds to the JSON property `networkPolicy` + # @return [Google::Apis::ContainerV1beta1::NetworkPolicy] + attr_accessor :network_policy + + # Parameters that describe the nodes in a cluster. + # Corresponds to the JSON property `nodeConfig` + # @return [Google::Apis::ContainerV1beta1::NodeConfig] + attr_accessor :node_config + + # [Output only] The size of the address space on each node for hosting + # containers. This is provisioned from within the `container_ipv4_cidr` + # range. + # Corresponds to the JSON property `nodeIpv4CidrSize` + # @return [Fixnum] + attr_accessor :node_ipv4_cidr_size + + # The node pools associated with this cluster. + # This field should not be set if "node_config" or "initial_node_count" are + # specified. + # Corresponds to the JSON property `nodePools` + # @return [Array] + attr_accessor :node_pools + + # [Output only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output only] The IP address range of the Kubernetes services in + # this cluster, in + # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + # notation (e.g. `1.2.3.4/29`). Service addresses are + # typically put in the last `/16` from the container CIDR. + # Corresponds to the JSON property `servicesIpv4Cidr` + # @return [String] + attr_accessor :services_ipv4_cidr + + # [Output only] The current status of this cluster. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output only] Additional information about the current status of this + # cluster, if available. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # The name of the Google Compute Engine + # [subnetwork](/compute/docs/subnetworks) to which the + # cluster is connected. + # Corresponds to the JSON property `subnetwork` + # @return [String] + attr_accessor :subnetwork + + # [Output only] The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use location instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @addons_config = args[:addons_config] if args.key?(:addons_config) + @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr) + @create_time = args[:create_time] if args.key?(:create_time) + @current_master_version = args[:current_master_version] if args.key?(:current_master_version) + @current_node_count = args[:current_node_count] if args.key?(:current_node_count) + @current_node_version = args[:current_node_version] if args.key?(:current_node_version) + @description = args[:description] if args.key?(:description) + @enable_kubernetes_alpha = args[:enable_kubernetes_alpha] if args.key?(:enable_kubernetes_alpha) + @endpoint = args[:endpoint] if args.key?(:endpoint) + @expire_time = args[:expire_time] if args.key?(:expire_time) + @initial_cluster_version = args[:initial_cluster_version] if args.key?(:initial_cluster_version) + @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count) + @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls) + @ip_allocation_policy = args[:ip_allocation_policy] if args.key?(:ip_allocation_policy) + @location = args[:location] if args.key?(:location) + @locations = args[:locations] if args.key?(:locations) + @logging_service = args[:logging_service] if args.key?(:logging_service) + @master_auth = args[:master_auth] if args.key?(:master_auth) + @master_authorized_networks_config = args[:master_authorized_networks_config] if args.key?(:master_authorized_networks_config) + @monitoring_service = args[:monitoring_service] if args.key?(:monitoring_service) + @name = args[:name] if args.key?(:name) + @network = args[:network] if args.key?(:network) + @network_policy = args[:network_policy] if args.key?(:network_policy) + @node_config = args[:node_config] if args.key?(:node_config) + @node_ipv4_cidr_size = args[:node_ipv4_cidr_size] if args.key?(:node_ipv4_cidr_size) + @node_pools = args[:node_pools] if args.key?(:node_pools) + @self_link = args[:self_link] if args.key?(:self_link) + @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @subnetwork = args[:subnetwork] if args.key?(:subnetwork) + @zone = args[:zone] if args.key?(:zone) + end + end + + # ClusterUpdate describes an update to the cluster. Exactly one update can + # be applied to a cluster with each request, so at most one field can be + # provided. + class ClusterUpdate + include Google::Apis::Core::Hashable + + # Configuration for the addons that can be automatically spun up in the + # cluster, enabling additional functionality. + # Corresponds to the JSON property `desiredAddonsConfig` + # @return [Google::Apis::ContainerV1beta1::AddonsConfig] + attr_accessor :desired_addons_config + + # The desired image type for the node pool. + # NOTE: Set the "desired_node_pool" field as well. + # Corresponds to the JSON property `desiredImageType` + # @return [String] + attr_accessor :desired_image_type + + # The desired list of Google Compute Engine + # [locations](/compute/docs/zones#available) in which the cluster's nodes + # should be located. Changing the locations a cluster is in will result + # in nodes being either created or removed from the cluster, depending on + # whether locations are being added or removed. + # This list must always include the cluster's primary zone. + # Corresponds to the JSON property `desiredLocations` + # @return [Array] + attr_accessor :desired_locations + + # Configuration options for the master authorized networks feature. Enabled + # master authorized networks will disallow all external traffic to access + # Kubernetes master through HTTPS except traffic from the given CIDR blocks, + # Google Compute Engine Public IPs and Google Prod IPs. + # Corresponds to the JSON property `desiredMasterAuthorizedNetworksConfig` + # @return [Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig] + attr_accessor :desired_master_authorized_networks_config + + # 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. + # Corresponds to the JSON property `desiredMasterVersion` + # @return [String] + attr_accessor :desired_master_version + + # The monitoring service the cluster should use to write metrics. + # Currently available options: + # * "monitoring.googleapis.com" - the Google Cloud Monitoring service + # * "none" - no metrics will be exported from the cluster + # Corresponds to the JSON property `desiredMonitoringService` + # @return [String] + attr_accessor :desired_monitoring_service + + # NodePoolAutoscaling contains information required by cluster autoscaler to + # adjust the size of the node pool to the current cluster usage. + # Corresponds to the JSON property `desiredNodePoolAutoscaling` + # @return [Google::Apis::ContainerV1beta1::NodePoolAutoscaling] + attr_accessor :desired_node_pool_autoscaling + + # The node pool to be upgraded. This field is mandatory if + # "desired_node_version", "desired_image_family" or + # "desired_node_pool_autoscaling" is specified and there is more than one + # node pool on the cluster. + # Corresponds to the JSON property `desiredNodePoolId` + # @return [String] + attr_accessor :desired_node_pool_id + + # The Kubernetes version to change the nodes to (typically an + # upgrade). Use `-` to upgrade to the latest version supported by + # the server. + # Corresponds to the JSON property `desiredNodeVersion` + # @return [String] + attr_accessor :desired_node_version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @desired_addons_config = args[:desired_addons_config] if args.key?(:desired_addons_config) + @desired_image_type = args[:desired_image_type] if args.key?(:desired_image_type) + @desired_locations = args[:desired_locations] if args.key?(:desired_locations) + @desired_master_authorized_networks_config = args[:desired_master_authorized_networks_config] if args.key?(:desired_master_authorized_networks_config) + @desired_master_version = args[:desired_master_version] if args.key?(:desired_master_version) + @desired_monitoring_service = args[:desired_monitoring_service] if args.key?(:desired_monitoring_service) + @desired_node_pool_autoscaling = args[:desired_node_pool_autoscaling] if args.key?(:desired_node_pool_autoscaling) + @desired_node_pool_id = args[:desired_node_pool_id] if args.key?(:desired_node_pool_id) + @desired_node_version = args[:desired_node_version] if args.key?(:desired_node_version) + end + end + + # CompleteIPRotationRequest moves the cluster master back into single-IP mode. + class CompleteIpRotationRequest + include Google::Apis::Core::Hashable + + # The name of the cluster. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The name (project, location, cluster id) of the cluster to complete IP + # rotation. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @name = args[:name] if args.key?(:name) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # CreateClusterRequest creates a cluster. + class CreateClusterRequest + include Google::Apis::Core::Hashable + + # A Google Container Engine cluster. + # Corresponds to the JSON property `cluster` + # @return [Google::Apis::ContainerV1beta1::Cluster] + attr_accessor :cluster + + # The parent (project and location) where the cluster will be created. + # Specified in the format 'projects/*/locations/*'. + # Corresponds to the JSON property `parent` + # @return [String] + attr_accessor :parent + + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use parent instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use parent instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster = args[:cluster] if args.key?(:cluster) + @parent = args[:parent] if args.key?(:parent) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # CreateNodePoolRequest creates a node pool for a cluster. + class CreateNodePoolRequest + include Google::Apis::Core::Hashable + + # The name of the cluster. + # This field is deprecated, use parent instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # 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. + # Corresponds to the JSON property `nodePool` + # @return [Google::Apis::ContainerV1beta1::NodePool] + attr_accessor :node_pool + + # The parent (project, location, cluster id) where the node pool will be created. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # Corresponds to the JSON property `parent` + # @return [String] + attr_accessor :parent + + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use parent instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use parent instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @node_pool = args[:node_pool] if args.key?(:node_pool) + @parent = args[:parent] if args.key?(:parent) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Configuration options for the horizontal pod autoscaling feature, which + # increases or decreases the number of replica pods a replication controller + # has based on the resource usage of the existing pods. + class HorizontalPodAutoscaling + include Google::Apis::Core::Hashable + + # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster. + # When enabled, it ensures that a Heapster pod is running in the cluster, + # which is also used by the Cloud Monitoring service. + # Corresponds to the JSON property `disabled` + # @return [Boolean] + attr_accessor :disabled + alias_method :disabled?, :disabled + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disabled = args[:disabled] if args.key?(:disabled) + end + end + + # Configuration options for the HTTP (L7) load balancing controller addon, + # which makes it easy to set up HTTP load balancers for services in a cluster. + class HttpLoadBalancing + include Google::Apis::Core::Hashable + + # Whether the HTTP Load Balancing controller is enabled in the cluster. + # When enabled, it runs a small pod in the cluster that manages the load + # balancers. + # Corresponds to the JSON property `disabled` + # @return [Boolean] + attr_accessor :disabled + alias_method :disabled?, :disabled + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disabled = args[:disabled] if args.key?(:disabled) + end + end + + # Configuration for controlling how IPs are allocated in the cluster. + class IpAllocationPolicy + include Google::Apis::Core::Hashable + + # The IP address range for the cluster pod IPs. If this field is set, then + # `cluster.cluster_ipv4_cidr` must be left blank. + # This field is only applicable when `use_ip_aliases` is true. + # Set to blank to have a range will be chosen with the default size. + # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific + # netmask. + # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. + # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range + # to use. + # Corresponds to the JSON property `clusterIpv4Cidr` + # @return [String] + attr_accessor :cluster_ipv4_cidr + + # Whether a new subnetwork will be created automatically for the cluster. + # This field is only applicable when `use_ip_aliases` is true. + # Corresponds to the JSON property `createSubnetwork` + # @return [Boolean] + attr_accessor :create_subnetwork + alias_method :create_subnetwork?, :create_subnetwork + + # The IP address range of the instance IPs in this cluster. + # This is applicable only if `create_subnetwork` is true. + # Set to blank to have a range will be chosen with the default size. + # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific + # netmask. + # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. + # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range + # to use. + # Corresponds to the JSON property `nodeIpv4Cidr` + # @return [String] + attr_accessor :node_ipv4_cidr + + # The IP address range of the services IPs in this cluster. If blank, a range + # will be automatically chosen with the default size. + # This field is only applicable when `use_ip_aliases` is true. + # Set to blank to have a range will be chosen with the default size. + # Set to /netmask (e.g. `/14`) to have a range be chosen with a specific + # netmask. + # Set to a [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) + # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. + # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range + # to use. + # Corresponds to the JSON property `servicesIpv4Cidr` + # @return [String] + attr_accessor :services_ipv4_cidr + + # A custom subnetwork name to be used if `create_subnetwork` is true. If + # this field is empty, then an automatic name will be chosen for the new + # subnetwork. + # Corresponds to the JSON property `subnetworkName` + # @return [String] + attr_accessor :subnetwork_name + + # Whether alias IPs will be used for pod IPs in the cluster. + # Corresponds to the JSON property `useIpAliases` + # @return [Boolean] + attr_accessor :use_ip_aliases + alias_method :use_ip_aliases?, :use_ip_aliases + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_ipv4_cidr = args[:cluster_ipv4_cidr] if args.key?(:cluster_ipv4_cidr) + @create_subnetwork = args[:create_subnetwork] if args.key?(:create_subnetwork) + @node_ipv4_cidr = args[:node_ipv4_cidr] if args.key?(:node_ipv4_cidr) + @services_ipv4_cidr = args[:services_ipv4_cidr] if args.key?(:services_ipv4_cidr) + @subnetwork_name = args[:subnetwork_name] if args.key?(:subnetwork_name) + @use_ip_aliases = args[:use_ip_aliases] if args.key?(:use_ip_aliases) + end + end + + # Configuration for the Kubernetes Dashboard. + class KubernetesDashboard + include Google::Apis::Core::Hashable + + # Whether the Kubernetes Dashboard is enabled for this cluster. + # Corresponds to the JSON property `disabled` + # @return [Boolean] + attr_accessor :disabled + alias_method :disabled?, :disabled + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disabled = args[:disabled] if args.key?(:disabled) + end + end + + # ListClustersResponse is the result of ListClustersRequest. + class ListClustersResponse + include Google::Apis::Core::Hashable + + # A list of clusters in the project in the specified zone, or + # across all ones. + # Corresponds to the JSON property `clusters` + # @return [Array] + attr_accessor :clusters + + # If any zones are listed here, the list of clusters returned + # may be missing those zones. + # Corresponds to the JSON property `missingZones` + # @return [Array] + attr_accessor :missing_zones + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @clusters = args[:clusters] if args.key?(:clusters) + @missing_zones = args[:missing_zones] if args.key?(:missing_zones) + end + end + + # ListNodePoolsResponse is the result of ListNodePoolsRequest. + class ListNodePoolsResponse + include Google::Apis::Core::Hashable + + # A list of node pools for a cluster. + # Corresponds to the JSON property `nodePools` + # @return [Array] + attr_accessor :node_pools + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @node_pools = args[:node_pools] if args.key?(:node_pools) + end + end + + # ListOperationsResponse is the result of ListOperationsRequest. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # If any zones are listed here, the list of operations returned + # may be missing the operations from those zones. + # Corresponds to the JSON property `missingZones` + # @return [Array] + attr_accessor :missing_zones + + # A list of operations in the project in the specified zone. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @missing_zones = args[:missing_zones] if args.key?(:missing_zones) + @operations = args[:operations] if args.key?(:operations) + end + end + + # The authentication information for accessing the master endpoint. + # Authentication can be done using HTTP basic auth or using client + # certificates. + class MasterAuth + include Google::Apis::Core::Hashable + + # [Output only] Base64-encoded public certificate used by clients to + # authenticate to the cluster endpoint. + # Corresponds to the JSON property `clientCertificate` + # @return [String] + attr_accessor :client_certificate + + # Configuration for client certificates on the cluster. + # Corresponds to the JSON property `clientCertificateConfig` + # @return [Google::Apis::ContainerV1beta1::ClientCertificateConfig] + attr_accessor :client_certificate_config + + # [Output only] Base64-encoded private key used by clients to authenticate + # to the cluster endpoint. + # Corresponds to the JSON property `clientKey` + # @return [String] + attr_accessor :client_key + + # [Output only] Base64-encoded public certificate that is the root of + # trust for the cluster. + # Corresponds to the JSON property `clusterCaCertificate` + # @return [String] + attr_accessor :cluster_ca_certificate + + # The password to use for HTTP basic authentication to the master endpoint. + # Because the master endpoint is open to the Internet, you should create a + # strong password. If a password is provided for cluster creation, username + # must be non-empty. + # Corresponds to the JSON property `password` + # @return [String] + attr_accessor :password + + # The username to use for HTTP basic authentication to the master endpoint. + # For clusters v1.6.0 and later, you can disable basic authentication by + # providing an empty username. + # Corresponds to the JSON property `username` + # @return [String] + attr_accessor :username + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_certificate = args[:client_certificate] if args.key?(:client_certificate) + @client_certificate_config = args[:client_certificate_config] if args.key?(:client_certificate_config) + @client_key = args[:client_key] if args.key?(:client_key) + @cluster_ca_certificate = args[:cluster_ca_certificate] if args.key?(:cluster_ca_certificate) + @password = args[:password] if args.key?(:password) + @username = args[:username] if args.key?(:username) + end + end + + # Configuration options for the master authorized networks feature. Enabled + # master authorized networks will disallow all external traffic to access + # Kubernetes master through HTTPS except traffic from the given CIDR blocks, + # Google Compute Engine Public IPs and Google Prod IPs. + class MasterAuthorizedNetworksConfig + include Google::Apis::Core::Hashable + + # cidr_blocks define up to 10 external networks that could access + # Kubernetes master through HTTPS. + # Corresponds to the JSON property `cidrBlocks` + # @return [Array] + attr_accessor :cidr_blocks + + # Whether or not master authorized networks is enabled. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cidr_blocks = args[:cidr_blocks] if args.key?(:cidr_blocks) + @enabled = args[:enabled] if args.key?(:enabled) + end + end + + # Configuration options for the NetworkPolicy feature. + # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/ + class NetworkPolicy + include Google::Apis::Core::Hashable + + # Whether network policy is enabled on the cluster. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # The selected network policy provider. + # Corresponds to the JSON property `provider` + # @return [String] + attr_accessor :provider + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + @provider = args[:provider] if args.key?(:provider) + end + end + + # Parameters that describe the nodes in a cluster. + class NodeConfig + include Google::Apis::Core::Hashable + + # A list of hardware accelerators to be attached to each node. + # See https://cloud.google.com/compute/docs/gpus for more information about + # support for GPUs. + # Corresponds to the JSON property `accelerators` + # @return [Array] + attr_accessor :accelerators + + # Size of the disk attached to each node, specified in GB. + # The smallest allowed disk size is 10GB. + # If unspecified, the default disk size is 100GB. + # Corresponds to the JSON property `diskSizeGb` + # @return [Fixnum] + attr_accessor :disk_size_gb + + # The image type to use for this node. Note that for a given image type, + # the latest version of it will be used. + # Corresponds to the JSON property `imageType` + # @return [String] + attr_accessor :image_type + + # The map of Kubernetes labels (key/value pairs) to be applied to each node. + # These will added in addition to any default label(s) that + # Kubernetes may apply to the node. + # In case of conflict in label keys, the applied set may differ depending on + # the Kubernetes version -- it's best to assume the behavior is undefined + # and conflicts should be avoided. + # For more information, including usage and the valid values, see: + # http://kubernetes.io/v1.1/docs/user-guide/labels.html + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The number of local SSD disks to be attached to the node. + # The limit for this value is dependant upon the maximum number of + # disks available on a machine per zone. See: + # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits + # for more information. + # Corresponds to the JSON property `localSsdCount` + # @return [Fixnum] + attr_accessor :local_ssd_count + + # The name of a Google Compute Engine [machine + # type](/compute/docs/machine-types) (e.g. + # `n1-standard-1`). + # If unspecified, the default machine type is + # `n1-standard-1`. + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + # The metadata key/value pairs assigned to instances in the cluster. + # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes + # in length. These are 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 or be one of the four reserved keys: + # "instance-template", "kube-env", "startup-script", and "user-data" + # Values are free-form strings, and only have meaning as interpreted by + # the image running in the instance. The only restriction placed on them is + # that each value's size must be less than or equal to 32 KB. + # The total size of all keys and values must be less than 512 KB. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The set of Google API scopes to be made available on all of the + # node VMs under the "default" service account. + # The following scopes are recommended, but not required, and by default are + # not included: + # * `https://www.googleapis.com/auth/compute` is required for mounting + # persistent storage on your nodes. + # * `https://www.googleapis.com/auth/devstorage.read_only` is required for + # communicating with **gcr.io** + # (the [Google Container Registry](/container-registry/)). + # If unspecified, no scopes are added, unless Cloud Logging or Cloud + # Monitoring are enabled, in which case their required scopes will be added. + # Corresponds to the JSON property `oauthScopes` + # @return [Array] + attr_accessor :oauth_scopes + + # Whether the nodes are created as preemptible VM instances. See: + # https://cloud.google.com/compute/docs/instances/preemptible for more + # inforamtion about preemptible VM instances. + # Corresponds to the JSON property `preemptible` + # @return [Boolean] + attr_accessor :preemptible + alias_method :preemptible?, :preemptible + + # The Google Cloud Platform Service Account to be used by the node VMs. If + # no Service Account is specified, the "default" service account is used. + # Corresponds to the JSON property `serviceAccount` + # @return [String] + attr_accessor :service_account + + # The list of instance tags applied to all nodes. Tags are used to identify + # valid sources or targets for network firewalls and are specified by + # the client during cluster or node pool creation. Each tag within the list + # must comply with RFC1035. + # Corresponds to the JSON property `tags` + # @return [Array] + attr_accessor :tags + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @accelerators = args[:accelerators] if args.key?(:accelerators) + @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) + @image_type = args[:image_type] if args.key?(:image_type) + @labels = args[:labels] if args.key?(:labels) + @local_ssd_count = args[:local_ssd_count] if args.key?(:local_ssd_count) + @machine_type = args[:machine_type] if args.key?(:machine_type) + @metadata = args[:metadata] if args.key?(:metadata) + @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) + @preemptible = args[:preemptible] if args.key?(:preemptible) + @service_account = args[:service_account] if args.key?(:service_account) + @tags = args[:tags] if args.key?(:tags) + end + end + + # NodeManagement defines the set of node management services turned on for the + # node pool. + class NodeManagement + include Google::Apis::Core::Hashable + + # Whether the nodes will be automatically repaired. + # Corresponds to the JSON property `autoRepair` + # @return [Boolean] + attr_accessor :auto_repair + alias_method :auto_repair?, :auto_repair + + # Whether the nodes will be automatically upgraded. + # Corresponds to the JSON property `autoUpgrade` + # @return [Boolean] + attr_accessor :auto_upgrade + alias_method :auto_upgrade?, :auto_upgrade + + # AutoUpgradeOptions defines the set of options for the user to control how + # the Auto Upgrades will proceed. + # Corresponds to the JSON property `upgradeOptions` + # @return [Google::Apis::ContainerV1beta1::AutoUpgradeOptions] + attr_accessor :upgrade_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_repair = args[:auto_repair] if args.key?(:auto_repair) + @auto_upgrade = args[:auto_upgrade] if args.key?(:auto_upgrade) + @upgrade_options = args[:upgrade_options] if args.key?(:upgrade_options) + end + end + + # 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. + class NodePool + include Google::Apis::Core::Hashable + + # NodePoolAutoscaling contains information required by cluster autoscaler to + # adjust the size of the node pool to the current cluster usage. + # Corresponds to the JSON property `autoscaling` + # @return [Google::Apis::ContainerV1beta1::NodePoolAutoscaling] + attr_accessor :autoscaling + + # Parameters that describe the nodes in a cluster. + # Corresponds to the JSON property `config` + # @return [Google::Apis::ContainerV1beta1::NodeConfig] + attr_accessor :config + + # 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. + # Corresponds to the JSON property `initialNodeCount` + # @return [Fixnum] + attr_accessor :initial_node_count + + # [Output only] The resource URLs of [instance + # groups](/compute/docs/instance-groups/) associated with this + # node pool. + # Corresponds to the JSON property `instanceGroupUrls` + # @return [Array] + attr_accessor :instance_group_urls + + # NodeManagement defines the set of node management services turned on for the + # node pool. + # Corresponds to the JSON property `management` + # @return [Google::Apis::ContainerV1beta1::NodeManagement] + attr_accessor :management + + # The name of the node pool. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output only] The status of the nodes in this pool instance. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output only] Additional information about the current status of this + # node pool instance, if available. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # [Output only] The version of the Kubernetes of this node. + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @autoscaling = args[:autoscaling] if args.key?(:autoscaling) + @config = args[:config] if args.key?(:config) + @initial_node_count = args[:initial_node_count] if args.key?(:initial_node_count) + @instance_group_urls = args[:instance_group_urls] if args.key?(:instance_group_urls) + @management = args[:management] if args.key?(:management) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @version = args[:version] if args.key?(:version) + end + end + + # NodePoolAutoscaling contains information required by cluster autoscaler to + # adjust the size of the node pool to the current cluster usage. + class NodePoolAutoscaling + include Google::Apis::Core::Hashable + + # Is autoscaling enabled for this node pool. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # Maximum number of nodes in the NodePool. Must be >= min_node_count. There + # has to enough quota to scale up the cluster. + # Corresponds to the JSON property `maxNodeCount` + # @return [Fixnum] + attr_accessor :max_node_count + + # Minimum number of nodes in the NodePool. Must be >= 1 and <= + # max_node_count. + # Corresponds to the JSON property `minNodeCount` + # @return [Fixnum] + attr_accessor :min_node_count + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + @max_node_count = args[:max_node_count] if args.key?(:max_node_count) + @min_node_count = args[:min_node_count] if args.key?(:min_node_count) + end + end + + # This operation resource represents operations that may have happened or are + # happening on the cluster. All fields are output only. + class Operation + include Google::Apis::Core::Hashable + + # Detailed operation progress, if available. + # Corresponds to the JSON property `detail` + # @return [String] + attr_accessor :detail + + # [Output only] The name of the Google Compute Engine + # [zone](/compute/docs/regions-zones/regions-zones#available) or + # [region](/compute/docs/regions-zones/regions-zones#available) in which + # the cluster resides. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # The server-assigned ID for the operation. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The operation type. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The current status of the operation. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # If an error has occurred, a textual description of the error. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # Server-defined URL for the target of the operation. + # Corresponds to the JSON property `targetLink` + # @return [String] + attr_accessor :target_link + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the operation + # is taking place. + # This field is deprecated, use location instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @detail = args[:detail] if args.key?(:detail) + @location = args[:location] if args.key?(:location) + @name = args[:name] if args.key?(:name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @target_link = args[:target_link] if args.key?(:target_link) + @zone = args[:zone] if args.key?(:zone) + end + end + + # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed + # NodePool upgrade. This will be an no-op if the last upgrade successfully + # completed. + class RollbackNodePoolUpgradeRequest + include Google::Apis::Core::Hashable + + # The name of the cluster to rollback. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The name (project, location, cluster, node pool id) of the node poll to + # rollback upgrade. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The name of the node pool to rollback. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `nodePoolId` + # @return [String] + attr_accessor :node_pool_id + + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @name = args[:name] if args.key?(:name) + @node_pool_id = args[:node_pool_id] if args.key?(:node_pool_id) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # Container Engine service configuration. + class ServerConfig + include Google::Apis::Core::Hashable + + # Version of Kubernetes the service deploys by default. + # Corresponds to the JSON property `defaultClusterVersion` + # @return [String] + attr_accessor :default_cluster_version + + # Default image type. + # Corresponds to the JSON property `defaultImageType` + # @return [String] + attr_accessor :default_image_type + + # List of valid image types. + # Corresponds to the JSON property `validImageTypes` + # @return [Array] + attr_accessor :valid_image_types + + # List of valid master versions. + # Corresponds to the JSON property `validMasterVersions` + # @return [Array] + attr_accessor :valid_master_versions + + # List of valid node upgrade target versions. + # Corresponds to the JSON property `validNodeVersions` + # @return [Array] + attr_accessor :valid_node_versions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @default_cluster_version = args[:default_cluster_version] if args.key?(:default_cluster_version) + @default_image_type = args[:default_image_type] if args.key?(:default_image_type) + @valid_image_types = args[:valid_image_types] if args.key?(:valid_image_types) + @valid_master_versions = args[:valid_master_versions] if args.key?(:valid_master_versions) + @valid_node_versions = args[:valid_node_versions] if args.key?(:valid_node_versions) + end + end + + # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container + # Engine cluster, which will in turn set them for Google Compute Engine + # resources used by that cluster + class SetLabelsRequest + include Google::Apis::Core::Hashable + + # The name of the cluster. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The fingerprint of the previous set of labels for this resource, + # used to detect conflicts. The fingerprint is initially generated by + # Container 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. + # Corresponds to the JSON property `labelFingerprint` + # @return [String] + attr_accessor :label_fingerprint + + # The name (project, location, cluster id) of the cluster to set labels. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The labels to set for that cluster. + # Corresponds to the JSON property `resourceLabels` + # @return [Hash] + attr_accessor :resource_labels + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) + @name = args[:name] if args.key?(:name) + @project_id = args[:project_id] if args.key?(:project_id) + @resource_labels = args[:resource_labels] if args.key?(:resource_labels) + @zone = args[:zone] if args.key?(:zone) + end + end + + # SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for + # a cluster. + class SetLegacyAbacRequest + include Google::Apis::Core::Hashable + + # The name of the cluster to update. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # Whether ABAC authorization will be enabled in the cluster. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # The name (project, location, cluster id) of the cluster to set legacy abac. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @enabled = args[:enabled] if args.key?(:enabled) + @name = args[:name] if args.key?(:name) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # SetMasterAuthRequest updates the admin password of a cluster. + class SetMasterAuthRequest + include Google::Apis::Core::Hashable + + # The exact form of action to be taken on the master auth + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # The name of the cluster to upgrade. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The name (project, location, cluster) of the cluster to set auth. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The authentication information for accessing the master endpoint. + # Authentication can be done using HTTP basic auth or using client + # certificates. + # Corresponds to the JSON property `update` + # @return [Google::Apis::ContainerV1beta1::MasterAuth] + attr_accessor :update + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @name = args[:name] if args.key?(:name) + @project_id = args[:project_id] if args.key?(:project_id) + @update = args[:update] if args.key?(:update) + @zone = args[:zone] if args.key?(:zone) + end + end + + # SetNetworkPolicyRequest enables/disables network policy for a cluster. + class SetNetworkPolicyRequest + include Google::Apis::Core::Hashable + + # The name of the cluster. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The name (project, location, cluster id) of the cluster to set networking + # policy. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Configuration options for the NetworkPolicy feature. + # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/ + # Corresponds to the JSON property `networkPolicy` + # @return [Google::Apis::ContainerV1beta1::NetworkPolicy] + attr_accessor :network_policy + + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @name = args[:name] if args.key?(:name) + @network_policy = args[:network_policy] if args.key?(:network_policy) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # SetNodePoolManagementRequest sets the node management properties of a node + # pool. + class SetNodePoolManagementRequest + include Google::Apis::Core::Hashable + + # The name of the cluster to update. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # NodeManagement defines the set of node management services turned on for the + # node pool. + # Corresponds to the JSON property `management` + # @return [Google::Apis::ContainerV1beta1::NodeManagement] + attr_accessor :management + + # The name (project, location, cluster, node pool id) of the node pool to set + # management properties. Specified in the format + # 'projects/*/locations/*/clusters/*/nodePools/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The name of the node pool to update. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `nodePoolId` + # @return [String] + attr_accessor :node_pool_id + + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @management = args[:management] if args.key?(:management) + @name = args[:name] if args.key?(:name) + @node_pool_id = args[:node_pool_id] if args.key?(:node_pool_id) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # StartIPRotationRequest creates a new IP for the cluster and then performs + # a node upgrade on each node pool to point to the new IP. + class StartIpRotationRequest + include Google::Apis::Core::Hashable + + # The name of the cluster. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The name (project, location, cluster id) of the cluster to start IP rotation. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @name = args[:name] if args.key?(:name) + @project_id = args[:project_id] if args.key?(:project_id) + @zone = args[:zone] if args.key?(:zone) + end + end + + # UpdateClusterRequest updates the settings of a cluster. + class UpdateClusterRequest + include Google::Apis::Core::Hashable + + # The name of the cluster to upgrade. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The name (project, location, cluster) of the cluster to update. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # ClusterUpdate describes an update to the cluster. Exactly one update can + # be applied to a cluster with each request, so at most one field can be + # provided. + # Corresponds to the JSON property `update` + # @return [Google::Apis::ContainerV1beta1::ClusterUpdate] + attr_accessor :update + + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @name = args[:name] if args.key?(:name) + @project_id = args[:project_id] if args.key?(:project_id) + @update = args[:update] if args.key?(:update) + @zone = args[:zone] if args.key?(:zone) + end + end + end + end +end diff --git a/generated/google/apis/container_v1beta1/representations.rb b/generated/google/apis/container_v1beta1/representations.rb new file mode 100644 index 000000000..d88506b1b --- /dev/null +++ b/generated/google/apis/container_v1beta1/representations.rb @@ -0,0 +1,662 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ContainerV1beta1 + + class AcceleratorConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AddonsConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoUpgradeOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CancelOperationRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CidrBlock + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClientCertificateConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Cluster + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClusterUpdate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompleteIpRotationRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CreateClusterRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CreateNodePoolRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HorizontalPodAutoscaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpLoadBalancing + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IpAllocationPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class KubernetesDashboard + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListClustersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListNodePoolsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MasterAuth + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MasterAuthorizedNetworksConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NodeConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NodeManagement + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NodePool + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NodePoolAutoscaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RollbackNodePoolUpgradeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ServerConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetLabelsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetLegacyAbacRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetMasterAuthRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetNetworkPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetNodePoolManagementRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StartIpRotationRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UpdateClusterRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcceleratorConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :accelerator_count, :numeric_string => true, as: 'acceleratorCount' + property :accelerator_type, as: 'acceleratorType' + end + end + + class AddonsConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :horizontal_pod_autoscaling, as: 'horizontalPodAutoscaling', class: Google::Apis::ContainerV1beta1::HorizontalPodAutoscaling, decorator: Google::Apis::ContainerV1beta1::HorizontalPodAutoscaling::Representation + + property :http_load_balancing, as: 'httpLoadBalancing', class: Google::Apis::ContainerV1beta1::HttpLoadBalancing, decorator: Google::Apis::ContainerV1beta1::HttpLoadBalancing::Representation + + property :kubernetes_dashboard, as: 'kubernetesDashboard', class: Google::Apis::ContainerV1beta1::KubernetesDashboard, decorator: Google::Apis::ContainerV1beta1::KubernetesDashboard::Representation + + end + end + + class AutoUpgradeOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_upgrade_start_time, as: 'autoUpgradeStartTime' + property :description, as: 'description' + end + end + + class CancelOperationRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :operation_id, as: 'operationId' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class CidrBlock + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cidr_block, as: 'cidrBlock' + property :display_name, as: 'displayName' + end + end + + class ClientCertificateConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :issue_client_certificate, as: 'issueClientCertificate' + end + end + + class Cluster + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :addons_config, as: 'addonsConfig', class: Google::Apis::ContainerV1beta1::AddonsConfig, decorator: Google::Apis::ContainerV1beta1::AddonsConfig::Representation + + property :cluster_ipv4_cidr, as: 'clusterIpv4Cidr' + property :create_time, as: 'createTime' + property :current_master_version, as: 'currentMasterVersion' + property :current_node_count, as: 'currentNodeCount' + property :current_node_version, as: 'currentNodeVersion' + property :description, as: 'description' + property :enable_kubernetes_alpha, as: 'enableKubernetesAlpha' + property :endpoint, as: 'endpoint' + property :expire_time, as: 'expireTime' + property :initial_cluster_version, as: 'initialClusterVersion' + property :initial_node_count, as: 'initialNodeCount' + collection :instance_group_urls, as: 'instanceGroupUrls' + property :ip_allocation_policy, as: 'ipAllocationPolicy', class: Google::Apis::ContainerV1beta1::IpAllocationPolicy, decorator: Google::Apis::ContainerV1beta1::IpAllocationPolicy::Representation + + property :location, as: 'location' + collection :locations, as: 'locations' + property :logging_service, as: 'loggingService' + property :master_auth, as: 'masterAuth', class: Google::Apis::ContainerV1beta1::MasterAuth, decorator: Google::Apis::ContainerV1beta1::MasterAuth::Representation + + property :master_authorized_networks_config, as: 'masterAuthorizedNetworksConfig', class: Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig, decorator: Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig::Representation + + property :monitoring_service, as: 'monitoringService' + property :name, as: 'name' + property :network, as: 'network' + property :network_policy, as: 'networkPolicy', class: Google::Apis::ContainerV1beta1::NetworkPolicy, decorator: Google::Apis::ContainerV1beta1::NetworkPolicy::Representation + + property :node_config, as: 'nodeConfig', class: Google::Apis::ContainerV1beta1::NodeConfig, decorator: Google::Apis::ContainerV1beta1::NodeConfig::Representation + + property :node_ipv4_cidr_size, as: 'nodeIpv4CidrSize' + collection :node_pools, as: 'nodePools', class: Google::Apis::ContainerV1beta1::NodePool, decorator: Google::Apis::ContainerV1beta1::NodePool::Representation + + property :self_link, as: 'selfLink' + property :services_ipv4_cidr, as: 'servicesIpv4Cidr' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :subnetwork, as: 'subnetwork' + property :zone, as: 'zone' + end + end + + class ClusterUpdate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :desired_addons_config, as: 'desiredAddonsConfig', class: Google::Apis::ContainerV1beta1::AddonsConfig, decorator: Google::Apis::ContainerV1beta1::AddonsConfig::Representation + + property :desired_image_type, as: 'desiredImageType' + collection :desired_locations, as: 'desiredLocations' + property :desired_master_authorized_networks_config, as: 'desiredMasterAuthorizedNetworksConfig', class: Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig, decorator: Google::Apis::ContainerV1beta1::MasterAuthorizedNetworksConfig::Representation + + property :desired_master_version, as: 'desiredMasterVersion' + property :desired_monitoring_service, as: 'desiredMonitoringService' + property :desired_node_pool_autoscaling, as: 'desiredNodePoolAutoscaling', class: Google::Apis::ContainerV1beta1::NodePoolAutoscaling, decorator: Google::Apis::ContainerV1beta1::NodePoolAutoscaling::Representation + + property :desired_node_pool_id, as: 'desiredNodePoolId' + property :desired_node_version, as: 'desiredNodeVersion' + end + end + + class CompleteIpRotationRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :name, as: 'name' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class CreateClusterRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster, as: 'cluster', class: Google::Apis::ContainerV1beta1::Cluster, decorator: Google::Apis::ContainerV1beta1::Cluster::Representation + + property :parent, as: 'parent' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class CreateNodePoolRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :node_pool, as: 'nodePool', class: Google::Apis::ContainerV1beta1::NodePool, decorator: Google::Apis::ContainerV1beta1::NodePool::Representation + + property :parent, as: 'parent' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class HorizontalPodAutoscaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disabled, as: 'disabled' + end + end + + class HttpLoadBalancing + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disabled, as: 'disabled' + end + end + + class IpAllocationPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_ipv4_cidr, as: 'clusterIpv4Cidr' + property :create_subnetwork, as: 'createSubnetwork' + property :node_ipv4_cidr, as: 'nodeIpv4Cidr' + property :services_ipv4_cidr, as: 'servicesIpv4Cidr' + property :subnetwork_name, as: 'subnetworkName' + property :use_ip_aliases, as: 'useIpAliases' + end + end + + class KubernetesDashboard + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disabled, as: 'disabled' + end + end + + class ListClustersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :clusters, as: 'clusters', class: Google::Apis::ContainerV1beta1::Cluster, decorator: Google::Apis::ContainerV1beta1::Cluster::Representation + + collection :missing_zones, as: 'missingZones' + end + end + + class ListNodePoolsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :node_pools, as: 'nodePools', class: Google::Apis::ContainerV1beta1::NodePool, decorator: Google::Apis::ContainerV1beta1::NodePool::Representation + + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :missing_zones, as: 'missingZones' + collection :operations, as: 'operations', class: Google::Apis::ContainerV1beta1::Operation, decorator: Google::Apis::ContainerV1beta1::Operation::Representation + + end + end + + class MasterAuth + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_certificate, as: 'clientCertificate' + property :client_certificate_config, as: 'clientCertificateConfig', class: Google::Apis::ContainerV1beta1::ClientCertificateConfig, decorator: Google::Apis::ContainerV1beta1::ClientCertificateConfig::Representation + + property :client_key, as: 'clientKey' + property :cluster_ca_certificate, as: 'clusterCaCertificate' + property :password, as: 'password' + property :username, as: 'username' + end + end + + class MasterAuthorizedNetworksConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :cidr_blocks, as: 'cidrBlocks', class: Google::Apis::ContainerV1beta1::CidrBlock, decorator: Google::Apis::ContainerV1beta1::CidrBlock::Representation + + property :enabled, as: 'enabled' + end + end + + class NetworkPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + property :provider, as: 'provider' + end + end + + class NodeConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :accelerators, as: 'accelerators', class: Google::Apis::ContainerV1beta1::AcceleratorConfig, decorator: Google::Apis::ContainerV1beta1::AcceleratorConfig::Representation + + property :disk_size_gb, as: 'diskSizeGb' + property :image_type, as: 'imageType' + hash :labels, as: 'labels' + property :local_ssd_count, as: 'localSsdCount' + property :machine_type, as: 'machineType' + hash :metadata, as: 'metadata' + collection :oauth_scopes, as: 'oauthScopes' + property :preemptible, as: 'preemptible' + property :service_account, as: 'serviceAccount' + collection :tags, as: 'tags' + end + end + + class NodeManagement + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_repair, as: 'autoRepair' + property :auto_upgrade, as: 'autoUpgrade' + property :upgrade_options, as: 'upgradeOptions', class: Google::Apis::ContainerV1beta1::AutoUpgradeOptions, decorator: Google::Apis::ContainerV1beta1::AutoUpgradeOptions::Representation + + end + end + + class NodePool + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :autoscaling, as: 'autoscaling', class: Google::Apis::ContainerV1beta1::NodePoolAutoscaling, decorator: Google::Apis::ContainerV1beta1::NodePoolAutoscaling::Representation + + property :config, as: 'config', class: Google::Apis::ContainerV1beta1::NodeConfig, decorator: Google::Apis::ContainerV1beta1::NodeConfig::Representation + + property :initial_node_count, as: 'initialNodeCount' + collection :instance_group_urls, as: 'instanceGroupUrls' + property :management, as: 'management', class: Google::Apis::ContainerV1beta1::NodeManagement, decorator: Google::Apis::ContainerV1beta1::NodeManagement::Representation + + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :version, as: 'version' + end + end + + class NodePoolAutoscaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + property :max_node_count, as: 'maxNodeCount' + property :min_node_count, as: 'minNodeCount' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :detail, as: 'detail' + property :location, as: 'location' + property :name, as: 'name' + property :operation_type, as: 'operationType' + property :self_link, as: 'selfLink' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :target_link, as: 'targetLink' + property :zone, as: 'zone' + end + end + + class RollbackNodePoolUpgradeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :name, as: 'name' + property :node_pool_id, as: 'nodePoolId' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class ServerConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :default_cluster_version, as: 'defaultClusterVersion' + property :default_image_type, as: 'defaultImageType' + collection :valid_image_types, as: 'validImageTypes' + collection :valid_master_versions, as: 'validMasterVersions' + collection :valid_node_versions, as: 'validNodeVersions' + end + end + + class SetLabelsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :label_fingerprint, as: 'labelFingerprint' + property :name, as: 'name' + property :project_id, as: 'projectId' + hash :resource_labels, as: 'resourceLabels' + property :zone, as: 'zone' + end + end + + class SetLegacyAbacRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :enabled, as: 'enabled' + property :name, as: 'name' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class SetMasterAuthRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + property :cluster_id, as: 'clusterId' + property :name, as: 'name' + property :project_id, as: 'projectId' + property :update, as: 'update', class: Google::Apis::ContainerV1beta1::MasterAuth, decorator: Google::Apis::ContainerV1beta1::MasterAuth::Representation + + property :zone, as: 'zone' + end + end + + class SetNetworkPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :name, as: 'name' + property :network_policy, as: 'networkPolicy', class: Google::Apis::ContainerV1beta1::NetworkPolicy, decorator: Google::Apis::ContainerV1beta1::NetworkPolicy::Representation + + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class SetNodePoolManagementRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :management, as: 'management', class: Google::Apis::ContainerV1beta1::NodeManagement, decorator: Google::Apis::ContainerV1beta1::NodeManagement::Representation + + property :name, as: 'name' + property :node_pool_id, as: 'nodePoolId' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class StartIpRotationRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :name, as: 'name' + property :project_id, as: 'projectId' + property :zone, as: 'zone' + end + end + + class UpdateClusterRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :name, as: 'name' + property :project_id, as: 'projectId' + property :update, as: 'update', class: Google::Apis::ContainerV1beta1::ClusterUpdate, decorator: Google::Apis::ContainerV1beta1::ClusterUpdate::Representation + + property :zone, as: 'zone' + end + end + end + end +end diff --git a/generated/google/apis/container_v1beta1/service.rb b/generated/google/apis/container_v1beta1/service.rb new file mode 100644 index 000000000..280cced92 --- /dev/null +++ b/generated/google/apis/container_v1beta1/service.rb @@ -0,0 +1,1875 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ContainerV1beta1 + # Google Container Engine API + # + # The Google Container Engine API is used for building and managing container + # based applications, powered by the open source Kubernetes technology. + # + # @example + # require 'google/apis/container_v1beta1' + # + # Container = Google::Apis::ContainerV1beta1 # Alias the module + # service = Container::ContainerService.new + # + # @see https://cloud.google.com/container-engine/ + class ContainerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://container.googleapis.com/', '') + @batch_path = 'batch' + end + + # Returns configuration info about the Container Engine service. + # @param [String] name + # The name (project and location) of the server config to get + # Specified in the format 'projects/*/locations/*'. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine [zone](/compute/docs/zones#available) + # to return operations for. + # This field is deprecated, use name instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ServerConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ServerConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_server_config(name, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}/serverConfig', options) + command.response_representation = Google::Apis::ContainerV1beta1::ServerConfig::Representation + command.response_class = Google::Apis::ContainerV1beta1::ServerConfig + command.params['name'] = name unless name.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Completes master IP rotation. + # @param [String] name + # The name (project, location, cluster id) of the cluster to complete IP + # rotation. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [Google::Apis::ContainerV1beta1::CompleteIpRotationRequest] complete_ip_rotation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def complete_project_location_cluster_ip_rotation(name, complete_ip_rotation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:completeIpRotation', options) + command.request_representation = Google::Apis::ContainerV1beta1::CompleteIpRotationRequest::Representation + command.request_object = complete_ip_rotation_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a cluster, consisting of the specified number and type of Google + # Compute Engine instances. + # By default, the cluster is created in the project's + # [default network](/compute/docs/networks-and-firewalls#networks). + # One firewall is added for the cluster. After cluster creation, + # the cluster creates routes for each node to allow the containers + # on that node to communicate with all other instances in the + # cluster. + # Finally, an entry is added to the project's global metadata indicating + # which CIDR range is being used by the cluster. + # @param [String] parent + # The parent (project and location) where the cluster will be created. + # Specified in the format 'projects/*/locations/*'. + # @param [Google::Apis::ContainerV1beta1::CreateClusterRequest] create_cluster_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_location_cluster(parent, create_cluster_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/clusters', options) + command.request_representation = Google::Apis::ContainerV1beta1::CreateClusterRequest::Representation + command.request_object = create_cluster_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the cluster, including the Kubernetes endpoint and all worker + # nodes. + # Firewalls and routes that were configured during cluster creation + # are also deleted. + # Other Google Compute Engine resources that might be in use by the cluster + # (e.g. load balancer resources) will not be deleted if they weren't present + # at the initial create time. + # @param [String] name + # The name (project, location, cluster) of the cluster to delete. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [String] cluster_id + # The name of the cluster to delete. + # This field is deprecated, use name instead. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_cluster(name, cluster_id: nil, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['clusterId'] = cluster_id unless cluster_id.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the details of a specific cluster. + # @param [String] name + # The name (project, location, cluster) of the cluster to retrieve. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [String] cluster_id + # The name of the cluster to retrieve. + # This field is deprecated, use name instead. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Cluster] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Cluster] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_cluster(name, cluster_id: nil, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Cluster::Representation + command.response_class = Google::Apis::ContainerV1beta1::Cluster + command.params['name'] = name unless name.nil? + command.query['clusterId'] = cluster_id unless cluster_id.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all clusters owned by a project in either the specified zone or all + # zones. + # @param [String] parent + # The parent (project and location) where the clusters will be listed. + # Specified in the format 'projects/*/locations/*'. + # Location "-" matches all zones and all regions. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides, or "-" for all zones. + # This field is deprecated, use parent instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ListClustersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ListClustersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_clusters(parent, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/clusters', options) + command.response_representation = Google::Apis::ContainerV1beta1::ListClustersResponse::Representation + command.response_class = Google::Apis::ContainerV1beta1::ListClustersResponse + command.params['parent'] = parent unless parent.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Enables or disables the ABAC authorization mechanism on a cluster. + # @param [String] name + # The name (project, location, cluster id) of the cluster to set legacy abac. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [Google::Apis::ContainerV1beta1::SetLegacyAbacRequest] set_legacy_abac_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_cluster_legacy_abac(name, set_legacy_abac_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:setLegacyAbac', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetLegacyAbacRequest::Representation + command.request_object = set_legacy_abac_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Used to set master auth materials. Currently supports :- + # Changing the admin password of a specific cluster. + # This can be either via password generation or explicitly set. + # Modify basic_auth.csv and reset the K8S API server. + # @param [String] name + # The name (project, location, cluster) of the cluster to set auth. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [Google::Apis::ContainerV1beta1::SetMasterAuthRequest] set_master_auth_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_location_cluster_master_auth(name, set_master_auth_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:setMasterAuth', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetMasterAuthRequest::Representation + command.request_object = set_master_auth_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Enables/Disables Network Policy for a cluster. + # @param [String] name + # The name (project, location, cluster id) of the cluster to set networking + # policy. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [Google::Apis::ContainerV1beta1::SetNetworkPolicyRequest] set_network_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_location_cluster_network_policy(name, set_network_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:setNetworkPolicy', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetNetworkPolicyRequest::Representation + command.request_object = set_network_policy_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets labels on a cluster. + # @param [String] name + # The name (project, location, cluster id) of the cluster to set labels. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [Google::Apis::ContainerV1beta1::SetLabelsRequest] set_labels_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_location_cluster_resource_labels(name, set_labels_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:setResourceLabels', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetLabelsRequest::Representation + command.request_object = set_labels_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Start master IP rotation. + # @param [String] name + # The name (project, location, cluster id) of the cluster to start IP rotation. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [Google::Apis::ContainerV1beta1::StartIpRotationRequest] start_ip_rotation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def start_project_location_cluster_ip_rotation(name, start_ip_rotation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:startIpRotation', options) + command.request_representation = Google::Apis::ContainerV1beta1::StartIpRotationRequest::Representation + command.request_object = start_ip_rotation_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the settings of a specific cluster. + # @param [String] name + # The name (project, location, cluster) of the cluster to update. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [Google::Apis::ContainerV1beta1::UpdateClusterRequest] update_cluster_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_project_location_cluster(name, update_cluster_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta1/{+name}', options) + command.request_representation = Google::Apis::ContainerV1beta1::UpdateClusterRequest::Representation + command.request_object = update_cluster_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a node pool for a cluster. + # @param [String] parent + # The parent (project, location, cluster id) where the node pool will be created. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # @param [Google::Apis::ContainerV1beta1::CreateNodePoolRequest] create_node_pool_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_location_cluster_node_pool(parent, create_node_pool_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/nodePools', options) + command.request_representation = Google::Apis::ContainerV1beta1::CreateNodePoolRequest::Representation + command.request_object = create_node_pool_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a node pool from a cluster. + # @param [String] name + # The name (project, location, cluster, node pool id) of the node pool to delete. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [String] node_pool_id + # The name of the node pool to delete. + # This field is deprecated, use name instead. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_cluster_node_pool(name, cluster_id: nil, node_pool_id: nil, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['clusterId'] = cluster_id unless cluster_id.nil? + command.query['nodePoolId'] = node_pool_id unless node_pool_id.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the node pool requested. + # @param [String] name + # The name (project, location, cluster, node pool id) of the node pool to get. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [String] node_pool_id + # The name of the node pool. + # This field is deprecated, use name instead. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::NodePool] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::NodePool] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_cluster_node_pool(name, cluster_id: nil, node_pool_id: nil, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::ContainerV1beta1::NodePool::Representation + command.response_class = Google::Apis::ContainerV1beta1::NodePool + command.params['name'] = name unless name.nil? + command.query['clusterId'] = cluster_id unless cluster_id.nil? + command.query['nodePoolId'] = node_pool_id unless node_pool_id.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the node pools for a cluster. + # @param [String] parent + # The parent (project, location, cluster id) where the node pools will be listed. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use parent instead. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use parent instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ListNodePoolsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ListNodePoolsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_cluster_node_pools(parent, cluster_id: nil, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/nodePools', options) + command.response_representation = Google::Apis::ContainerV1beta1::ListNodePoolsResponse::Representation + command.response_class = Google::Apis::ContainerV1beta1::ListNodePoolsResponse + command.params['parent'] = parent unless parent.nil? + command.query['clusterId'] = cluster_id unless cluster_id.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Roll back the previously Aborted or Failed NodePool upgrade. + # This will be an no-op if the last upgrade successfully completed. + # @param [String] name + # The name (project, location, cluster, node pool id) of the node poll to + # rollback upgrade. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # @param [Google::Apis::ContainerV1beta1::RollbackNodePoolUpgradeRequest] rollback_node_pool_upgrade_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def rollback_project_location_cluster_node_pool(name, rollback_node_pool_upgrade_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:rollback', options) + command.request_representation = Google::Apis::ContainerV1beta1::RollbackNodePoolUpgradeRequest::Representation + command.request_object = rollback_node_pool_upgrade_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the NodeManagement options for a node pool. + # @param [String] name + # The name (project, location, cluster, node pool id) of the node pool to set + # management properties. Specified in the format + # 'projects/*/locations/*/clusters/*/nodePools/*'. + # @param [Google::Apis::ContainerV1beta1::SetNodePoolManagementRequest] set_node_pool_management_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_location_cluster_node_pool_management(name, set_node_pool_management_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:setManagement', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetNodePoolManagementRequest::Representation + command.request_object = set_node_pool_management_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Cancels the specified operation. + # @param [String] name + # The name (project, location, operation id) of the operation to cancel. + # Specified in the format 'projects/*/locations/*/operations/*'. + # @param [Google::Apis::ContainerV1beta1::CancelOperationRequest] cancel_operation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_project_location_operation(name, cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:cancel', options) + command.request_representation = Google::Apis::ContainerV1beta1::CancelOperationRequest::Representation + command.request_object = cancel_operation_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Empty::Representation + command.response_class = Google::Apis::ContainerV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified operation. + # @param [String] name + # The name (project, location, operation id) of the operation to get. + # Specified in the format 'projects/*/locations/*/operations/*'. + # @param [String] operation_id + # The server-assigned `name` of the operation. + # This field is deprecated, use name instead. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_operation(name, operation_id: nil, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['operationId'] = operation_id unless operation_id.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all operations in a project in a specific zone or all zones. + # @param [String] parent + # The parent (project and location) where the operations will be listed. + # Specified in the format 'projects/*/locations/*'. + # Location "-" matches all zones and all regions. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine [zone](/compute/docs/zones#available) + # to return operations for, or `-` for all zones. + # This field is deprecated, use parent instead. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_operations(parent, project_id: nil, zone: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/operations', options) + command.response_representation = Google::Apis::ContainerV1beta1::ListOperationsResponse::Representation + command.response_class = Google::Apis::ContainerV1beta1::ListOperationsResponse + command.params['parent'] = parent unless parent.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns configuration info about the Container Engine service. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine [zone](/compute/docs/zones#available) + # to return operations for. + # This field is deprecated, use name instead. + # @param [String] name + # The name (project and location) of the server config to get + # Specified in the format 'projects/*/locations/*'. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ServerConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ServerConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_zone_serverconfig(project_id, zone, name: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}/zones/{zone}/serverconfig', options) + command.response_representation = Google::Apis::ContainerV1beta1::ServerConfig::Representation + command.response_class = Google::Apis::ContainerV1beta1::ServerConfig + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.query['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Completes master IP rotation. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::CompleteIpRotationRequest] complete_ip_rotation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def complete_project_zone_cluster_ip_rotation(project_id, zone, cluster_id, complete_ip_rotation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation', options) + command.request_representation = Google::Apis::ContainerV1beta1::CompleteIpRotationRequest::Representation + command.request_object = complete_ip_rotation_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a cluster, consisting of the specified number and type of Google + # Compute Engine instances. + # By default, the cluster is created in the project's + # [default network](/compute/docs/networks-and-firewalls#networks). + # One firewall is added for the cluster. After cluster creation, + # the cluster creates routes for each node to allow the containers + # on that node to communicate with all other instances in the + # cluster. + # Finally, an entry is added to the project's global metadata indicating + # which CIDR range is being used by the cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use parent instead. + # @param [Google::Apis::ContainerV1beta1::CreateClusterRequest] create_cluster_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_cluster(project_id, zone, create_cluster_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters', options) + command.request_representation = Google::Apis::ContainerV1beta1::CreateClusterRequest::Representation + command.request_object = create_cluster_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the cluster, including the Kubernetes endpoint and all worker + # nodes. + # Firewalls and routes that were configured during cluster creation + # are also deleted. + # Other Google Compute Engine resources that might be in use by the cluster + # (e.g. load balancer resources) will not be deleted if they weren't present + # at the initial create time. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster to delete. + # This field is deprecated, use name instead. + # @param [String] name + # The name (project, location, cluster) of the cluster to delete. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_zone_cluster(project_id, zone, cluster_id, name: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the details of a specific cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster to retrieve. + # This field is deprecated, use name instead. + # @param [String] name + # The name (project, location, cluster) of the cluster to retrieve. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Cluster] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Cluster] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_zone_cluster(project_id, zone, cluster_id, name: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Cluster::Representation + command.response_class = Google::Apis::ContainerV1beta1::Cluster + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Enables or disables the ABAC authorization mechanism on a cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster to update. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::SetLegacyAbacRequest] set_legacy_abac_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def legacy_project_zone_cluster_abac(project_id, zone, cluster_id, set_legacy_abac_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetLegacyAbacRequest::Representation + command.request_object = set_legacy_abac_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all clusters owned by a project in either the specified zone or all + # zones. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides, or "-" for all zones. + # This field is deprecated, use parent instead. + # @param [String] parent + # The parent (project and location) where the clusters will be listed. + # Specified in the format 'projects/*/locations/*'. + # Location "-" matches all zones and all regions. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ListClustersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ListClustersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_zone_clusters(project_id, zone, parent: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}/zones/{zone}/clusters', options) + command.response_representation = Google::Apis::ContainerV1beta1::ListClustersResponse::Representation + command.response_class = Google::Apis::ContainerV1beta1::ListClustersResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.query['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets labels on a cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::SetLabelsRequest] set_labels_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def resource_project_zone_cluster_labels(project_id, zone, cluster_id, set_labels_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetLabelsRequest::Representation + command.request_object = set_labels_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Used to set master auth materials. Currently supports :- + # Changing the admin password of a specific cluster. + # This can be either via password generation or explicitly set. + # Modify basic_auth.csv and reset the K8S API server. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster to upgrade. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::SetMasterAuthRequest] set_master_auth_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_zone_cluster_master_auth(project_id, zone, cluster_id, set_master_auth_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetMasterAuthRequest::Representation + command.request_object = set_master_auth_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Enables/Disables Network Policy for a cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::SetNetworkPolicyRequest] set_network_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_zone_cluster_network_policy(project_id, zone, cluster_id, set_network_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetNetworkPolicyRequest::Representation + command.request_object = set_network_policy_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Start master IP rotation. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::StartIpRotationRequest] start_ip_rotation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def start_project_zone_cluster_ip_rotation(project_id, zone, cluster_id, start_ip_rotation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation', options) + command.request_representation = Google::Apis::ContainerV1beta1::StartIpRotationRequest::Representation + command.request_object = start_ip_rotation_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the settings of a specific cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster to upgrade. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::UpdateClusterRequest] update_cluster_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_project_zone_cluster(project_id, zone, cluster_id, update_cluster_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}', options) + command.request_representation = Google::Apis::ContainerV1beta1::UpdateClusterRequest::Representation + command.request_object = update_cluster_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a node pool for a cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use parent instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use parent instead. + # @param [Google::Apis::ContainerV1beta1::CreateNodePoolRequest] create_node_pool_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_zone_cluster_node_pool(project_id, zone, cluster_id, create_node_pool_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools', options) + command.request_representation = Google::Apis::ContainerV1beta1::CreateNodePoolRequest::Representation + command.request_object = create_node_pool_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a node pool from a cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [String] node_pool_id + # The name of the node pool to delete. + # This field is deprecated, use name instead. + # @param [String] name + # The name (project, location, cluster, node pool id) of the node pool to delete. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_zone_cluster_node_pool(project_id, zone, cluster_id, node_pool_id, name: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.params['nodePoolId'] = node_pool_id unless node_pool_id.nil? + command.query['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves the node pool requested. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use name instead. + # @param [String] node_pool_id + # The name of the node pool. + # This field is deprecated, use name instead. + # @param [String] name + # The name (project, location, cluster, node pool id) of the node pool to get. + # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::NodePool] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::NodePool] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_zone_cluster_node_pool(project_id, zone, cluster_id, node_pool_id, name: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}', options) + command.response_representation = Google::Apis::ContainerV1beta1::NodePool::Representation + command.response_class = Google::Apis::ContainerV1beta1::NodePool + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.params['nodePoolId'] = node_pool_id unless node_pool_id.nil? + command.query['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the node pools for a cluster. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://developers.google.com/console/help/new/#projectnumber). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use parent instead. + # @param [String] cluster_id + # The name of the cluster. + # This field is deprecated, use parent instead. + # @param [String] parent + # The parent (project, location, cluster id) where the node pools will be listed. + # Specified in the format 'projects/*/locations/*/clusters/*'. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ListNodePoolsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ListNodePoolsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_zone_cluster_node_pools(project_id, zone, cluster_id, parent: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools', options) + command.response_representation = Google::Apis::ContainerV1beta1::ListNodePoolsResponse::Representation + command.response_class = Google::Apis::ContainerV1beta1::ListNodePoolsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.query['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Roll back the previously Aborted or Failed NodePool upgrade. + # This will be an no-op if the last upgrade successfully completed. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster to rollback. + # This field is deprecated, use name instead. + # @param [String] node_pool_id + # The name of the node pool to rollback. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::RollbackNodePoolUpgradeRequest] rollback_node_pool_upgrade_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def rollback_project_zone_cluster_node_pool(project_id, zone, cluster_id, node_pool_id, rollback_node_pool_upgrade_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback', options) + command.request_representation = Google::Apis::ContainerV1beta1::RollbackNodePoolUpgradeRequest::Representation + command.request_object = rollback_node_pool_upgrade_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.params['nodePoolId'] = node_pool_id unless node_pool_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the NodeManagement options for a node pool. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] cluster_id + # The name of the cluster to update. + # This field is deprecated, use name instead. + # @param [String] node_pool_id + # The name of the node pool to update. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::SetNodePoolManagementRequest] set_node_pool_management_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_zone_cluster_node_pool_management(project_id, zone, cluster_id, node_pool_id, set_node_pool_management_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement', options) + command.request_representation = Google::Apis::ContainerV1beta1::SetNodePoolManagementRequest::Representation + command.request_object = set_node_pool_management_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['clusterId'] = cluster_id unless cluster_id.nil? + command.params['nodePoolId'] = node_pool_id unless node_pool_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Cancels the specified operation. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the operation resides. + # This field is deprecated, use name instead. + # @param [String] operation_id + # The server-assigned `name` of the operation. + # This field is deprecated, use name instead. + # @param [Google::Apis::ContainerV1beta1::CancelOperationRequest] cancel_operation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_project_zone_operation(project_id, zone, operation_id, cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel', options) + command.request_representation = Google::Apis::ContainerV1beta1::CancelOperationRequest::Representation + command.request_object = cancel_operation_request_object + command.response_representation = Google::Apis::ContainerV1beta1::Empty::Representation + command.response_class = Google::Apis::ContainerV1beta1::Empty + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['operationId'] = operation_id unless operation_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the specified operation. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use name instead. + # @param [String] zone + # The name of the Google Compute Engine + # [zone](/compute/docs/zones#available) in which the cluster + # resides. + # This field is deprecated, use name instead. + # @param [String] operation_id + # The server-assigned `name` of the operation. + # This field is deprecated, use name instead. + # @param [String] name + # The name (project, location, operation id) of the operation to get. + # Specified in the format 'projects/*/locations/*/operations/*'. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_zone_operation(project_id, zone, operation_id, name: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}', options) + command.response_representation = Google::Apis::ContainerV1beta1::Operation::Representation + command.response_class = Google::Apis::ContainerV1beta1::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.params['operationId'] = operation_id unless operation_id.nil? + command.query['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all operations in a project in a specific zone or all zones. + # @param [String] project_id + # The Google Developers Console [project ID or project + # number](https://support.google.com/cloud/answer/6158840). + # This field is deprecated, use parent instead. + # @param [String] zone + # The name of the Google Compute Engine [zone](/compute/docs/zones#available) + # to return operations for, or `-` for all zones. + # This field is deprecated, use parent instead. + # @param [String] parent + # The parent (project and location) where the operations will be listed. + # Specified in the format 'projects/*/locations/*'. + # Location "-" matches all zones and all regions. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContainerV1beta1::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContainerV1beta1::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_zone_operations(project_id, zone, parent: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/projects/{projectId}/zones/{zone}/operations', options) + command.response_representation = Google::Apis::ContainerV1beta1::ListOperationsResponse::Representation + command.response_class = Google::Apis::ContainerV1beta1::ListOperationsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['zone'] = zone unless zone.nil? + command.query['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/content_v2sandbox.rb b/generated/google/apis/content_v2sandbox.rb new file mode 100644 index 000000000..021099210 --- /dev/null +++ b/generated/google/apis/content_v2sandbox.rb @@ -0,0 +1,35 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/content_v2sandbox/service.rb' +require 'google/apis/content_v2sandbox/classes.rb' +require 'google/apis/content_v2sandbox/representations.rb' + +module Google + module Apis + # Content API for Shopping + # + # Manages product items, inventory, and Merchant Center accounts for Google + # Shopping. + # + # @see https://developers.google.com/shopping-content + module ContentV2sandbox + VERSION = 'V2sandbox' + REVISION = '20170725' + + # Manage your product listings and accounts for Google Shopping + AUTH_CONTENT = 'https://www.googleapis.com/auth/content' + end + end +end diff --git a/generated/google/apis/content_v2sandbox/classes.rb b/generated/google/apis/content_v2sandbox/classes.rb new file mode 100644 index 000000000..e46bdb50b --- /dev/null +++ b/generated/google/apis/content_v2sandbox/classes.rb @@ -0,0 +1,2406 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ContentV2sandbox + + # An error returned by the API. + class Error + include Google::Apis::Core::Hashable + + # The domain of the error. + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # A description of the error. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + # The error code. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @domain = args[:domain] if args.key?(:domain) + @message = args[:message] if args.key?(:message) + @reason = args[:reason] if args.key?(:reason) + end + end + + # A list of errors returned by a failed batch entry. + class Errors + include Google::Apis::Core::Hashable + + # The HTTP status of the first error in errors. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of errors. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + # The message of the first error in errors. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @errors = args[:errors] if args.key?(:errors) + @message = args[:message] if args.key?(:message) + end + end + + # + class Order + include Google::Apis::Core::Hashable + + # Whether the order was acknowledged. + # Corresponds to the JSON property `acknowledged` + # @return [Boolean] + attr_accessor :acknowledged + alias_method :acknowledged?, :acknowledged + + # The channel type of the order: "purchaseOnGoogle" or "googleExpress". + # Corresponds to the JSON property `channelType` + # @return [String] + attr_accessor :channel_type + + # The details of the customer who placed the order. + # Corresponds to the JSON property `customer` + # @return [Google::Apis::ContentV2sandbox::OrderCustomer] + attr_accessor :customer + + # The details for the delivery. + # Corresponds to the JSON property `deliveryDetails` + # @return [Google::Apis::ContentV2sandbox::OrderDeliveryDetails] + attr_accessor :delivery_details + + # The REST id of the order. Globally unique. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Identifies what kind of resource this is. Value: the fixed string "content# + # order". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Line items that are ordered. + # Corresponds to the JSON property `lineItems` + # @return [Array] + attr_accessor :line_items + + # + # Corresponds to the JSON property `merchantId` + # @return [Fixnum] + attr_accessor :merchant_id + + # Merchant-provided id of the order. + # Corresponds to the JSON property `merchantOrderId` + # @return [String] + attr_accessor :merchant_order_id + + # The net amount for the order. For example, if an order was originally for a + # grand total of $100 and a refund was issued for $20, the net amount will be $ + # 80. + # Corresponds to the JSON property `netAmount` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :net_amount + + # The details of the payment method. + # Corresponds to the JSON property `paymentMethod` + # @return [Google::Apis::ContentV2sandbox::OrderPaymentMethod] + attr_accessor :payment_method + + # The status of the payment. + # Corresponds to the JSON property `paymentStatus` + # @return [String] + attr_accessor :payment_status + + # The date when the order was placed, in ISO 8601 format. + # Corresponds to the JSON property `placedDate` + # @return [String] + attr_accessor :placed_date + + # The details of the merchant provided promotions applied to the order. More + # details about the program are here. + # Corresponds to the JSON property `promotions` + # @return [Array] + attr_accessor :promotions + + # Refunds for the order. + # Corresponds to the JSON property `refunds` + # @return [Array] + attr_accessor :refunds + + # Shipments of the order. + # Corresponds to the JSON property `shipments` + # @return [Array] + attr_accessor :shipments + + # The total cost of shipping for all items. + # Corresponds to the JSON property `shippingCost` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :shipping_cost + + # The tax for the total shipping cost. + # Corresponds to the JSON property `shippingCostTax` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :shipping_cost_tax + + # The requested shipping option. + # Corresponds to the JSON property `shippingOption` + # @return [String] + attr_accessor :shipping_option + + # The status of the order. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @acknowledged = args[:acknowledged] if args.key?(:acknowledged) + @channel_type = args[:channel_type] if args.key?(:channel_type) + @customer = args[:customer] if args.key?(:customer) + @delivery_details = args[:delivery_details] if args.key?(:delivery_details) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @line_items = args[:line_items] if args.key?(:line_items) + @merchant_id = args[:merchant_id] if args.key?(:merchant_id) + @merchant_order_id = args[:merchant_order_id] if args.key?(:merchant_order_id) + @net_amount = args[:net_amount] if args.key?(:net_amount) + @payment_method = args[:payment_method] if args.key?(:payment_method) + @payment_status = args[:payment_status] if args.key?(:payment_status) + @placed_date = args[:placed_date] if args.key?(:placed_date) + @promotions = args[:promotions] if args.key?(:promotions) + @refunds = args[:refunds] if args.key?(:refunds) + @shipments = args[:shipments] if args.key?(:shipments) + @shipping_cost = args[:shipping_cost] if args.key?(:shipping_cost) + @shipping_cost_tax = args[:shipping_cost_tax] if args.key?(:shipping_cost_tax) + @shipping_option = args[:shipping_option] if args.key?(:shipping_option) + @status = args[:status] if args.key?(:status) + end + end + + # + class OrderAddress + include Google::Apis::Core::Hashable + + # CLDR country code (e.g. "US"). + # Corresponds to the JSON property `country` + # @return [String] + attr_accessor :country + + # Strings representing the lines of the printed label for mailing the order, for + # example: + # John Smith + # 1600 Amphitheatre Parkway + # Mountain View, CA, 94043 + # United States + # Corresponds to the JSON property `fullAddress` + # @return [Array] + attr_accessor :full_address + + # Whether the address is a post office box. + # Corresponds to the JSON property `isPostOfficeBox` + # @return [Boolean] + attr_accessor :is_post_office_box + alias_method :is_post_office_box?, :is_post_office_box + + # City, town or commune. May also include dependent localities or sublocalities ( + # e.g. neighborhoods or suburbs). + # Corresponds to the JSON property `locality` + # @return [String] + attr_accessor :locality + + # Postal Code or ZIP (e.g. "94043"). + # Corresponds to the JSON property `postalCode` + # @return [String] + attr_accessor :postal_code + + # Name of the recipient. + # Corresponds to the JSON property `recipientName` + # @return [String] + attr_accessor :recipient_name + + # Top-level administrative subdivision of the country (e.g. "CA"). + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # Street-level part of the address. + # Corresponds to the JSON property `streetAddress` + # @return [Array] + attr_accessor :street_address + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @country = args[:country] if args.key?(:country) + @full_address = args[:full_address] if args.key?(:full_address) + @is_post_office_box = args[:is_post_office_box] if args.key?(:is_post_office_box) + @locality = args[:locality] if args.key?(:locality) + @postal_code = args[:postal_code] if args.key?(:postal_code) + @recipient_name = args[:recipient_name] if args.key?(:recipient_name) + @region = args[:region] if args.key?(:region) + @street_address = args[:street_address] if args.key?(:street_address) + end + end + + # + class OrderCancellation + include Google::Apis::Core::Hashable + + # The actor that created the cancellation. + # Corresponds to the JSON property `actor` + # @return [String] + attr_accessor :actor + + # Date on which the cancellation has been created, in ISO 8601 format. + # Corresponds to the JSON property `creationDate` + # @return [String] + attr_accessor :creation_date + + # The quantity that was canceled. + # Corresponds to the JSON property `quantity` + # @return [Fixnum] + attr_accessor :quantity + + # 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. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @actor = args[:actor] if args.key?(:actor) + @creation_date = args[:creation_date] if args.key?(:creation_date) + @quantity = args[:quantity] if args.key?(:quantity) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrderCustomer + include Google::Apis::Core::Hashable + + # Email address of the customer. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # If set, this indicates the user explicitly chose to opt in or out of providing + # marketing rights to the merchant. If unset, this indicates the user has + # already made this choice in a previous purchase, and was thus not shown the + # marketing right opt in/out checkbox during the checkout flow. + # Corresponds to the JSON property `explicitMarketingPreference` + # @return [Boolean] + attr_accessor :explicit_marketing_preference + alias_method :explicit_marketing_preference?, :explicit_marketing_preference + + # Full name of the customer. + # Corresponds to the JSON property `fullName` + # @return [String] + attr_accessor :full_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + @explicit_marketing_preference = args[:explicit_marketing_preference] if args.key?(:explicit_marketing_preference) + @full_name = args[:full_name] if args.key?(:full_name) + end + end + + # + class OrderDeliveryDetails + include Google::Apis::Core::Hashable + + # The delivery address + # Corresponds to the JSON property `address` + # @return [Google::Apis::ContentV2sandbox::OrderAddress] + attr_accessor :address + + # The phone number of the person receiving the delivery. + # Corresponds to the JSON property `phoneNumber` + # @return [String] + attr_accessor :phone_number + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @address = args[:address] if args.key?(:address) + @phone_number = args[:phone_number] if args.key?(:phone_number) + end + end + + # + class OrderLineItem + include Google::Apis::Core::Hashable + + # Cancellations of the line item. + # Corresponds to the JSON property `cancellations` + # @return [Array] + attr_accessor :cancellations + + # The id of the line item. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Total price for the line item. For example, if two items for $10 are purchased, + # the total price will be $20. + # Corresponds to the JSON property `price` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :price + + # Product data from the time of the order placement. + # Corresponds to the JSON property `product` + # @return [Google::Apis::ContentV2sandbox::OrderLineItemProduct] + attr_accessor :product + + # Number of items canceled. + # Corresponds to the JSON property `quantityCanceled` + # @return [Fixnum] + attr_accessor :quantity_canceled + + # Number of items delivered. + # Corresponds to the JSON property `quantityDelivered` + # @return [Fixnum] + attr_accessor :quantity_delivered + + # Number of items ordered. + # Corresponds to the JSON property `quantityOrdered` + # @return [Fixnum] + attr_accessor :quantity_ordered + + # Number of items pending. + # Corresponds to the JSON property `quantityPending` + # @return [Fixnum] + attr_accessor :quantity_pending + + # Number of items returned. + # Corresponds to the JSON property `quantityReturned` + # @return [Fixnum] + attr_accessor :quantity_returned + + # Number of items shipped. + # Corresponds to the JSON property `quantityShipped` + # @return [Fixnum] + attr_accessor :quantity_shipped + + # Details of the return policy for the line item. + # Corresponds to the JSON property `returnInfo` + # @return [Google::Apis::ContentV2sandbox::OrderLineItemReturnInfo] + attr_accessor :return_info + + # Returns of the line item. + # Corresponds to the JSON property `returns` + # @return [Array] + attr_accessor :returns + + # Details of the requested shipping for the line item. + # Corresponds to the JSON property `shippingDetails` + # @return [Google::Apis::ContentV2sandbox::OrderLineItemShippingDetails] + attr_accessor :shipping_details + + # Total tax amount for the line item. For example, if two items are purchased, + # and each have a cost tax of $2, the total tax amount will be $4. + # Corresponds to the JSON property `tax` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :tax + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cancellations = args[:cancellations] if args.key?(:cancellations) + @id = args[:id] if args.key?(:id) + @price = args[:price] if args.key?(:price) + @product = args[:product] if args.key?(:product) + @quantity_canceled = args[:quantity_canceled] if args.key?(:quantity_canceled) + @quantity_delivered = args[:quantity_delivered] if args.key?(:quantity_delivered) + @quantity_ordered = args[:quantity_ordered] if args.key?(:quantity_ordered) + @quantity_pending = args[:quantity_pending] if args.key?(:quantity_pending) + @quantity_returned = args[:quantity_returned] if args.key?(:quantity_returned) + @quantity_shipped = args[:quantity_shipped] if args.key?(:quantity_shipped) + @return_info = args[:return_info] if args.key?(:return_info) + @returns = args[:returns] if args.key?(:returns) + @shipping_details = args[:shipping_details] if args.key?(:shipping_details) + @tax = args[:tax] if args.key?(:tax) + end + end + + # + class OrderLineItemProduct + include Google::Apis::Core::Hashable + + # Brand of the item. + # Corresponds to the JSON property `brand` + # @return [String] + attr_accessor :brand + + # The item's channel (online or local). + # Corresponds to the JSON property `channel` + # @return [String] + attr_accessor :channel + + # Condition or state of the item. + # Corresponds to the JSON property `condition` + # @return [String] + attr_accessor :condition + + # The two-letter ISO 639-1 language code for the item. + # Corresponds to the JSON property `contentLanguage` + # @return [String] + attr_accessor :content_language + + # Global Trade Item Number (GTIN) of the item. + # Corresponds to the JSON property `gtin` + # @return [String] + attr_accessor :gtin + + # The REST id of the product. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # URL of an image of the item. + # Corresponds to the JSON property `imageLink` + # @return [String] + attr_accessor :image_link + + # Shared identifier for all variants of the same product. + # Corresponds to the JSON property `itemGroupId` + # @return [String] + attr_accessor :item_group_id + + # Manufacturer Part Number (MPN) of the item. + # Corresponds to the JSON property `mpn` + # @return [String] + attr_accessor :mpn + + # An identifier of the item. + # Corresponds to the JSON property `offerId` + # @return [String] + attr_accessor :offer_id + + # Price of the item. + # Corresponds to the JSON property `price` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :price + + # URL to the cached image shown to the user when order was placed. + # Corresponds to the JSON property `shownImage` + # @return [String] + attr_accessor :shown_image + + # The CLDR territory code of the target country of the product. + # Corresponds to the JSON property `targetCountry` + # @return [String] + attr_accessor :target_country + + # The title of the product. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + # Variant attributes for the item. These are dimensions of the product, such as + # color, gender, material, pattern, and size. You can find a comprehensive list + # of variant attributes here. + # Corresponds to the JSON property `variantAttributes` + # @return [Array] + attr_accessor :variant_attributes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @brand = args[:brand] if args.key?(:brand) + @channel = args[:channel] if args.key?(:channel) + @condition = args[:condition] if args.key?(:condition) + @content_language = args[:content_language] if args.key?(:content_language) + @gtin = args[:gtin] if args.key?(:gtin) + @id = args[:id] if args.key?(:id) + @image_link = args[:image_link] if args.key?(:image_link) + @item_group_id = args[:item_group_id] if args.key?(:item_group_id) + @mpn = args[:mpn] if args.key?(:mpn) + @offer_id = args[:offer_id] if args.key?(:offer_id) + @price = args[:price] if args.key?(:price) + @shown_image = args[:shown_image] if args.key?(:shown_image) + @target_country = args[:target_country] if args.key?(:target_country) + @title = args[:title] if args.key?(:title) + @variant_attributes = args[:variant_attributes] if args.key?(:variant_attributes) + end + end + + # + class OrderLineItemProductVariantAttribute + include Google::Apis::Core::Hashable + + # The dimension of the variant. + # Corresponds to the JSON property `dimension` + # @return [String] + attr_accessor :dimension + + # The value for the dimension. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dimension = args[:dimension] if args.key?(:dimension) + @value = args[:value] if args.key?(:value) + end + end + + # + class OrderLineItemReturnInfo + include Google::Apis::Core::Hashable + + # How many days later the item can be returned. + # Corresponds to the JSON property `daysToReturn` + # @return [Fixnum] + attr_accessor :days_to_return + + # Whether the item is returnable. + # Corresponds to the JSON property `isReturnable` + # @return [Boolean] + attr_accessor :is_returnable + alias_method :is_returnable?, :is_returnable + + # URL of the item return policy. + # Corresponds to the JSON property `policyUrl` + # @return [String] + attr_accessor :policy_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @days_to_return = args[:days_to_return] if args.key?(:days_to_return) + @is_returnable = args[:is_returnable] if args.key?(:is_returnable) + @policy_url = args[:policy_url] if args.key?(:policy_url) + end + end + + # + class OrderLineItemShippingDetails + include Google::Apis::Core::Hashable + + # The delivery by date, in ISO 8601 format. + # Corresponds to the JSON property `deliverByDate` + # @return [String] + attr_accessor :deliver_by_date + + # Details of the shipping method. + # Corresponds to the JSON property `method` + # @return [Google::Apis::ContentV2sandbox::OrderLineItemShippingDetailsMethod] + attr_accessor :method_prop + + # The ship by date, in ISO 8601 format. + # Corresponds to the JSON property `shipByDate` + # @return [String] + attr_accessor :ship_by_date + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deliver_by_date = args[:deliver_by_date] if args.key?(:deliver_by_date) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @ship_by_date = args[:ship_by_date] if args.key?(:ship_by_date) + end + end + + # + class OrderLineItemShippingDetailsMethod + include Google::Apis::Core::Hashable + + # The carrier for the shipping. Optional. + # Corresponds to the JSON property `carrier` + # @return [String] + attr_accessor :carrier + + # Maximum transit time. + # Corresponds to the JSON property `maxDaysInTransit` + # @return [Fixnum] + attr_accessor :max_days_in_transit + + # The name of the shipping method. + # Corresponds to the JSON property `methodName` + # @return [String] + attr_accessor :method_name + + # Minimum transit time. + # Corresponds to the JSON property `minDaysInTransit` + # @return [Fixnum] + attr_accessor :min_days_in_transit + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @carrier = args[:carrier] if args.key?(:carrier) + @max_days_in_transit = args[:max_days_in_transit] if args.key?(:max_days_in_transit) + @method_name = args[:method_name] if args.key?(:method_name) + @min_days_in_transit = args[:min_days_in_transit] if args.key?(:min_days_in_transit) + end + end + + # + class OrderPaymentMethod + include Google::Apis::Core::Hashable + + # The billing address. + # Corresponds to the JSON property `billingAddress` + # @return [Google::Apis::ContentV2sandbox::OrderAddress] + attr_accessor :billing_address + + # The card expiration month (January = 1, February = 2 etc.). + # Corresponds to the JSON property `expirationMonth` + # @return [Fixnum] + attr_accessor :expiration_month + + # The card expiration year (4-digit, e.g. 2015). + # Corresponds to the JSON property `expirationYear` + # @return [Fixnum] + attr_accessor :expiration_year + + # The last four digits of the card number. + # Corresponds to the JSON property `lastFourDigits` + # @return [String] + attr_accessor :last_four_digits + + # The billing phone number. + # Corresponds to the JSON property `phoneNumber` + # @return [String] + attr_accessor :phone_number + + # The type of instrument (VISA, Mastercard, etc). + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @billing_address = args[:billing_address] if args.key?(:billing_address) + @expiration_month = args[:expiration_month] if args.key?(:expiration_month) + @expiration_year = args[:expiration_year] if args.key?(:expiration_year) + @last_four_digits = args[:last_four_digits] if args.key?(:last_four_digits) + @phone_number = args[:phone_number] if args.key?(:phone_number) + @type = args[:type] if args.key?(:type) + end + end + + # + class OrderPromotion + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `benefits` + # @return [Array] + attr_accessor :benefits + + # The date and time frame when the promotion is active and ready for validation + # review. Note that the promotion live time may be delayed for a few hours due + # to the validation review. + # Start date and end date are separated by a forward slash (/). The start date + # is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time + # of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an + # expression of the time zone for the sale. The end date is in the same format. + # Corresponds to the JSON property `effectiveDates` + # @return [String] + attr_accessor :effective_dates + + # Optional. The text code that corresponds to the promotion when applied on the + # retailer?s website. + # Corresponds to the JSON property `genericRedemptionCode` + # @return [String] + attr_accessor :generic_redemption_code + + # The unique ID of the promotion. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The full title of the promotion. + # Corresponds to the JSON property `longTitle` + # @return [String] + attr_accessor :long_title + + # Whether the promotion is applicable to all products or only specific products. + # Corresponds to the JSON property `productApplicability` + # @return [String] + attr_accessor :product_applicability + + # Indicates that the promotion is valid online. + # Corresponds to the JSON property `redemptionChannel` + # @return [String] + attr_accessor :redemption_channel + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @benefits = args[:benefits] if args.key?(:benefits) + @effective_dates = args[:effective_dates] if args.key?(:effective_dates) + @generic_redemption_code = args[:generic_redemption_code] if args.key?(:generic_redemption_code) + @id = args[:id] if args.key?(:id) + @long_title = args[:long_title] if args.key?(:long_title) + @product_applicability = args[:product_applicability] if args.key?(:product_applicability) + @redemption_channel = args[:redemption_channel] if args.key?(:redemption_channel) + end + end + + # + class OrderPromotionBenefit + include Google::Apis::Core::Hashable + + # The discount in the order price when the promotion is applied. + # Corresponds to the JSON property `discount` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :discount + + # The OfferId(s) that were purchased in this order and map to this specific + # benefit of the promotion. + # Corresponds to the JSON property `offerIds` + # @return [Array] + attr_accessor :offer_ids + + # Further describes the benefit of the promotion. Note that we will expand on + # this enumeration as we support new promotion sub-types. + # Corresponds to the JSON property `subType` + # @return [String] + attr_accessor :sub_type + + # The impact on tax when the promotion is applied. + # Corresponds to the JSON property `taxImpact` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :tax_impact + + # Describes whether the promotion applies to products (e.g. 20% off) or to + # shipping (e.g. Free Shipping). + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @discount = args[:discount] if args.key?(:discount) + @offer_ids = args[:offer_ids] if args.key?(:offer_ids) + @sub_type = args[:sub_type] if args.key?(:sub_type) + @tax_impact = args[:tax_impact] if args.key?(:tax_impact) + @type = args[:type] if args.key?(:type) + end + end + + # + class OrderRefund + include Google::Apis::Core::Hashable + + # The actor that created the refund. + # Corresponds to the JSON property `actor` + # @return [String] + attr_accessor :actor + + # The amount that is refunded. + # Corresponds to the JSON property `amount` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :amount + + # Date on which the item has been created, in ISO 8601 format. + # Corresponds to the JSON property `creationDate` + # @return [String] + attr_accessor :creation_date + + # The reason for the refund. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @actor = args[:actor] if args.key?(:actor) + @amount = args[:amount] if args.key?(:amount) + @creation_date = args[:creation_date] if args.key?(:creation_date) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrderReturn + include Google::Apis::Core::Hashable + + # The actor that created the refund. + # Corresponds to the JSON property `actor` + # @return [String] + attr_accessor :actor + + # Date on which the item has been created, in ISO 8601 format. + # Corresponds to the JSON property `creationDate` + # @return [String] + attr_accessor :creation_date + + # Quantity that is returned. + # Corresponds to the JSON property `quantity` + # @return [Fixnum] + attr_accessor :quantity + + # The reason for the return. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @actor = args[:actor] if args.key?(:actor) + @creation_date = args[:creation_date] if args.key?(:creation_date) + @quantity = args[:quantity] if args.key?(:quantity) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrderShipment + include Google::Apis::Core::Hashable + + # The carrier handling the shipment. + # Corresponds to the JSON property `carrier` + # @return [String] + attr_accessor :carrier + + # Date on which the shipment has been created, in ISO 8601 format. + # Corresponds to the JSON property `creationDate` + # @return [String] + attr_accessor :creation_date + + # Date on which the shipment has been delivered, in ISO 8601 format. Present + # only if status is delievered + # Corresponds to the JSON property `deliveryDate` + # @return [String] + attr_accessor :delivery_date + + # The id of the shipment. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The line items that are shipped. + # Corresponds to the JSON property `lineItems` + # @return [Array] + attr_accessor :line_items + + # The status of the shipment. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # The tracking id for the shipment. + # Corresponds to the JSON property `trackingId` + # @return [String] + attr_accessor :tracking_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @carrier = args[:carrier] if args.key?(:carrier) + @creation_date = args[:creation_date] if args.key?(:creation_date) + @delivery_date = args[:delivery_date] if args.key?(:delivery_date) + @id = args[:id] if args.key?(:id) + @line_items = args[:line_items] if args.key?(:line_items) + @status = args[:status] if args.key?(:status) + @tracking_id = args[:tracking_id] if args.key?(:tracking_id) + end + end + + # + class OrderShipmentLineItemShipment + include Google::Apis::Core::Hashable + + # The id of the line item that is shipped. + # Corresponds to the JSON property `lineItemId` + # @return [String] + attr_accessor :line_item_id + + # The quantity that is shipped. + # Corresponds to the JSON property `quantity` + # @return [Fixnum] + attr_accessor :quantity + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @line_item_id = args[:line_item_id] if args.key?(:line_item_id) + @quantity = args[:quantity] if args.key?(:quantity) + end + end + + # + class OrdersAcknowledgeRequest + include Google::Apis::Core::Hashable + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operation_id = args[:operation_id] if args.key?(:operation_id) + end + end + + # + class OrdersAcknowledgeResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersAcknowledgeResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersAdvanceTestOrderResponse + include Google::Apis::Core::Hashable + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersAdvanceTestOrderResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersCancelLineItemRequest + include Google::Apis::Core::Hashable + + # Amount to refund for the cancelation. Optional. If not set, Google will + # calculate the default based on the price and tax of the items involved. The + # amount must not be larger than the net amount left on the order. + # Corresponds to the JSON property `amount` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :amount + + # The ID of the line item to cancel. + # Corresponds to the JSON property `lineItemId` + # @return [String] + attr_accessor :line_item_id + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The quantity to cancel. + # Corresponds to the JSON property `quantity` + # @return [Fixnum] + attr_accessor :quantity + + # The reason for the cancellation. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @amount = args[:amount] if args.key?(:amount) + @line_item_id = args[:line_item_id] if args.key?(:line_item_id) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @quantity = args[:quantity] if args.key?(:quantity) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersCancelLineItemResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersCancelLineItemResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersCancelRequest + include Google::Apis::Core::Hashable + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The reason for the cancellation. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersCancelResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersCancelResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersCreateTestOrderRequest + include Google::Apis::Core::Hashable + + # The test order template to use. Specify as an alternative to testOrder as a + # shortcut for retrieving a template and then creating an order using that + # template. + # Corresponds to the JSON property `templateName` + # @return [String] + attr_accessor :template_name + + # The test order to create. + # Corresponds to the JSON property `testOrder` + # @return [Google::Apis::ContentV2sandbox::TestOrder] + attr_accessor :test_order + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @template_name = args[:template_name] if args.key?(:template_name) + @test_order = args[:test_order] if args.key?(:test_order) + end + end + + # + class OrdersCreateTestOrderResponse + include Google::Apis::Core::Hashable + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersCreateTestOrderResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The ID of the newly created test order. + # Corresponds to the JSON property `orderId` + # @return [String] + attr_accessor :order_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @order_id = args[:order_id] if args.key?(:order_id) + end + end + + # + class OrdersCustomBatchRequest + include Google::Apis::Core::Hashable + + # The request entries to be processed in the batch. + # Corresponds to the JSON property `entries` + # @return [Array] + attr_accessor :entries + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entries = args[:entries] if args.key?(:entries) + end + end + + # + class OrdersCustomBatchRequestEntry + include Google::Apis::Core::Hashable + + # An entry ID, unique within the batch request. + # Corresponds to the JSON property `batchId` + # @return [Fixnum] + attr_accessor :batch_id + + # Required for cancel method. + # Corresponds to the JSON property `cancel` + # @return [Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryCancel] + attr_accessor :cancel + + # Required for cancelLineItem method. + # Corresponds to the JSON property `cancelLineItem` + # @return [Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryCancelLineItem] + attr_accessor :cancel_line_item + + # The ID of the managing account. + # Corresponds to the JSON property `merchantId` + # @return [Fixnum] + attr_accessor :merchant_id + + # The merchant order id. Required for updateMerchantOrderId and + # getByMerchantOrderId methods. + # Corresponds to the JSON property `merchantOrderId` + # @return [String] + attr_accessor :merchant_order_id + + # The method to apply. + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # The ID of the operation. Unique across all operations for a given order. + # Required for all methods beside get and getByMerchantOrderId. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The ID of the order. Required for all methods beside getByMerchantOrderId. + # Corresponds to the JSON property `orderId` + # @return [String] + attr_accessor :order_id + + # Required for refund method. + # Corresponds to the JSON property `refund` + # @return [Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryRefund] + attr_accessor :refund + + # Required for returnLineItem method. + # Corresponds to the JSON property `returnLineItem` + # @return [Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryReturnLineItem] + attr_accessor :return_line_item + + # Required for shipLineItems method. + # Corresponds to the JSON property `shipLineItems` + # @return [Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryShipLineItems] + attr_accessor :ship_line_items + + # Required for updateShipment method. + # Corresponds to the JSON property `updateShipment` + # @return [Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryUpdateShipment] + attr_accessor :update_shipment + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @batch_id = args[:batch_id] if args.key?(:batch_id) + @cancel = args[:cancel] if args.key?(:cancel) + @cancel_line_item = args[:cancel_line_item] if args.key?(:cancel_line_item) + @merchant_id = args[:merchant_id] if args.key?(:merchant_id) + @merchant_order_id = args[:merchant_order_id] if args.key?(:merchant_order_id) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @order_id = args[:order_id] if args.key?(:order_id) + @refund = args[:refund] if args.key?(:refund) + @return_line_item = args[:return_line_item] if args.key?(:return_line_item) + @ship_line_items = args[:ship_line_items] if args.key?(:ship_line_items) + @update_shipment = args[:update_shipment] if args.key?(:update_shipment) + end + end + + # + class OrdersCustomBatchRequestEntryCancel + include Google::Apis::Core::Hashable + + # The reason for the cancellation. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersCustomBatchRequestEntryCancelLineItem + include Google::Apis::Core::Hashable + + # Amount to refund for the cancelation. Optional. If not set, Google will + # calculate the default based on the price and tax of the items involved. The + # amount must not be larger than the net amount left on the order. + # Corresponds to the JSON property `amount` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :amount + + # The ID of the line item to cancel. + # Corresponds to the JSON property `lineItemId` + # @return [String] + attr_accessor :line_item_id + + # The quantity to cancel. + # Corresponds to the JSON property `quantity` + # @return [Fixnum] + attr_accessor :quantity + + # The reason for the cancellation. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @amount = args[:amount] if args.key?(:amount) + @line_item_id = args[:line_item_id] if args.key?(:line_item_id) + @quantity = args[:quantity] if args.key?(:quantity) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersCustomBatchRequestEntryRefund + include Google::Apis::Core::Hashable + + # The amount that is refunded. + # Corresponds to the JSON property `amount` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :amount + + # The reason for the refund. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @amount = args[:amount] if args.key?(:amount) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersCustomBatchRequestEntryReturnLineItem + include Google::Apis::Core::Hashable + + # The ID of the line item to return. + # Corresponds to the JSON property `lineItemId` + # @return [String] + attr_accessor :line_item_id + + # The quantity to return. + # Corresponds to the JSON property `quantity` + # @return [Fixnum] + attr_accessor :quantity + + # The reason for the return. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @line_item_id = args[:line_item_id] if args.key?(:line_item_id) + @quantity = args[:quantity] if args.key?(:quantity) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersCustomBatchRequestEntryShipLineItems + include Google::Apis::Core::Hashable + + # The carrier handling the shipment. + # Corresponds to the JSON property `carrier` + # @return [String] + attr_accessor :carrier + + # Line items to ship. + # Corresponds to the JSON property `lineItems` + # @return [Array] + attr_accessor :line_items + + # The ID of the shipment. + # Corresponds to the JSON property `shipmentId` + # @return [String] + attr_accessor :shipment_id + + # The tracking id for the shipment. + # Corresponds to the JSON property `trackingId` + # @return [String] + attr_accessor :tracking_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @carrier = args[:carrier] if args.key?(:carrier) + @line_items = args[:line_items] if args.key?(:line_items) + @shipment_id = args[:shipment_id] if args.key?(:shipment_id) + @tracking_id = args[:tracking_id] if args.key?(:tracking_id) + end + end + + # + class OrdersCustomBatchRequestEntryUpdateShipment + include Google::Apis::Core::Hashable + + # The carrier handling the shipment. Not updated if missing. + # Corresponds to the JSON property `carrier` + # @return [String] + attr_accessor :carrier + + # The ID of the shipment. + # Corresponds to the JSON property `shipmentId` + # @return [String] + attr_accessor :shipment_id + + # New status for the shipment. Not updated if missing. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # The tracking id for the shipment. Not updated if missing. + # Corresponds to the JSON property `trackingId` + # @return [String] + attr_accessor :tracking_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @carrier = args[:carrier] if args.key?(:carrier) + @shipment_id = args[:shipment_id] if args.key?(:shipment_id) + @status = args[:status] if args.key?(:status) + @tracking_id = args[:tracking_id] if args.key?(:tracking_id) + end + end + + # + class OrdersCustomBatchResponse + include Google::Apis::Core::Hashable + + # The result of the execution of the batch requests. + # Corresponds to the JSON property `entries` + # @return [Array] + attr_accessor :entries + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersCustomBatchResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entries = args[:entries] if args.key?(:entries) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersCustomBatchResponseEntry + include Google::Apis::Core::Hashable + + # The ID of the request entry this entry responds to. + # Corresponds to the JSON property `batchId` + # @return [Fixnum] + attr_accessor :batch_id + + # A list of errors returned by a failed batch entry. + # Corresponds to the JSON property `errors` + # @return [Google::Apis::ContentV2sandbox::Errors] + attr_accessor :errors + + # The status of the execution. Only defined if the method is not get or + # getByMerchantOrderId and if the request was successful. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersCustomBatchResponseEntry". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The retrieved order. Only defined if the method is get and if the request was + # successful. + # Corresponds to the JSON property `order` + # @return [Google::Apis::ContentV2sandbox::Order] + attr_accessor :order + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @batch_id = args[:batch_id] if args.key?(:batch_id) + @errors = args[:errors] if args.key?(:errors) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + @order = args[:order] if args.key?(:order) + end + end + + # + class OrdersGetByMerchantOrderIdResponse + include Google::Apis::Core::Hashable + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersGetByMerchantOrderIdResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The requested order. + # Corresponds to the JSON property `order` + # @return [Google::Apis::ContentV2sandbox::Order] + attr_accessor :order + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @order = args[:order] if args.key?(:order) + end + end + + # + class OrdersGetTestOrderTemplateResponse + include Google::Apis::Core::Hashable + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersGetTestOrderTemplateResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The requested test order template. + # Corresponds to the JSON property `template` + # @return [Google::Apis::ContentV2sandbox::TestOrder] + attr_accessor :template + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @template = args[:template] if args.key?(:template) + end + end + + # + class OrdersListResponse + include Google::Apis::Core::Hashable + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersListResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The token for the retrieval of the next page of orders. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resources = args[:resources] if args.key?(:resources) + end + end + + # + class OrdersRefundRequest + include Google::Apis::Core::Hashable + + # The amount that is refunded. + # Corresponds to the JSON property `amount` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :amount + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The reason for the refund. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @amount = args[:amount] if args.key?(:amount) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersRefundResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersRefundResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersReturnLineItemRequest + include Google::Apis::Core::Hashable + + # The ID of the line item to return. + # Corresponds to the JSON property `lineItemId` + # @return [String] + attr_accessor :line_item_id + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The quantity to return. + # Corresponds to the JSON property `quantity` + # @return [Fixnum] + attr_accessor :quantity + + # The reason for the return. + # Corresponds to the JSON property `reason` + # @return [String] + attr_accessor :reason + + # The explanation of the reason. + # Corresponds to the JSON property `reasonText` + # @return [String] + attr_accessor :reason_text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @line_item_id = args[:line_item_id] if args.key?(:line_item_id) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @quantity = args[:quantity] if args.key?(:quantity) + @reason = args[:reason] if args.key?(:reason) + @reason_text = args[:reason_text] if args.key?(:reason_text) + end + end + + # + class OrdersReturnLineItemResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersReturnLineItemResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersShipLineItemsRequest + include Google::Apis::Core::Hashable + + # The carrier handling the shipment. + # Corresponds to the JSON property `carrier` + # @return [String] + attr_accessor :carrier + + # Line items to ship. + # Corresponds to the JSON property `lineItems` + # @return [Array] + attr_accessor :line_items + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The ID of the shipment. + # Corresponds to the JSON property `shipmentId` + # @return [String] + attr_accessor :shipment_id + + # The tracking id for the shipment. + # Corresponds to the JSON property `trackingId` + # @return [String] + attr_accessor :tracking_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @carrier = args[:carrier] if args.key?(:carrier) + @line_items = args[:line_items] if args.key?(:line_items) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @shipment_id = args[:shipment_id] if args.key?(:shipment_id) + @tracking_id = args[:tracking_id] if args.key?(:tracking_id) + end + end + + # + class OrdersShipLineItemsResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersShipLineItemsResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersUpdateMerchantOrderIdRequest + include Google::Apis::Core::Hashable + + # The merchant order id to be assigned to the order. Must be unique per merchant. + # Corresponds to the JSON property `merchantOrderId` + # @return [String] + attr_accessor :merchant_order_id + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @merchant_order_id = args[:merchant_order_id] if args.key?(:merchant_order_id) + @operation_id = args[:operation_id] if args.key?(:operation_id) + end + end + + # + class OrdersUpdateMerchantOrderIdResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersUpdateMerchantOrderIdResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class OrdersUpdateShipmentRequest + include Google::Apis::Core::Hashable + + # The carrier handling the shipment. Not updated if missing. + # Corresponds to the JSON property `carrier` + # @return [String] + attr_accessor :carrier + + # The ID of the operation. Unique across all operations for a given order. + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # The ID of the shipment. + # Corresponds to the JSON property `shipmentId` + # @return [String] + attr_accessor :shipment_id + + # New status for the shipment. Not updated if missing. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # The tracking id for the shipment. Not updated if missing. + # Corresponds to the JSON property `trackingId` + # @return [String] + attr_accessor :tracking_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @carrier = args[:carrier] if args.key?(:carrier) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @shipment_id = args[:shipment_id] if args.key?(:shipment_id) + @status = args[:status] if args.key?(:status) + @tracking_id = args[:tracking_id] if args.key?(:tracking_id) + end + end + + # + class OrdersUpdateShipmentResponse + include Google::Apis::Core::Hashable + + # The status of the execution. + # Corresponds to the JSON property `executionStatus` + # @return [String] + attr_accessor :execution_status + + # Identifies what kind of resource this is. Value: the fixed string "content# + # ordersUpdateShipmentResponse". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_status = args[:execution_status] if args.key?(:execution_status) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class Price + include Google::Apis::Core::Hashable + + # The currency of the price. + # Corresponds to the JSON property `currency` + # @return [String] + attr_accessor :currency + + # The price represented as a number. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @currency = args[:currency] if args.key?(:currency) + @value = args[:value] if args.key?(:value) + end + end + + # + class TestOrder + include Google::Apis::Core::Hashable + + # The details of the customer who placed the order. + # Corresponds to the JSON property `customer` + # @return [Google::Apis::ContentV2sandbox::TestOrderCustomer] + attr_accessor :customer + + # Identifies what kind of resource this is. Value: the fixed string "content# + # testOrder". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Line items that are ordered. At least one line item must be provided. + # Corresponds to the JSON property `lineItems` + # @return [Array] + attr_accessor :line_items + + # The details of the payment method. + # Corresponds to the JSON property `paymentMethod` + # @return [Google::Apis::ContentV2sandbox::TestOrderPaymentMethod] + attr_accessor :payment_method + + # Identifier of one of the predefined delivery addresses for the delivery. + # Corresponds to the JSON property `predefinedDeliveryAddress` + # @return [String] + attr_accessor :predefined_delivery_address + + # The details of the merchant provided promotions applied to the order. More + # details about the program are here. + # Corresponds to the JSON property `promotions` + # @return [Array] + attr_accessor :promotions + + # The total cost of shipping for all items. + # Corresponds to the JSON property `shippingCost` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :shipping_cost + + # The tax for the total shipping cost. + # Corresponds to the JSON property `shippingCostTax` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :shipping_cost_tax + + # The requested shipping option. + # Corresponds to the JSON property `shippingOption` + # @return [String] + attr_accessor :shipping_option + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @customer = args[:customer] if args.key?(:customer) + @kind = args[:kind] if args.key?(:kind) + @line_items = args[:line_items] if args.key?(:line_items) + @payment_method = args[:payment_method] if args.key?(:payment_method) + @predefined_delivery_address = args[:predefined_delivery_address] if args.key?(:predefined_delivery_address) + @promotions = args[:promotions] if args.key?(:promotions) + @shipping_cost = args[:shipping_cost] if args.key?(:shipping_cost) + @shipping_cost_tax = args[:shipping_cost_tax] if args.key?(:shipping_cost_tax) + @shipping_option = args[:shipping_option] if args.key?(:shipping_option) + end + end + + # + class TestOrderCustomer + include Google::Apis::Core::Hashable + + # Email address of the customer. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # If set, this indicates the user explicitly chose to opt in or out of providing + # marketing rights to the merchant. If unset, this indicates the user has + # already made this choice in a previous purchase, and was thus not shown the + # marketing right opt in/out checkbox during the checkout flow. Optional. + # Corresponds to the JSON property `explicitMarketingPreference` + # @return [Boolean] + attr_accessor :explicit_marketing_preference + alias_method :explicit_marketing_preference?, :explicit_marketing_preference + + # Full name of the customer. + # Corresponds to the JSON property `fullName` + # @return [String] + attr_accessor :full_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + @explicit_marketing_preference = args[:explicit_marketing_preference] if args.key?(:explicit_marketing_preference) + @full_name = args[:full_name] if args.key?(:full_name) + end + end + + # + class TestOrderLineItem + include Google::Apis::Core::Hashable + + # Product data from the time of the order placement. + # Corresponds to the JSON property `product` + # @return [Google::Apis::ContentV2sandbox::TestOrderLineItemProduct] + attr_accessor :product + + # Number of items ordered. + # Corresponds to the JSON property `quantityOrdered` + # @return [Fixnum] + attr_accessor :quantity_ordered + + # Details of the return policy for the line item. + # Corresponds to the JSON property `returnInfo` + # @return [Google::Apis::ContentV2sandbox::OrderLineItemReturnInfo] + attr_accessor :return_info + + # Details of the requested shipping for the line item. + # Corresponds to the JSON property `shippingDetails` + # @return [Google::Apis::ContentV2sandbox::OrderLineItemShippingDetails] + attr_accessor :shipping_details + + # Unit tax for the line item. + # Corresponds to the JSON property `unitTax` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :unit_tax + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @product = args[:product] if args.key?(:product) + @quantity_ordered = args[:quantity_ordered] if args.key?(:quantity_ordered) + @return_info = args[:return_info] if args.key?(:return_info) + @shipping_details = args[:shipping_details] if args.key?(:shipping_details) + @unit_tax = args[:unit_tax] if args.key?(:unit_tax) + end + end + + # + class TestOrderLineItemProduct + include Google::Apis::Core::Hashable + + # Brand of the item. + # Corresponds to the JSON property `brand` + # @return [String] + attr_accessor :brand + + # The item's channel. + # Corresponds to the JSON property `channel` + # @return [String] + attr_accessor :channel + + # Condition or state of the item. + # Corresponds to the JSON property `condition` + # @return [String] + attr_accessor :condition + + # The two-letter ISO 639-1 language code for the item. + # Corresponds to the JSON property `contentLanguage` + # @return [String] + attr_accessor :content_language + + # Global Trade Item Number (GTIN) of the item. Optional. + # Corresponds to the JSON property `gtin` + # @return [String] + attr_accessor :gtin + + # URL of an image of the item. + # Corresponds to the JSON property `imageLink` + # @return [String] + attr_accessor :image_link + + # Shared identifier for all variants of the same product. Optional. + # Corresponds to the JSON property `itemGroupId` + # @return [String] + attr_accessor :item_group_id + + # Manufacturer Part Number (MPN) of the item. Optional. + # Corresponds to the JSON property `mpn` + # @return [String] + attr_accessor :mpn + + # An identifier of the item. + # Corresponds to the JSON property `offerId` + # @return [String] + attr_accessor :offer_id + + # The price for the product. + # Corresponds to the JSON property `price` + # @return [Google::Apis::ContentV2sandbox::Price] + attr_accessor :price + + # The CLDR territory code of the target country of the product. + # Corresponds to the JSON property `targetCountry` + # @return [String] + attr_accessor :target_country + + # The title of the product. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + # Variant attributes for the item. Optional. + # Corresponds to the JSON property `variantAttributes` + # @return [Array] + attr_accessor :variant_attributes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @brand = args[:brand] if args.key?(:brand) + @channel = args[:channel] if args.key?(:channel) + @condition = args[:condition] if args.key?(:condition) + @content_language = args[:content_language] if args.key?(:content_language) + @gtin = args[:gtin] if args.key?(:gtin) + @image_link = args[:image_link] if args.key?(:image_link) + @item_group_id = args[:item_group_id] if args.key?(:item_group_id) + @mpn = args[:mpn] if args.key?(:mpn) + @offer_id = args[:offer_id] if args.key?(:offer_id) + @price = args[:price] if args.key?(:price) + @target_country = args[:target_country] if args.key?(:target_country) + @title = args[:title] if args.key?(:title) + @variant_attributes = args[:variant_attributes] if args.key?(:variant_attributes) + end + end + + # + class TestOrderPaymentMethod + include Google::Apis::Core::Hashable + + # The card expiration month (January = 1, February = 2 etc.). + # Corresponds to the JSON property `expirationMonth` + # @return [Fixnum] + attr_accessor :expiration_month + + # The card expiration year (4-digit, e.g. 2015). + # Corresponds to the JSON property `expirationYear` + # @return [Fixnum] + attr_accessor :expiration_year + + # The last four digits of the card number. + # Corresponds to the JSON property `lastFourDigits` + # @return [String] + attr_accessor :last_four_digits + + # The billing address. + # Corresponds to the JSON property `predefinedBillingAddress` + # @return [String] + attr_accessor :predefined_billing_address + + # The type of instrument. Note that real orders might have different values than + # the four values accepted by createTestOrder. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @expiration_month = args[:expiration_month] if args.key?(:expiration_month) + @expiration_year = args[:expiration_year] if args.key?(:expiration_year) + @last_four_digits = args[:last_four_digits] if args.key?(:last_four_digits) + @predefined_billing_address = args[:predefined_billing_address] if args.key?(:predefined_billing_address) + @type = args[:type] if args.key?(:type) + end + end + end + end +end diff --git a/generated/google/apis/content_v2sandbox/representations.rb b/generated/google/apis/content_v2sandbox/representations.rb new file mode 100644 index 000000000..1e57fb028 --- /dev/null +++ b/generated/google/apis/content_v2sandbox/representations.rb @@ -0,0 +1,1042 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ContentV2sandbox + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Errors + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Order + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderAddress + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderCancellation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderCustomer + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderDeliveryDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderLineItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderLineItemProduct + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderLineItemProductVariantAttribute + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderLineItemReturnInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderLineItemShippingDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderLineItemShippingDetailsMethod + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderPaymentMethod + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderPromotion + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderPromotionBenefit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderRefund + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderReturn + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderShipment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrderShipmentLineItemShipment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersAcknowledgeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersAcknowledgeResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersAdvanceTestOrderResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCancelLineItemRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCancelLineItemResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCancelRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCancelResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCreateTestOrderRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCreateTestOrderResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequestEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequestEntryCancel + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequestEntryCancelLineItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequestEntryRefund + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequestEntryReturnLineItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequestEntryShipLineItems + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchRequestEntryUpdateShipment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersCustomBatchResponseEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersGetByMerchantOrderIdResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersGetTestOrderTemplateResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersRefundRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersRefundResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersReturnLineItemRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersReturnLineItemResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersShipLineItemsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersShipLineItemsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersUpdateMerchantOrderIdRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersUpdateMerchantOrderIdResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersUpdateShipmentRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrdersUpdateShipmentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Price + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestOrder + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestOrderCustomer + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestOrderLineItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestOrderLineItemProduct + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestOrderPaymentMethod + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :domain, as: 'domain' + property :message, as: 'message' + property :reason, as: 'reason' + end + end + + class Errors + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :errors, as: 'errors', class: Google::Apis::ContentV2sandbox::Error, decorator: Google::Apis::ContentV2sandbox::Error::Representation + + property :message, as: 'message' + end + end + + class Order + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :acknowledged, as: 'acknowledged' + property :channel_type, as: 'channelType' + property :customer, as: 'customer', class: Google::Apis::ContentV2sandbox::OrderCustomer, decorator: Google::Apis::ContentV2sandbox::OrderCustomer::Representation + + property :delivery_details, as: 'deliveryDetails', class: Google::Apis::ContentV2sandbox::OrderDeliveryDetails, decorator: Google::Apis::ContentV2sandbox::OrderDeliveryDetails::Representation + + property :id, as: 'id' + property :kind, as: 'kind' + collection :line_items, as: 'lineItems', class: Google::Apis::ContentV2sandbox::OrderLineItem, decorator: Google::Apis::ContentV2sandbox::OrderLineItem::Representation + + property :merchant_id, :numeric_string => true, as: 'merchantId' + property :merchant_order_id, as: 'merchantOrderId' + property :net_amount, as: 'netAmount', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :payment_method, as: 'paymentMethod', class: Google::Apis::ContentV2sandbox::OrderPaymentMethod, decorator: Google::Apis::ContentV2sandbox::OrderPaymentMethod::Representation + + property :payment_status, as: 'paymentStatus' + property :placed_date, as: 'placedDate' + collection :promotions, as: 'promotions', class: Google::Apis::ContentV2sandbox::OrderPromotion, decorator: Google::Apis::ContentV2sandbox::OrderPromotion::Representation + + collection :refunds, as: 'refunds', class: Google::Apis::ContentV2sandbox::OrderRefund, decorator: Google::Apis::ContentV2sandbox::OrderRefund::Representation + + collection :shipments, as: 'shipments', class: Google::Apis::ContentV2sandbox::OrderShipment, decorator: Google::Apis::ContentV2sandbox::OrderShipment::Representation + + property :shipping_cost, as: 'shippingCost', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :shipping_cost_tax, as: 'shippingCostTax', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :shipping_option, as: 'shippingOption' + property :status, as: 'status' + end + end + + class OrderAddress + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :country, as: 'country' + collection :full_address, as: 'fullAddress' + property :is_post_office_box, as: 'isPostOfficeBox' + property :locality, as: 'locality' + property :postal_code, as: 'postalCode' + property :recipient_name, as: 'recipientName' + property :region, as: 'region' + collection :street_address, as: 'streetAddress' + end + end + + class OrderCancellation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :actor, as: 'actor' + property :creation_date, as: 'creationDate' + property :quantity, as: 'quantity' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrderCustomer + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + property :explicit_marketing_preference, as: 'explicitMarketingPreference' + property :full_name, as: 'fullName' + end + end + + class OrderDeliveryDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :address, as: 'address', class: Google::Apis::ContentV2sandbox::OrderAddress, decorator: Google::Apis::ContentV2sandbox::OrderAddress::Representation + + property :phone_number, as: 'phoneNumber' + end + end + + class OrderLineItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :cancellations, as: 'cancellations', class: Google::Apis::ContentV2sandbox::OrderCancellation, decorator: Google::Apis::ContentV2sandbox::OrderCancellation::Representation + + property :id, as: 'id' + property :price, as: 'price', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :product, as: 'product', class: Google::Apis::ContentV2sandbox::OrderLineItemProduct, decorator: Google::Apis::ContentV2sandbox::OrderLineItemProduct::Representation + + property :quantity_canceled, as: 'quantityCanceled' + property :quantity_delivered, as: 'quantityDelivered' + property :quantity_ordered, as: 'quantityOrdered' + property :quantity_pending, as: 'quantityPending' + property :quantity_returned, as: 'quantityReturned' + property :quantity_shipped, as: 'quantityShipped' + property :return_info, as: 'returnInfo', class: Google::Apis::ContentV2sandbox::OrderLineItemReturnInfo, decorator: Google::Apis::ContentV2sandbox::OrderLineItemReturnInfo::Representation + + collection :returns, as: 'returns', class: Google::Apis::ContentV2sandbox::OrderReturn, decorator: Google::Apis::ContentV2sandbox::OrderReturn::Representation + + property :shipping_details, as: 'shippingDetails', class: Google::Apis::ContentV2sandbox::OrderLineItemShippingDetails, decorator: Google::Apis::ContentV2sandbox::OrderLineItemShippingDetails::Representation + + property :tax, as: 'tax', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + end + end + + class OrderLineItemProduct + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :brand, as: 'brand' + property :channel, as: 'channel' + property :condition, as: 'condition' + property :content_language, as: 'contentLanguage' + property :gtin, as: 'gtin' + property :id, as: 'id' + property :image_link, as: 'imageLink' + property :item_group_id, as: 'itemGroupId' + property :mpn, as: 'mpn' + property :offer_id, as: 'offerId' + property :price, as: 'price', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :shown_image, as: 'shownImage' + property :target_country, as: 'targetCountry' + property :title, as: 'title' + collection :variant_attributes, as: 'variantAttributes', class: Google::Apis::ContentV2sandbox::OrderLineItemProductVariantAttribute, decorator: Google::Apis::ContentV2sandbox::OrderLineItemProductVariantAttribute::Representation + + end + end + + class OrderLineItemProductVariantAttribute + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dimension, as: 'dimension' + property :value, as: 'value' + end + end + + class OrderLineItemReturnInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :days_to_return, as: 'daysToReturn' + property :is_returnable, as: 'isReturnable' + property :policy_url, as: 'policyUrl' + end + end + + class OrderLineItemShippingDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :deliver_by_date, as: 'deliverByDate' + property :method_prop, as: 'method', class: Google::Apis::ContentV2sandbox::OrderLineItemShippingDetailsMethod, decorator: Google::Apis::ContentV2sandbox::OrderLineItemShippingDetailsMethod::Representation + + property :ship_by_date, as: 'shipByDate' + end + end + + class OrderLineItemShippingDetailsMethod + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :carrier, as: 'carrier' + property :max_days_in_transit, as: 'maxDaysInTransit' + property :method_name, as: 'methodName' + property :min_days_in_transit, as: 'minDaysInTransit' + end + end + + class OrderPaymentMethod + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :billing_address, as: 'billingAddress', class: Google::Apis::ContentV2sandbox::OrderAddress, decorator: Google::Apis::ContentV2sandbox::OrderAddress::Representation + + property :expiration_month, as: 'expirationMonth' + property :expiration_year, as: 'expirationYear' + property :last_four_digits, as: 'lastFourDigits' + property :phone_number, as: 'phoneNumber' + property :type, as: 'type' + end + end + + class OrderPromotion + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :benefits, as: 'benefits', class: Google::Apis::ContentV2sandbox::OrderPromotionBenefit, decorator: Google::Apis::ContentV2sandbox::OrderPromotionBenefit::Representation + + property :effective_dates, as: 'effectiveDates' + property :generic_redemption_code, as: 'genericRedemptionCode' + property :id, as: 'id' + property :long_title, as: 'longTitle' + property :product_applicability, as: 'productApplicability' + property :redemption_channel, as: 'redemptionChannel' + end + end + + class OrderPromotionBenefit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :discount, as: 'discount', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + collection :offer_ids, as: 'offerIds' + property :sub_type, as: 'subType' + property :tax_impact, as: 'taxImpact', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :type, as: 'type' + end + end + + class OrderRefund + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :actor, as: 'actor' + property :amount, as: 'amount', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :creation_date, as: 'creationDate' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrderReturn + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :actor, as: 'actor' + property :creation_date, as: 'creationDate' + property :quantity, as: 'quantity' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrderShipment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :carrier, as: 'carrier' + property :creation_date, as: 'creationDate' + property :delivery_date, as: 'deliveryDate' + property :id, as: 'id' + collection :line_items, as: 'lineItems', class: Google::Apis::ContentV2sandbox::OrderShipmentLineItemShipment, decorator: Google::Apis::ContentV2sandbox::OrderShipmentLineItemShipment::Representation + + property :status, as: 'status' + property :tracking_id, as: 'trackingId' + end + end + + class OrderShipmentLineItemShipment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :line_item_id, as: 'lineItemId' + property :quantity, as: 'quantity' + end + end + + class OrdersAcknowledgeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :operation_id, as: 'operationId' + end + end + + class OrdersAcknowledgeResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class OrdersAdvanceTestOrderResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + end + end + + class OrdersCancelLineItemRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :amount, as: 'amount', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :line_item_id, as: 'lineItemId' + property :operation_id, as: 'operationId' + property :quantity, as: 'quantity' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersCancelLineItemResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class OrdersCancelRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :operation_id, as: 'operationId' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersCancelResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class OrdersCreateTestOrderRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :template_name, as: 'templateName' + property :test_order, as: 'testOrder', class: Google::Apis::ContentV2sandbox::TestOrder, decorator: Google::Apis::ContentV2sandbox::TestOrder::Representation + + end + end + + class OrdersCreateTestOrderResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :order_id, as: 'orderId' + end + end + + class OrdersCustomBatchRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :entries, as: 'entries', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntry, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntry::Representation + + end + end + + class OrdersCustomBatchRequestEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :batch_id, as: 'batchId' + property :cancel, as: 'cancel', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryCancel, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryCancel::Representation + + property :cancel_line_item, as: 'cancelLineItem', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryCancelLineItem, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryCancelLineItem::Representation + + property :merchant_id, :numeric_string => true, as: 'merchantId' + property :merchant_order_id, as: 'merchantOrderId' + property :method_prop, as: 'method' + property :operation_id, as: 'operationId' + property :order_id, as: 'orderId' + property :refund, as: 'refund', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryRefund, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryRefund::Representation + + property :return_line_item, as: 'returnLineItem', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryReturnLineItem, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryReturnLineItem::Representation + + property :ship_line_items, as: 'shipLineItems', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryShipLineItems, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryShipLineItems::Representation + + property :update_shipment, as: 'updateShipment', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryUpdateShipment, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchRequestEntryUpdateShipment::Representation + + end + end + + class OrdersCustomBatchRequestEntryCancel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersCustomBatchRequestEntryCancelLineItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :amount, as: 'amount', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :line_item_id, as: 'lineItemId' + property :quantity, as: 'quantity' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersCustomBatchRequestEntryRefund + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :amount, as: 'amount', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersCustomBatchRequestEntryReturnLineItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :line_item_id, as: 'lineItemId' + property :quantity, as: 'quantity' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersCustomBatchRequestEntryShipLineItems + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :carrier, as: 'carrier' + collection :line_items, as: 'lineItems', class: Google::Apis::ContentV2sandbox::OrderShipmentLineItemShipment, decorator: Google::Apis::ContentV2sandbox::OrderShipmentLineItemShipment::Representation + + property :shipment_id, as: 'shipmentId' + property :tracking_id, as: 'trackingId' + end + end + + class OrdersCustomBatchRequestEntryUpdateShipment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :carrier, as: 'carrier' + property :shipment_id, as: 'shipmentId' + property :status, as: 'status' + property :tracking_id, as: 'trackingId' + end + end + + class OrdersCustomBatchResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :entries, as: 'entries', class: Google::Apis::ContentV2sandbox::OrdersCustomBatchResponseEntry, decorator: Google::Apis::ContentV2sandbox::OrdersCustomBatchResponseEntry::Representation + + property :kind, as: 'kind' + end + end + + class OrdersCustomBatchResponseEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :batch_id, as: 'batchId' + property :errors, as: 'errors', class: Google::Apis::ContentV2sandbox::Errors, decorator: Google::Apis::ContentV2sandbox::Errors::Representation + + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + property :order, as: 'order', class: Google::Apis::ContentV2sandbox::Order, decorator: Google::Apis::ContentV2sandbox::Order::Representation + + end + end + + class OrdersGetByMerchantOrderIdResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :order, as: 'order', class: Google::Apis::ContentV2sandbox::Order, decorator: Google::Apis::ContentV2sandbox::Order::Representation + + end + end + + class OrdersGetTestOrderTemplateResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :template, as: 'template', class: Google::Apis::ContentV2sandbox::TestOrder, decorator: Google::Apis::ContentV2sandbox::TestOrder::Representation + + end + end + + class OrdersListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :resources, as: 'resources', class: Google::Apis::ContentV2sandbox::Order, decorator: Google::Apis::ContentV2sandbox::Order::Representation + + end + end + + class OrdersRefundRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :amount, as: 'amount', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :operation_id, as: 'operationId' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersRefundResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class OrdersReturnLineItemRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :line_item_id, as: 'lineItemId' + property :operation_id, as: 'operationId' + property :quantity, as: 'quantity' + property :reason, as: 'reason' + property :reason_text, as: 'reasonText' + end + end + + class OrdersReturnLineItemResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class OrdersShipLineItemsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :carrier, as: 'carrier' + collection :line_items, as: 'lineItems', class: Google::Apis::ContentV2sandbox::OrderShipmentLineItemShipment, decorator: Google::Apis::ContentV2sandbox::OrderShipmentLineItemShipment::Representation + + property :operation_id, as: 'operationId' + property :shipment_id, as: 'shipmentId' + property :tracking_id, as: 'trackingId' + end + end + + class OrdersShipLineItemsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class OrdersUpdateMerchantOrderIdRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :merchant_order_id, as: 'merchantOrderId' + property :operation_id, as: 'operationId' + end + end + + class OrdersUpdateMerchantOrderIdResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class OrdersUpdateShipmentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :carrier, as: 'carrier' + property :operation_id, as: 'operationId' + property :shipment_id, as: 'shipmentId' + property :status, as: 'status' + property :tracking_id, as: 'trackingId' + end + end + + class OrdersUpdateShipmentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_status, as: 'executionStatus' + property :kind, as: 'kind' + end + end + + class Price + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :currency, as: 'currency' + property :value, as: 'value' + end + end + + class TestOrder + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :customer, as: 'customer', class: Google::Apis::ContentV2sandbox::TestOrderCustomer, decorator: Google::Apis::ContentV2sandbox::TestOrderCustomer::Representation + + property :kind, as: 'kind' + collection :line_items, as: 'lineItems', class: Google::Apis::ContentV2sandbox::TestOrderLineItem, decorator: Google::Apis::ContentV2sandbox::TestOrderLineItem::Representation + + property :payment_method, as: 'paymentMethod', class: Google::Apis::ContentV2sandbox::TestOrderPaymentMethod, decorator: Google::Apis::ContentV2sandbox::TestOrderPaymentMethod::Representation + + property :predefined_delivery_address, as: 'predefinedDeliveryAddress' + collection :promotions, as: 'promotions', class: Google::Apis::ContentV2sandbox::OrderPromotion, decorator: Google::Apis::ContentV2sandbox::OrderPromotion::Representation + + property :shipping_cost, as: 'shippingCost', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :shipping_cost_tax, as: 'shippingCostTax', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :shipping_option, as: 'shippingOption' + end + end + + class TestOrderCustomer + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + property :explicit_marketing_preference, as: 'explicitMarketingPreference' + property :full_name, as: 'fullName' + end + end + + class TestOrderLineItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :product, as: 'product', class: Google::Apis::ContentV2sandbox::TestOrderLineItemProduct, decorator: Google::Apis::ContentV2sandbox::TestOrderLineItemProduct::Representation + + property :quantity_ordered, as: 'quantityOrdered' + property :return_info, as: 'returnInfo', class: Google::Apis::ContentV2sandbox::OrderLineItemReturnInfo, decorator: Google::Apis::ContentV2sandbox::OrderLineItemReturnInfo::Representation + + property :shipping_details, as: 'shippingDetails', class: Google::Apis::ContentV2sandbox::OrderLineItemShippingDetails, decorator: Google::Apis::ContentV2sandbox::OrderLineItemShippingDetails::Representation + + property :unit_tax, as: 'unitTax', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + end + end + + class TestOrderLineItemProduct + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :brand, as: 'brand' + property :channel, as: 'channel' + property :condition, as: 'condition' + property :content_language, as: 'contentLanguage' + property :gtin, as: 'gtin' + property :image_link, as: 'imageLink' + property :item_group_id, as: 'itemGroupId' + property :mpn, as: 'mpn' + property :offer_id, as: 'offerId' + property :price, as: 'price', class: Google::Apis::ContentV2sandbox::Price, decorator: Google::Apis::ContentV2sandbox::Price::Representation + + property :target_country, as: 'targetCountry' + property :title, as: 'title' + collection :variant_attributes, as: 'variantAttributes', class: Google::Apis::ContentV2sandbox::OrderLineItemProductVariantAttribute, decorator: Google::Apis::ContentV2sandbox::OrderLineItemProductVariantAttribute::Representation + + end + end + + class TestOrderPaymentMethod + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :expiration_month, as: 'expirationMonth' + property :expiration_year, as: 'expirationYear' + property :last_four_digits, as: 'lastFourDigits' + property :predefined_billing_address, as: 'predefinedBillingAddress' + property :type, as: 'type' + end + end + end + end +end diff --git a/generated/google/apis/content_v2sandbox/service.rb b/generated/google/apis/content_v2sandbox/service.rb new file mode 100644 index 000000000..acb2bdb04 --- /dev/null +++ b/generated/google/apis/content_v2sandbox/service.rb @@ -0,0 +1,709 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ContentV2sandbox + # Content API for Shopping + # + # Manages product items, inventory, and Merchant Center accounts for Google + # Shopping. + # + # @example + # require 'google/apis/content_v2sandbox' + # + # Content = Google::Apis::ContentV2sandbox # Alias the module + # service = Content::ShoppingContentService.new + # + # @see https://developers.google.com/shopping-content + class ShoppingContentService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'content/v2sandbox/') + @batch_path = 'batch' + end + + # Marks an order as acknowledged. This method can only be called for non-multi- + # client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order. + # @param [Google::Apis::ContentV2sandbox::OrdersAcknowledgeRequest] orders_acknowledge_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersAcknowledgeResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersAcknowledgeResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def acknowledge_order(merchant_id, order_id, orders_acknowledge_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/acknowledge', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersAcknowledgeRequest::Representation + command.request_object = orders_acknowledge_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersAcknowledgeResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersAcknowledgeResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sandbox only. Moves a test order from state "inProgress" to state " + # pendingShipment". This method can only be called for non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the test order to modify. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersAdvanceTestOrderResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersAdvanceTestOrderResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def advancetestorder_order(merchant_id, order_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/testorders/{orderId}/advance', options) + command.response_representation = Google::Apis::ContentV2sandbox::OrdersAdvanceTestOrderResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersAdvanceTestOrderResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Cancels all line items in an order, making a full refund. This method can only + # be called for non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order to cancel. + # @param [Google::Apis::ContentV2sandbox::OrdersCancelRequest] orders_cancel_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersCancelResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersCancelResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_order(merchant_id, order_id, orders_cancel_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/cancel', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersCancelRequest::Representation + command.request_object = orders_cancel_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersCancelResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersCancelResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Cancels a line item, making a full refund. This method can only be called for + # non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order. + # @param [Google::Apis::ContentV2sandbox::OrdersCancelLineItemRequest] orders_cancel_line_item_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersCancelLineItemResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersCancelLineItemResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancellineitem_order(merchant_id, order_id, orders_cancel_line_item_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/cancelLineItem', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersCancelLineItemRequest::Representation + command.request_object = orders_cancel_line_item_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersCancelLineItemResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersCancelLineItemResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sandbox only. Creates a test order. This method can only be called for non- + # multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [Google::Apis::ContentV2sandbox::OrdersCreateTestOrderRequest] orders_create_test_order_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersCreateTestOrderResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersCreateTestOrderResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def createtestorder_order(merchant_id, orders_create_test_order_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/testorders', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersCreateTestOrderRequest::Representation + command.request_object = orders_create_test_order_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersCreateTestOrderResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersCreateTestOrderResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves or modifies multiple orders in a single request. This method can + # only be called for non-multi-client accounts. + # @param [Google::Apis::ContentV2sandbox::OrdersCustomBatchRequest] orders_custom_batch_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersCustomBatchResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersCustomBatchResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def custombatch_order(orders_custom_batch_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'orders/batch', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersCustomBatchRequest::Representation + command.request_object = orders_custom_batch_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersCustomBatchResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersCustomBatchResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an order from your Merchant Center account. This method can only be + # called for non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::Order] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::Order] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_order(merchant_id, order_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{merchantId}/orders/{orderId}', options) + command.response_representation = Google::Apis::ContentV2sandbox::Order::Representation + command.response_class = Google::Apis::ContentV2sandbox::Order + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an order using merchant order id. This method can only be called for + # non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] merchant_order_id + # The merchant order id to be looked for. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersGetByMerchantOrderIdResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersGetByMerchantOrderIdResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def getbymerchantorderid_order(merchant_id, merchant_order_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{merchantId}/ordersbymerchantid/{merchantOrderId}', options) + command.response_representation = Google::Apis::ContentV2sandbox::OrdersGetByMerchantOrderIdResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersGetByMerchantOrderIdResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['merchantOrderId'] = merchant_order_id unless merchant_order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sandbox only. Retrieves an order template that can be used to quickly create a + # new order in sandbox. This method can only be called for non-multi-client + # accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] template_name + # The name of the template to retrieve. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersGetTestOrderTemplateResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersGetTestOrderTemplateResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def gettestordertemplate_order(merchant_id, template_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{merchantId}/testordertemplates/{templateName}', options) + command.response_representation = Google::Apis::ContentV2sandbox::OrdersGetTestOrderTemplateResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersGetTestOrderTemplateResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['templateName'] = template_name unless template_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists the orders in your Merchant Center account. This method can only be + # called for non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [Boolean] acknowledged + # Obtains orders that match the acknowledgement status. When set to true, + # obtains orders that have been acknowledged. When false, obtains orders that + # have not been acknowledged. + # We recommend using this filter set to false, in conjunction with the + # acknowledge call, such that only un-acknowledged orders are returned. + # @param [Fixnum] max_results + # The maximum number of orders to return in the response, used for paging. The + # default value is 25 orders per page, and the maximum allowed value is 250 + # orders per page. + # Known issue: All List calls will return all Orders without limit regardless of + # the value of this field. + # @param [String] order_by + # The ordering of the returned list. The only supported value are placedDate + # desc and placedDate asc for now, which returns orders sorted by placement date. + # "placedDate desc" stands for listing orders by placement date, from oldest to + # most recent. "placedDate asc" stands for listing orders by placement date, + # from most recent to oldest. In future releases we'll support other sorting + # criteria. + # @param [String] page_token + # The token returned by the previous request. + # @param [String] placed_date_end + # Obtains orders placed before this date (exclusively), in ISO 8601 format. + # @param [String] placed_date_start + # Obtains orders placed after this date (inclusively), in ISO 8601 format. + # @param [Array, String] statuses + # Obtains orders that match any of the specified statuses. Multiple values can + # be specified with comma separation. Additionally, please note that active is a + # shortcut for pendingShipment and partiallyShipped, and completed is a shortcut + # for shipped , partiallyDelivered, delivered, partiallyReturned, returned, and + # canceled. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_orders(merchant_id, acknowledged: nil, max_results: nil, order_by: nil, page_token: nil, placed_date_end: nil, placed_date_start: nil, statuses: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{merchantId}/orders', options) + command.response_representation = Google::Apis::ContentV2sandbox::OrdersListResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersListResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.query['acknowledged'] = acknowledged unless acknowledged.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['placedDateEnd'] = placed_date_end unless placed_date_end.nil? + command.query['placedDateStart'] = placed_date_start unless placed_date_start.nil? + command.query['statuses'] = statuses unless statuses.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Refund a portion of the order, up to the full amount paid. This method can + # only be called for non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order to refund. + # @param [Google::Apis::ContentV2sandbox::OrdersRefundRequest] orders_refund_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersRefundResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersRefundResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def refund_order(merchant_id, order_id, orders_refund_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/refund', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersRefundRequest::Representation + command.request_object = orders_refund_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersRefundResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersRefundResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns a line item. This method can only be called for non-multi-client + # accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order. + # @param [Google::Apis::ContentV2sandbox::OrdersReturnLineItemRequest] orders_return_line_item_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersReturnLineItemResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersReturnLineItemResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def returnlineitem_order(merchant_id, order_id, orders_return_line_item_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/returnLineItem', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersReturnLineItemRequest::Representation + command.request_object = orders_return_line_item_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersReturnLineItemResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersReturnLineItemResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Marks line item(s) as shipped. This method can only be called for non-multi- + # client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order. + # @param [Google::Apis::ContentV2sandbox::OrdersShipLineItemsRequest] orders_ship_line_items_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersShipLineItemsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersShipLineItemsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def shiplineitems_order(merchant_id, order_id, orders_ship_line_items_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/shipLineItems', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersShipLineItemsRequest::Representation + command.request_object = orders_ship_line_items_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersShipLineItemsResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersShipLineItemsResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the merchant order ID for a given order. This method can only be + # called for non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order. + # @param [Google::Apis::ContentV2sandbox::OrdersUpdateMerchantOrderIdRequest] orders_update_merchant_order_id_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersUpdateMerchantOrderIdResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersUpdateMerchantOrderIdResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def updatemerchantorderid_order(merchant_id, order_id, orders_update_merchant_order_id_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/updateMerchantOrderId', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersUpdateMerchantOrderIdRequest::Representation + command.request_object = orders_update_merchant_order_id_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersUpdateMerchantOrderIdResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersUpdateMerchantOrderIdResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a shipment's status, carrier, and/or tracking ID. This method can only + # be called for non-multi-client accounts. + # @param [Fixnum] merchant_id + # The ID of the managing account. + # @param [String] order_id + # The ID of the order. + # @param [Google::Apis::ContentV2sandbox::OrdersUpdateShipmentRequest] orders_update_shipment_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ContentV2sandbox::OrdersUpdateShipmentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ContentV2sandbox::OrdersUpdateShipmentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def updateshipment_order(merchant_id, order_id, orders_update_shipment_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{merchantId}/orders/{orderId}/updateShipment', options) + command.request_representation = Google::Apis::ContentV2sandbox::OrdersUpdateShipmentRequest::Representation + command.request_object = orders_update_shipment_request_object + command.response_representation = Google::Apis::ContentV2sandbox::OrdersUpdateShipmentResponse::Representation + command.response_class = Google::Apis::ContentV2sandbox::OrdersUpdateShipmentResponse + command.params['merchantId'] = merchant_id unless merchant_id.nil? + command.params['orderId'] = order_id unless order_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/dataproc_v1beta2.rb b/generated/google/apis/dataproc_v1beta2.rb new file mode 100644 index 000000000..c644d75c7 --- /dev/null +++ b/generated/google/apis/dataproc_v1beta2.rb @@ -0,0 +1,34 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/dataproc_v1beta2/service.rb' +require 'google/apis/dataproc_v1beta2/classes.rb' +require 'google/apis/dataproc_v1beta2/representations.rb' + +module Google + module Apis + # Google Cloud Dataproc API + # + # Manages Hadoop-based clusters and jobs on Google Cloud Platform. + # + # @see https://cloud.google.com/dataproc/ + module DataprocV1beta2 + VERSION = 'V1beta2' + REVISION = '20170822' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + end + end +end diff --git a/generated/google/apis/dataproc_v1beta2/classes.rb b/generated/google/apis/dataproc_v1beta2/classes.rb new file mode 100644 index 000000000..32e733256 --- /dev/null +++ b/generated/google/apis/dataproc_v1beta2/classes.rb @@ -0,0 +1,1756 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DataprocV1beta2 + + # Specifies the type and number of accelerator cards attached to the instances + # of an instance group (see GPUs on Compute Engine). + class AcceleratorConfig + include Google::Apis::Core::Hashable + + # The number of the accelerator cards of this type exposed to this instance. + # Corresponds to the JSON property `acceleratorCount` + # @return [Fixnum] + attr_accessor :accelerator_count + + # Full URL, partial URI, or short name of the accelerator type resource to + # expose to this instance. See Google Compute Engine AcceleratorTypes( /compute/ + # docs/reference/beta/acceleratorTypes)Examples * https://www.googleapis.com/ + # compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia- + # tesla-k80 * projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia- + # tesla-k80 * nvidia-tesla-k80 + # Corresponds to the JSON property `acceleratorTypeUri` + # @return [String] + attr_accessor :accelerator_type_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @accelerator_count = args[:accelerator_count] if args.key?(:accelerator_count) + @accelerator_type_uri = args[:accelerator_type_uri] if args.key?(:accelerator_type_uri) + end + end + + # A request to cancel a job. + class CancelJobRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Describes the identifying information, config, and status of a cluster of + # Google Compute Engine instances. + class Cluster + include Google::Apis::Core::Hashable + + # Required. The cluster name. Cluster names within a project must be unique. + # Names of deleted clusters can be reused. + # Corresponds to the JSON property `clusterName` + # @return [String] + attr_accessor :cluster_name + + # Output-only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc + # generates this value when it creates the cluster. + # Corresponds to the JSON property `clusterUuid` + # @return [String] + attr_accessor :cluster_uuid + + # The cluster config. + # Corresponds to the JSON property `config` + # @return [Google::Apis::DataprocV1beta2::ClusterConfig] + attr_accessor :config + + # Optional. The labels to associate with this cluster. Label keys must contain 1 + # to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/ + # rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 + # characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt) + # . No more than 32 labels can be associated with a cluster. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: + # This report is available for testing purposes only. It may be changed before + # final release. + # Corresponds to the JSON property `metrics` + # @return [Google::Apis::DataprocV1beta2::ClusterMetrics] + attr_accessor :metrics + + # Required. The Google Cloud Platform project ID that the cluster belongs to. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The status of a cluster and its instances. + # Corresponds to the JSON property `status` + # @return [Google::Apis::DataprocV1beta2::ClusterStatus] + attr_accessor :status + + # Output-only. The previous cluster status. + # Corresponds to the JSON property `statusHistory` + # @return [Array] + attr_accessor :status_history + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_name = args[:cluster_name] if args.key?(:cluster_name) + @cluster_uuid = args[:cluster_uuid] if args.key?(:cluster_uuid) + @config = args[:config] if args.key?(:config) + @labels = args[:labels] if args.key?(:labels) + @metrics = args[:metrics] if args.key?(:metrics) + @project_id = args[:project_id] if args.key?(:project_id) + @status = args[:status] if args.key?(:status) + @status_history = args[:status_history] if args.key?(:status_history) + end + end + + # The cluster config. + class ClusterConfig + include Google::Apis::Core::Hashable + + # Optional. A Google Cloud Storage staging bucket used for sharing generated SSH + # keys and config. If you do not specify a staging bucket, Cloud Dataproc will + # determine an appropriate Cloud Storage location (US, ASIA, or EU) for your + # cluster's staging bucket according to the Google Compute Engine zone where + # your cluster is deployed, and then it will create and manage this project- + # level, per-location bucket for you. + # Corresponds to the JSON property `configBucket` + # @return [String] + attr_accessor :config_bucket + + # Common config settings for resources of Google Compute Engine cluster + # instances, applicable to all instances in the cluster. + # Corresponds to the JSON property `gceClusterConfig` + # @return [Google::Apis::DataprocV1beta2::GceClusterConfig] + attr_accessor :gce_cluster_config + + # Optional. Commands to execute on each node after config is completed. By + # default, executables are run on master and all worker nodes. You can test a + # node's role metadata to run an executable on a master or worker + # node, as shown below using curl (you can also use wget): + # ROLE=$(curl -H Metadata-Flavor:Google http://metadata/computeMetadata/v1beta2/ + # instance/attributes/dataproc-role) + # if [[ "$`ROLE`" == 'Master' ]]; then + # ... master specific actions ... + # else + # ... worker specific actions ... + # fi + # Corresponds to the JSON property `initializationActions` + # @return [Array] + attr_accessor :initialization_actions + + # Specifies the cluster auto delete related schedule configuration. + # Corresponds to the JSON property `lifecycleConfig` + # @return [Google::Apis::DataprocV1beta2::LifecycleConfig] + attr_accessor :lifecycle_config + + # Optional. The config settings for Google Compute Engine resources in an + # instance group, such as a master or worker group. + # Corresponds to the JSON property `masterConfig` + # @return [Google::Apis::DataprocV1beta2::InstanceGroupConfig] + attr_accessor :master_config + + # Optional. The config settings for Google Compute Engine resources in an + # instance group, such as a master or worker group. + # Corresponds to the JSON property `secondaryWorkerConfig` + # @return [Google::Apis::DataprocV1beta2::InstanceGroupConfig] + attr_accessor :secondary_worker_config + + # Specifies the selection and config of software inside the cluster. + # Corresponds to the JSON property `softwareConfig` + # @return [Google::Apis::DataprocV1beta2::SoftwareConfig] + attr_accessor :software_config + + # Optional. The config settings for Google Compute Engine resources in an + # instance group, such as a master or worker group. + # Corresponds to the JSON property `workerConfig` + # @return [Google::Apis::DataprocV1beta2::InstanceGroupConfig] + attr_accessor :worker_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config_bucket = args[:config_bucket] if args.key?(:config_bucket) + @gce_cluster_config = args[:gce_cluster_config] if args.key?(:gce_cluster_config) + @initialization_actions = args[:initialization_actions] if args.key?(:initialization_actions) + @lifecycle_config = args[:lifecycle_config] if args.key?(:lifecycle_config) + @master_config = args[:master_config] if args.key?(:master_config) + @secondary_worker_config = args[:secondary_worker_config] if args.key?(:secondary_worker_config) + @software_config = args[:software_config] if args.key?(:software_config) + @worker_config = args[:worker_config] if args.key?(:worker_config) + end + end + + # Contains cluster daemon metrics, such as HDFS and YARN stats.Beta Feature: + # This report is available for testing purposes only. It may be changed before + # final release. + class ClusterMetrics + include Google::Apis::Core::Hashable + + # The HDFS metrics. + # Corresponds to the JSON property `hdfsMetrics` + # @return [Hash] + attr_accessor :hdfs_metrics + + # The YARN metrics. + # Corresponds to the JSON property `yarnMetrics` + # @return [Hash] + attr_accessor :yarn_metrics + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hdfs_metrics = args[:hdfs_metrics] if args.key?(:hdfs_metrics) + @yarn_metrics = args[:yarn_metrics] if args.key?(:yarn_metrics) + end + end + + # Metadata describing the operation. + class ClusterOperationMetadata + include Google::Apis::Core::Hashable + + # Output-only. Name of the cluster for the operation. + # Corresponds to the JSON property `clusterName` + # @return [String] + attr_accessor :cluster_name + + # Output-only. Cluster UUID for the operation. + # Corresponds to the JSON property `clusterUuid` + # @return [String] + attr_accessor :cluster_uuid + + # Output-only. Short description of operation. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Output-only. Labels associated with the operation + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Output-only. The operation type. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The status of the operation. + # Corresponds to the JSON property `status` + # @return [Google::Apis::DataprocV1beta2::ClusterOperationStatus] + attr_accessor :status + + # Output-only. The previous operation status. + # Corresponds to the JSON property `statusHistory` + # @return [Array] + attr_accessor :status_history + + # Output-only. Errors encountered during operation execution. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_name = args[:cluster_name] if args.key?(:cluster_name) + @cluster_uuid = args[:cluster_uuid] if args.key?(:cluster_uuid) + @description = args[:description] if args.key?(:description) + @labels = args[:labels] if args.key?(:labels) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @status = args[:status] if args.key?(:status) + @status_history = args[:status_history] if args.key?(:status_history) + @warnings = args[:warnings] if args.key?(:warnings) + end + end + + # The status of the operation. + class ClusterOperationStatus + include Google::Apis::Core::Hashable + + # Output-only.A message containing any operation metadata details. + # Corresponds to the JSON property `details` + # @return [String] + attr_accessor :details + + # Output-only. A message containing the detailed operation state. + # Corresponds to the JSON property `innerState` + # @return [String] + attr_accessor :inner_state + + # Output-only. A message containing the operation state. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Output-only. The time this state was entered. + # Corresponds to the JSON property `stateStartTime` + # @return [String] + attr_accessor :state_start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @inner_state = args[:inner_state] if args.key?(:inner_state) + @state = args[:state] if args.key?(:state) + @state_start_time = args[:state_start_time] if args.key?(:state_start_time) + end + end + + # The status of a cluster and its instances. + class ClusterStatus + include Google::Apis::Core::Hashable + + # Output-only. Optional details of cluster's state. + # Corresponds to the JSON property `detail` + # @return [String] + attr_accessor :detail + + # Output-only. The cluster's state. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Output-only. Time when this state was entered. + # Corresponds to the JSON property `stateStartTime` + # @return [String] + attr_accessor :state_start_time + + # Output-only. Additional state information that includes status reported by the + # agent. + # Corresponds to the JSON property `substate` + # @return [String] + attr_accessor :substate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @detail = args[:detail] if args.key?(:detail) + @state = args[:state] if args.key?(:state) + @state_start_time = args[:state_start_time] if args.key?(:state_start_time) + @substate = args[:substate] if args.key?(:substate) + end + end + + # A request to collect cluster diagnostic information. + class DiagnoseClusterRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The location of diagnostic output. + class DiagnoseClusterResults + include Google::Apis::Core::Hashable + + # Output-only. The Google Cloud Storage URI of the diagnostic output. The output + # report is a plain text file with a summary of collected diagnostics. + # Corresponds to the JSON property `outputUri` + # @return [String] + attr_accessor :output_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @output_uri = args[:output_uri] if args.key?(:output_uri) + end + end + + # Specifies the config of disk options for a group of VM instances. + class DiskConfig + include Google::Apis::Core::Hashable + + # Optional. Size in GB of the boot disk (default is 500GB). + # Corresponds to the JSON property `bootDiskSizeGb` + # @return [Fixnum] + attr_accessor :boot_disk_size_gb + + # Optional. Number of attached SSDs, from 0 to 4 (default is 0). If SSDs are not + # attached, the boot disk is used to store runtime logs and HDFS (https://hadoop. + # apache.org/docs/r1.2.1/hdfs_user_guide.html) data. If one or more SSDs are + # attached, this runtime bulk data is spread across them, and the boot disk + # contains only basic config and installed binaries. + # Corresponds to the JSON property `numLocalSsds` + # @return [Fixnum] + attr_accessor :num_local_ssds + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb) + @num_local_ssds = args[:num_local_ssds] if args.key?(:num_local_ssds) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated empty + # messages in your APIs. A typical example is to use it as the request or the + # response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for Empty is empty JSON object ``. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Common config settings for resources of Google Compute Engine cluster + # instances, applicable to all instances in the cluster. + class GceClusterConfig + include Google::Apis::Core::Hashable + + # Optional. If true, all instances in the cluster will only have internal IP + # addresses. By default, clusters are not restricted to internal IP addresses, + # and will have ephemeral external IP addresses assigned to each instance. This + # internal_ip_only restriction can only be enabled for subnetwork enabled + # networks, and all off-cluster dependencies must be configured to be accessible + # without external IP addresses. + # Corresponds to the JSON property `internalIpOnly` + # @return [Boolean] + attr_accessor :internal_ip_only + alias_method :internal_ip_only?, :internal_ip_only + + # The Google Compute Engine metadata entries to add to all instances (see + # Project and instance metadata (https://cloud.google.com/compute/docs/storing- + # retrieving-metadata#project_and_instance_metadata)). + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Optional. The Google Compute Engine network to be used for machine + # communications. Cannot be specified with subnetwork_uri. If neither + # network_uri nor subnetwork_uri is specified, the "default" network of the + # project is used, if it exists. Cannot be a "Custom Subnet Network" (see Using + # Subnetworks for more information).A full URL, partial URI, or short name are + # valid. Examples: + # https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/ + # default + # projects/[project_id]/regions/global/default + # default + # Corresponds to the JSON property `networkUri` + # @return [String] + attr_accessor :network_uri + + # Optional. The service account of the instances. Defaults to the default Google + # Compute Engine service account. Custom service accounts need permissions + # equivalent to the folloing IAM roles: + # roles/logging.logWriter + # roles/storage.objectAdmin(see https://cloud.google.com/compute/docs/access/ + # service-accounts#custom_service_accounts for more information). Example: [ + # account_id]@[project_id].iam.gserviceaccount.com + # Corresponds to the JSON property `serviceAccount` + # @return [String] + attr_accessor :service_account + + # Optional. The URIs of service account scopes to be included in Google Compute + # Engine instances. The following base set of scopes is always included: + # https://www.googleapis.com/auth/cloud.useraccounts.readonly + # https://www.googleapis.com/auth/devstorage.read_write + # https://www.googleapis.com/auth/logging.writeIf no scopes are specified, the + # following defaults are also provided: + # https://www.googleapis.com/auth/bigquery + # https://www.googleapis.com/auth/bigtable.admin.table + # https://www.googleapis.com/auth/bigtable.data + # https://www.googleapis.com/auth/devstorage.full_control + # Corresponds to the JSON property `serviceAccountScopes` + # @return [Array] + attr_accessor :service_account_scopes + + # Optional. The Google Compute Engine subnetwork to be used for machine + # communications. Cannot be specified with network_uri.A full URL, partial URI, + # or short name are valid. Examples: + # https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/ + # sub0 + # projects/[project_id]/regions/us-east1/sub0 + # sub0 + # Corresponds to the JSON property `subnetworkUri` + # @return [String] + attr_accessor :subnetwork_uri + + # The Google Compute Engine tags to add to all instances (see Tagging instances). + # Corresponds to the JSON property `tags` + # @return [Array] + attr_accessor :tags + + # Optional. The zone where the Google Compute Engine cluster will be located. On + # a create request, it is required in the "global" region. If omitted in a non- + # global Cloud Dataproc region, the service will pick a zone in the + # corresponding Compute Engine region. On a get request, zone will always be + # present.A full URL, partial URI, or short name are valid. Examples: + # https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone] + # projects/[project_id]/zones/[zone] + # us-central1-f + # Corresponds to the JSON property `zoneUri` + # @return [String] + attr_accessor :zone_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @internal_ip_only = args[:internal_ip_only] if args.key?(:internal_ip_only) + @metadata = args[:metadata] if args.key?(:metadata) + @network_uri = args[:network_uri] if args.key?(:network_uri) + @service_account = args[:service_account] if args.key?(:service_account) + @service_account_scopes = args[:service_account_scopes] if args.key?(:service_account_scopes) + @subnetwork_uri = args[:subnetwork_uri] if args.key?(:subnetwork_uri) + @tags = args[:tags] if args.key?(:tags) + @zone_uri = args[:zone_uri] if args.key?(:zone_uri) + end + end + + # A Cloud Dataproc job for running Apache Hadoop MapReduce (https://hadoop. + # apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/ + # MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/ + # docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). + class HadoopJob + include Google::Apis::Core::Hashable + + # Optional. HCFS URIs of archives to be extracted in the working directory of + # Hadoop drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, or . + # zip. + # Corresponds to the JSON property `archiveUris` + # @return [Array] + attr_accessor :archive_uris + + # Optional. The arguments to pass to the driver. Do not include arguments, such + # as -libjars or -Dfoo=bar, that can be set as job properties, since a collision + # may occur that causes an incorrect job submission. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied to + # the working directory of Hadoop drivers and distributed tasks. Useful for + # naively parallel tasks. + # Corresponds to the JSON property `fileUris` + # @return [Array] + attr_accessor :file_uris + + # Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and + # tasks. + # Corresponds to the JSON property `jarFileUris` + # @return [Array] + attr_accessor :jar_file_uris + + # The runtime logging config of the job. + # Corresponds to the JSON property `loggingConfig` + # @return [Google::Apis::DataprocV1beta2::LoggingConfig] + attr_accessor :logging_config + + # The name of the driver's main class. The jar file containing the class must be + # in the default CLASSPATH or specified in jar_file_uris. + # Corresponds to the JSON property `mainClass` + # @return [String] + attr_accessor :main_class + + # The HCFS URI of the jar file containing the main class. Examples: 'gs://foo- + # bucket/analytics-binaries/extract-useful-metrics-mr.jar' 'hdfs:/tmp/test- + # samples/custom-wordcount.jar' 'file:///home/usr/lib/hadoop-mapreduce/hadoop- + # mapreduce-examples.jar' + # Corresponds to the JSON property `mainJarFileUri` + # @return [String] + attr_accessor :main_jar_file_uri + + # Optional. A mapping of property names to values, used to configure Hadoop. + # Properties that conflict with values set by the Cloud Dataproc API may be + # overwritten. Can include properties set in /etc/hadoop/conf/*-site and classes + # in user code. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @archive_uris = args[:archive_uris] if args.key?(:archive_uris) + @args = args[:args] if args.key?(:args) + @file_uris = args[:file_uris] if args.key?(:file_uris) + @jar_file_uris = args[:jar_file_uris] if args.key?(:jar_file_uris) + @logging_config = args[:logging_config] if args.key?(:logging_config) + @main_class = args[:main_class] if args.key?(:main_class) + @main_jar_file_uri = args[:main_jar_file_uri] if args.key?(:main_jar_file_uri) + @properties = args[:properties] if args.key?(:properties) + end + end + + # A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) + # queries on YARN. + class HiveJob + include Google::Apis::Core::Hashable + + # Optional. Whether to continue executing queries if a query fails. The default + # value is false. Setting to true can be useful when executing independent + # parallel queries. + # Corresponds to the JSON property `continueOnFailure` + # @return [Boolean] + attr_accessor :continue_on_failure + alias_method :continue_on_failure?, :continue_on_failure + + # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Hive server + # and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes and UDFs. + # Corresponds to the JSON property `jarFileUris` + # @return [Array] + attr_accessor :jar_file_uris + + # Optional. A mapping of property names and values, used to configure Hive. + # Properties that conflict with values set by the Cloud Dataproc API may be + # overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/ + # hive/conf/hive-site.xml, and classes in user code. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + # The HCFS URI of the script that contains Hive queries. + # Corresponds to the JSON property `queryFileUri` + # @return [String] + attr_accessor :query_file_uri + + # A list of queries to run on a cluster. + # Corresponds to the JSON property `queryList` + # @return [Google::Apis::DataprocV1beta2::QueryList] + attr_accessor :query_list + + # Optional. Mapping of query variable names to values (equivalent to the Hive + # command: SET name="value";). + # Corresponds to the JSON property `scriptVariables` + # @return [Hash] + attr_accessor :script_variables + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @continue_on_failure = args[:continue_on_failure] if args.key?(:continue_on_failure) + @jar_file_uris = args[:jar_file_uris] if args.key?(:jar_file_uris) + @properties = args[:properties] if args.key?(:properties) + @query_file_uri = args[:query_file_uri] if args.key?(:query_file_uri) + @query_list = args[:query_list] if args.key?(:query_list) + @script_variables = args[:script_variables] if args.key?(:script_variables) + end + end + + # Optional. The config settings for Google Compute Engine resources in an + # instance group, such as a master or worker group. + class InstanceGroupConfig + include Google::Apis::Core::Hashable + + # Optional. The Google Compute Engine accelerator configuration for these + # instances.Beta Feature: This feature is still under development. It may be + # changed before final release. + # Corresponds to the JSON property `accelerators` + # @return [Array] + attr_accessor :accelerators + + # Specifies the config of disk options for a group of VM instances. + # Corresponds to the JSON property `diskConfig` + # @return [Google::Apis::DataprocV1beta2::DiskConfig] + attr_accessor :disk_config + + # Output-only. The Google Compute Engine image resource used for cluster + # instances. Inferred from SoftwareConfig.image_version. + # Corresponds to the JSON property `imageUri` + # @return [String] + attr_accessor :image_uri + + # Optional. The list of instance names. Cloud Dataproc derives the names from + # cluster_name, num_instances, and the instance group if not set by user ( + # recommended practice is to let Cloud Dataproc derive the name). + # Corresponds to the JSON property `instanceNames` + # @return [Array] + attr_accessor :instance_names + + # Optional. Specifies that this instance group contains preemptible instances. + # Corresponds to the JSON property `isPreemptible` + # @return [Boolean] + attr_accessor :is_preemptible + alias_method :is_preemptible?, :is_preemptible + + # Optional. The Google Compute Engine machine type used for cluster instances.A + # full URL, partial URI, or short name are valid. Examples: + # https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/ + # machineTypes/n1-standard-2 + # projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2 + # n1-standard-2 + # Corresponds to the JSON property `machineTypeUri` + # @return [String] + attr_accessor :machine_type_uri + + # Specifies the resources used to actively manage an instance group. + # Corresponds to the JSON property `managedGroupConfig` + # @return [Google::Apis::DataprocV1beta2::ManagedGroupConfig] + attr_accessor :managed_group_config + + # Optional. The number of VM instances in the instance group. For master + # instance groups, must be set to 1. + # Corresponds to the JSON property `numInstances` + # @return [Fixnum] + attr_accessor :num_instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @accelerators = args[:accelerators] if args.key?(:accelerators) + @disk_config = args[:disk_config] if args.key?(:disk_config) + @image_uri = args[:image_uri] if args.key?(:image_uri) + @instance_names = args[:instance_names] if args.key?(:instance_names) + @is_preemptible = args[:is_preemptible] if args.key?(:is_preemptible) + @machine_type_uri = args[:machine_type_uri] if args.key?(:machine_type_uri) + @managed_group_config = args[:managed_group_config] if args.key?(:managed_group_config) + @num_instances = args[:num_instances] if args.key?(:num_instances) + end + end + + # A Cloud Dataproc job resource. + class Job + include Google::Apis::Core::Hashable + + # Output-only. If present, the location of miscellaneous control files which may + # be used as part of job setup and handling. If not present, control files may + # be placed in the same location as driver_output_uri. + # Corresponds to the JSON property `driverControlFilesUri` + # @return [String] + attr_accessor :driver_control_files_uri + + # Output-only. A URI pointing to the location of the stdout of the job's driver + # program. + # Corresponds to the JSON property `driverOutputResourceUri` + # @return [String] + attr_accessor :driver_output_resource_uri + + # A Cloud Dataproc job for running Apache Hadoop MapReduce (https://hadoop. + # apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/ + # MapReduceTutorial.html) jobs on Apache Hadoop YARN (https://hadoop.apache.org/ + # docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). + # Corresponds to the JSON property `hadoopJob` + # @return [Google::Apis::DataprocV1beta2::HadoopJob] + attr_accessor :hadoop_job + + # A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) + # queries on YARN. + # Corresponds to the JSON property `hiveJob` + # @return [Google::Apis::DataprocV1beta2::HiveJob] + attr_accessor :hive_job + + # Optional. The labels to associate with this job. Label keys must contain 1 to + # 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035. + # txt). Label values may be empty, but, if present, must contain 1 to 63 + # characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt) + # . No more than 32 labels can be associated with a job. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries + # on YARN. + # Corresponds to the JSON property `pigJob` + # @return [Google::Apis::DataprocV1beta2::PigJob] + attr_accessor :pig_job + + # Cloud Dataproc job config. + # Corresponds to the JSON property `placement` + # @return [Google::Apis::DataprocV1beta2::JobPlacement] + attr_accessor :placement + + # A Cloud Dataproc job for running Apache PySpark (https://spark.apache.org/docs/ + # 0.9.0/python-programming-guide.html) applications on YARN. + # Corresponds to the JSON property `pysparkJob` + # @return [Google::Apis::DataprocV1beta2::PySparkJob] + attr_accessor :pyspark_job + + # Encapsulates the full scoping used to reference a job. + # Corresponds to the JSON property `reference` + # @return [Google::Apis::DataprocV1beta2::JobReference] + attr_accessor :reference + + # Job scheduling options.Beta Feature: These options are available for testing + # purposes only. They may be changed before final release. + # Corresponds to the JSON property `scheduling` + # @return [Google::Apis::DataprocV1beta2::JobScheduling] + attr_accessor :scheduling + + # A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) + # applications on YARN. + # Corresponds to the JSON property `sparkJob` + # @return [Google::Apis::DataprocV1beta2::SparkJob] + attr_accessor :spark_job + + # A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/ + # ) queries. + # Corresponds to the JSON property `sparkSqlJob` + # @return [Google::Apis::DataprocV1beta2::SparkSqlJob] + attr_accessor :spark_sql_job + + # Cloud Dataproc job status. + # Corresponds to the JSON property `status` + # @return [Google::Apis::DataprocV1beta2::JobStatus] + attr_accessor :status + + # Output-only. The previous job status. + # Corresponds to the JSON property `statusHistory` + # @return [Array] + attr_accessor :status_history + + # Output-only. The collection of YARN applications spun up by this job.Beta + # Feature: This report is available for testing purposes only. It may be changed + # before final release. + # Corresponds to the JSON property `yarnApplications` + # @return [Array] + attr_accessor :yarn_applications + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @driver_control_files_uri = args[:driver_control_files_uri] if args.key?(:driver_control_files_uri) + @driver_output_resource_uri = args[:driver_output_resource_uri] if args.key?(:driver_output_resource_uri) + @hadoop_job = args[:hadoop_job] if args.key?(:hadoop_job) + @hive_job = args[:hive_job] if args.key?(:hive_job) + @labels = args[:labels] if args.key?(:labels) + @pig_job = args[:pig_job] if args.key?(:pig_job) + @placement = args[:placement] if args.key?(:placement) + @pyspark_job = args[:pyspark_job] if args.key?(:pyspark_job) + @reference = args[:reference] if args.key?(:reference) + @scheduling = args[:scheduling] if args.key?(:scheduling) + @spark_job = args[:spark_job] if args.key?(:spark_job) + @spark_sql_job = args[:spark_sql_job] if args.key?(:spark_sql_job) + @status = args[:status] if args.key?(:status) + @status_history = args[:status_history] if args.key?(:status_history) + @yarn_applications = args[:yarn_applications] if args.key?(:yarn_applications) + end + end + + # Cloud Dataproc job config. + class JobPlacement + include Google::Apis::Core::Hashable + + # Required. The name of the cluster where the job will be submitted. + # Corresponds to the JSON property `clusterName` + # @return [String] + attr_accessor :cluster_name + + # Output-only. A cluster UUID generated by the Cloud Dataproc service when the + # job is submitted. + # Corresponds to the JSON property `clusterUuid` + # @return [String] + attr_accessor :cluster_uuid + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_name = args[:cluster_name] if args.key?(:cluster_name) + @cluster_uuid = args[:cluster_uuid] if args.key?(:cluster_uuid) + end + end + + # Encapsulates the full scoping used to reference a job. + class JobReference + include Google::Apis::Core::Hashable + + # Optional. The job ID, which must be unique within the project. The job ID is + # generated by the server upon job submission or provided by the user as a means + # to perform retries without creating duplicate jobs. The ID must contain only + # letters (a-z, A-Z), numbers (0-9), underscores (_), or hyphens (-). The + # maximum length is 100 characters. + # Corresponds to the JSON property `jobId` + # @return [String] + attr_accessor :job_id + + # Required. The ID of the Google Cloud Platform project that the job belongs to. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @job_id = args[:job_id] if args.key?(:job_id) + @project_id = args[:project_id] if args.key?(:project_id) + end + end + + # Job scheduling options.Beta Feature: These options are available for testing + # purposes only. They may be changed before final release. + class JobScheduling + include Google::Apis::Core::Hashable + + # Optional. Maximum number of times per hour a driver may be restarted as a + # result of driver terminating with non-zero code before job is reported failed. + # A job may be reported as thrashing if driver exits with non-zero code 4 times + # within 10 minute window.Maximum value is 10. + # Corresponds to the JSON property `maxFailuresPerHour` + # @return [Fixnum] + attr_accessor :max_failures_per_hour + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_failures_per_hour = args[:max_failures_per_hour] if args.key?(:max_failures_per_hour) + end + end + + # Cloud Dataproc job status. + class JobStatus + include Google::Apis::Core::Hashable + + # Output-only. Optional job state details, such as an error description if the + # state is ERROR. + # Corresponds to the JSON property `details` + # @return [String] + attr_accessor :details + + # Output-only. A state message specifying the overall job state. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Output-only. The time when this state was entered. + # Corresponds to the JSON property `stateStartTime` + # @return [String] + attr_accessor :state_start_time + + # Output-only. Additional state information, which includes status reported by + # the agent. + # Corresponds to the JSON property `substate` + # @return [String] + attr_accessor :substate + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @state = args[:state] if args.key?(:state) + @state_start_time = args[:state_start_time] if args.key?(:state_start_time) + @substate = args[:substate] if args.key?(:substate) + end + end + + # Specifies the cluster auto delete related schedule configuration. + class LifecycleConfig + include Google::Apis::Core::Hashable + + # Optional. The time when cluster will be auto-deleted. + # Corresponds to the JSON property `autoDeleteTime` + # @return [String] + attr_accessor :auto_delete_time + + # Optional. The life duration of cluster, the cluster will be auto-deleted at + # the end of this duration. + # Corresponds to the JSON property `autoDeleteTtl` + # @return [String] + attr_accessor :auto_delete_ttl + + # Optional. The longest duration that cluster would keep alive while staying + # idle; passing this threshold will cause cluster to be auto-deleted. + # Corresponds to the JSON property `idleDeleteTtl` + # @return [String] + attr_accessor :idle_delete_ttl + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_delete_time = args[:auto_delete_time] if args.key?(:auto_delete_time) + @auto_delete_ttl = args[:auto_delete_ttl] if args.key?(:auto_delete_ttl) + @idle_delete_ttl = args[:idle_delete_ttl] if args.key?(:idle_delete_ttl) + end + end + + # The list of all clusters in a project. + class ListClustersResponse + include Google::Apis::Core::Hashable + + # Output-only. The clusters in the project. + # Corresponds to the JSON property `clusters` + # @return [Array] + attr_accessor :clusters + + # Output-only. This token is included in the response if there are more results + # to fetch. To fetch additional results, provide this value as the page_token in + # a subsequent ListClustersRequest. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @clusters = args[:clusters] if args.key?(:clusters) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # A list of jobs in a project. + class ListJobsResponse + include Google::Apis::Core::Hashable + + # Output-only. Jobs list. + # Corresponds to the JSON property `jobs` + # @return [Array] + attr_accessor :jobs + + # Optional. This token is included in the response if there are more results to + # fetch. To fetch additional results, provide this value as the page_token in a + # subsequent ListJobsRequest. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @jobs = args[:jobs] if args.key?(:jobs) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # The runtime logging config of the job. + class LoggingConfig + include Google::Apis::Core::Hashable + + # The per-package log levels for the driver. This may include "root" package + # name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', ' + # org.apache = DEBUG' + # Corresponds to the JSON property `driverLogLevels` + # @return [Hash] + attr_accessor :driver_log_levels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @driver_log_levels = args[:driver_log_levels] if args.key?(:driver_log_levels) + end + end + + # Specifies the resources used to actively manage an instance group. + class ManagedGroupConfig + include Google::Apis::Core::Hashable + + # Output-only. The name of the Instance Group Manager for this group. + # Corresponds to the JSON property `instanceGroupManagerName` + # @return [String] + attr_accessor :instance_group_manager_name + + # Output-only. The name of the Instance Template used for the Managed Instance + # Group. + # Corresponds to the JSON property `instanceTemplateName` + # @return [String] + attr_accessor :instance_template_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance_group_manager_name = args[:instance_group_manager_name] if args.key?(:instance_group_manager_name) + @instance_template_name = args[:instance_template_name] if args.key?(:instance_template_name) + end + end + + # Specifies an executable to run on a fully configured node and a timeout period + # for executable completion. + class NodeInitializationAction + include Google::Apis::Core::Hashable + + # Required. Google Cloud Storage URI of executable file. + # Corresponds to the JSON property `executableFile` + # @return [String] + attr_accessor :executable_file + + # Optional. Amount of time executable has to complete. Default is 10 minutes. + # Cluster creation fails with an explanatory error message (the name of the + # executable that caused the error and the exceeded timeout period) if the + # executable is not completed at end of the timeout period. + # Corresponds to the JSON property `executionTimeout` + # @return [String] + attr_accessor :execution_timeout + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @executable_file = args[:executable_file] if args.key?(:executable_file) + @execution_timeout = args[:execution_timeout] if args.key?(:execution_timeout) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::DataprocV1beta2::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries + # on YARN. + class PigJob + include Google::Apis::Core::Hashable + + # Optional. Whether to continue executing queries if a query fails. The default + # value is false. Setting to true can be useful when executing independent + # parallel queries. + # Corresponds to the JSON property `continueOnFailure` + # @return [Boolean] + attr_accessor :continue_on_failure + alias_method :continue_on_failure?, :continue_on_failure + + # Optional. HCFS URIs of jar files to add to the CLASSPATH of the Pig Client and + # Hadoop MapReduce (MR) tasks. Can contain Pig UDFs. + # Corresponds to the JSON property `jarFileUris` + # @return [Array] + attr_accessor :jar_file_uris + + # The runtime logging config of the job. + # Corresponds to the JSON property `loggingConfig` + # @return [Google::Apis::DataprocV1beta2::LoggingConfig] + attr_accessor :logging_config + + # Optional. A mapping of property names to values, used to configure Pig. + # Properties that conflict with values set by the Cloud Dataproc API may be + # overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, /etc/ + # pig/conf/pig.properties, and classes in user code. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + # The HCFS URI of the script that contains the Pig queries. + # Corresponds to the JSON property `queryFileUri` + # @return [String] + attr_accessor :query_file_uri + + # A list of queries to run on a cluster. + # Corresponds to the JSON property `queryList` + # @return [Google::Apis::DataprocV1beta2::QueryList] + attr_accessor :query_list + + # Optional. Mapping of query variable names to values (equivalent to the Pig + # command: name=[value]). + # Corresponds to the JSON property `scriptVariables` + # @return [Hash] + attr_accessor :script_variables + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @continue_on_failure = args[:continue_on_failure] if args.key?(:continue_on_failure) + @jar_file_uris = args[:jar_file_uris] if args.key?(:jar_file_uris) + @logging_config = args[:logging_config] if args.key?(:logging_config) + @properties = args[:properties] if args.key?(:properties) + @query_file_uri = args[:query_file_uri] if args.key?(:query_file_uri) + @query_list = args[:query_list] if args.key?(:query_list) + @script_variables = args[:script_variables] if args.key?(:script_variables) + end + end + + # A Cloud Dataproc job for running Apache PySpark (https://spark.apache.org/docs/ + # 0.9.0/python-programming-guide.html) applications on YARN. + class PySparkJob + include Google::Apis::Core::Hashable + + # Optional. HCFS URIs of archives to be extracted in the working directory of . + # jar, .tar, .tar.gz, .tgz, and .zip. + # Corresponds to the JSON property `archiveUris` + # @return [Array] + attr_accessor :archive_uris + + # Optional. The arguments to pass to the driver. Do not include arguments, such + # as --conf, that can be set as job properties, since a collision may occur that + # causes an incorrect job submission. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # Optional. HCFS URIs of files to be copied to the working directory of Python + # drivers and distributed tasks. Useful for naively parallel tasks. + # Corresponds to the JSON property `fileUris` + # @return [Array] + attr_accessor :file_uris + + # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Python driver + # and tasks. + # Corresponds to the JSON property `jarFileUris` + # @return [Array] + attr_accessor :jar_file_uris + + # The runtime logging config of the job. + # Corresponds to the JSON property `loggingConfig` + # @return [Google::Apis::DataprocV1beta2::LoggingConfig] + attr_accessor :logging_config + + # Required. The HCFS URI of the main Python file to use as the driver. Must be a + # .py file. + # Corresponds to the JSON property `mainPythonFileUri` + # @return [String] + attr_accessor :main_python_file_uri + + # Optional. A mapping of property names to values, used to configure PySpark. + # Properties that conflict with values set by the Cloud Dataproc API may be + # overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf + # and classes in user code. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + # Optional. HCFS file URIs of Python files to pass to the PySpark framework. + # Supported file types: .py, .egg, and .zip. + # Corresponds to the JSON property `pythonFileUris` + # @return [Array] + attr_accessor :python_file_uris + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @archive_uris = args[:archive_uris] if args.key?(:archive_uris) + @args = args[:args] if args.key?(:args) + @file_uris = args[:file_uris] if args.key?(:file_uris) + @jar_file_uris = args[:jar_file_uris] if args.key?(:jar_file_uris) + @logging_config = args[:logging_config] if args.key?(:logging_config) + @main_python_file_uri = args[:main_python_file_uri] if args.key?(:main_python_file_uri) + @properties = args[:properties] if args.key?(:properties) + @python_file_uris = args[:python_file_uris] if args.key?(:python_file_uris) + end + end + + # A list of queries to run on a cluster. + class QueryList + include Google::Apis::Core::Hashable + + # Required. The queries to execute. You do not need to terminate a query with a + # semicolon. Multiple queries can be specified in one string by separating each + # with a semicolon. Here is an example of an Cloud Dataproc API snippet that + # uses a QueryList to specify a HiveJob: + # "hiveJob": ` + # "queryList": ` + # "queries": [ + # "query1", + # "query2", + # "query3;query4", + # ] + # ` + # ` + # Corresponds to the JSON property `queries` + # @return [Array] + attr_accessor :queries + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @queries = args[:queries] if args.key?(:queries) + end + end + + # Specifies the selection and config of software inside the cluster. + class SoftwareConfig + include Google::Apis::Core::Hashable + + # Optional. The version of software inside the cluster. It must match the + # regular expression [0-9]+\.[0-9]+. If unspecified, it defaults to the latest + # version (see Cloud Dataproc Versioning). + # Corresponds to the JSON property `imageVersion` + # @return [String] + attr_accessor :image_version + + # Optional. The properties to set on daemon config files.Property keys are + # specified in prefix:property format, such as core:fs.defaultFS. The following + # are supported prefixes and their mappings: + # capacity-scheduler: capacity-scheduler.xml + # core: core-site.xml + # distcp: distcp-default.xml + # hdfs: hdfs-site.xml + # hive: hive-site.xml + # mapred: mapred-site.xml + # pig: pig.properties + # spark: spark-defaults.conf + # yarn: yarn-site.xmlFor more information, see Cluster properties. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @image_version = args[:image_version] if args.key?(:image_version) + @properties = args[:properties] if args.key?(:properties) + end + end + + # A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) + # applications on YARN. + class SparkJob + include Google::Apis::Core::Hashable + + # Optional. HCFS URIs of archives to be extracted in the working directory of + # Spark drivers and tasks. Supported file types: .jar, .tar, .tar.gz, .tgz, and . + # zip. + # Corresponds to the JSON property `archiveUris` + # @return [Array] + attr_accessor :archive_uris + + # Optional. The arguments to pass to the driver. Do not include arguments, such + # as --conf, that can be set as job properties, since a collision may occur that + # causes an incorrect job submission. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # Optional. HCFS URIs of files to be copied to the working directory of Spark + # drivers and distributed tasks. Useful for naively parallel tasks. + # Corresponds to the JSON property `fileUris` + # @return [Array] + attr_accessor :file_uris + + # Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver + # and tasks. + # Corresponds to the JSON property `jarFileUris` + # @return [Array] + attr_accessor :jar_file_uris + + # The runtime logging config of the job. + # Corresponds to the JSON property `loggingConfig` + # @return [Google::Apis::DataprocV1beta2::LoggingConfig] + attr_accessor :logging_config + + # The name of the driver's main class. The jar file that contains the class must + # be in the default CLASSPATH or specified in jar_file_uris. + # Corresponds to the JSON property `mainClass` + # @return [String] + attr_accessor :main_class + + # The HCFS URI of the jar file that contains the main class. + # Corresponds to the JSON property `mainJarFileUri` + # @return [String] + attr_accessor :main_jar_file_uri + + # Optional. A mapping of property names to values, used to configure Spark. + # Properties that conflict with values set by the Cloud Dataproc API may be + # overwritten. Can include properties set in /etc/spark/conf/spark-defaults.conf + # and classes in user code. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @archive_uris = args[:archive_uris] if args.key?(:archive_uris) + @args = args[:args] if args.key?(:args) + @file_uris = args[:file_uris] if args.key?(:file_uris) + @jar_file_uris = args[:jar_file_uris] if args.key?(:jar_file_uris) + @logging_config = args[:logging_config] if args.key?(:logging_config) + @main_class = args[:main_class] if args.key?(:main_class) + @main_jar_file_uri = args[:main_jar_file_uri] if args.key?(:main_jar_file_uri) + @properties = args[:properties] if args.key?(:properties) + end + end + + # A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/ + # ) queries. + class SparkSqlJob + include Google::Apis::Core::Hashable + + # Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH. + # Corresponds to the JSON property `jarFileUris` + # @return [Array] + attr_accessor :jar_file_uris + + # The runtime logging config of the job. + # Corresponds to the JSON property `loggingConfig` + # @return [Google::Apis::DataprocV1beta2::LoggingConfig] + attr_accessor :logging_config + + # Optional. A mapping of property names to values, used to configure Spark SQL's + # SparkConf. Properties that conflict with values set by the Cloud Dataproc API + # may be overwritten. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + # The HCFS URI of the script that contains SQL queries. + # Corresponds to the JSON property `queryFileUri` + # @return [String] + attr_accessor :query_file_uri + + # A list of queries to run on a cluster. + # Corresponds to the JSON property `queryList` + # @return [Google::Apis::DataprocV1beta2::QueryList] + attr_accessor :query_list + + # Optional. Mapping of query variable names to values (equivalent to the Spark + # SQL command: SET name="value";). + # Corresponds to the JSON property `scriptVariables` + # @return [Hash] + attr_accessor :script_variables + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @jar_file_uris = args[:jar_file_uris] if args.key?(:jar_file_uris) + @logging_config = args[:logging_config] if args.key?(:logging_config) + @properties = args[:properties] if args.key?(:properties) + @query_file_uri = args[:query_file_uri] if args.key?(:query_file_uri) + @query_list = args[:query_list] if args.key?(:query_list) + @script_variables = args[:script_variables] if args.key?(:script_variables) + end + end + + # 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 needsOverviewThe Status message contains + # three pieces of data: error code, error message, and error details. The error + # code should be an enum value of google.rpc.Code, but it may accept additional + # error codes if needed. The error message should be a developer-facing English + # message that helps developers understand and resolve the error. If a localized + # user-facing error message is needed, put the localized message in the error + # details or localize it in the client. The optional error details may contain + # arbitrary information about the error. There is a predefined set of error + # detail types in the package google.rpc that can be used for common error + # conditions.Language mappingThe Status message is the logical representation of + # the error model, but it is not necessarily the actual wire format. When the + # Status message is exposed in different client libraries and different wire + # protocols, it can be mapped differently. For example, it will likely be mapped + # to some exceptions in Java, but more likely mapped to some error codes in C. + # Other usesThe error model and the Status message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments.Example uses of this error model + # include: + # Partial errors. If a service needs to return partial errors to the client, it + # may embed the Status in the normal response to indicate the partial errors. + # Workflow errors. A typical workflow has multiple steps. Each step may have a + # Status message for error reporting. + # Batch operations. If a client uses batch request and batch response, the + # Status message should be used directly inside batch response, one for each + # error sub-response. + # Asynchronous operations. If an API call embeds asynchronous operation results + # in its response, the status of those operations should be represented directly + # using the Status message. + # Logging. If some API errors are stored in logs, the message Status could be + # used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # A request to submit a job. + class SubmitJobRequest + include Google::Apis::Core::Hashable + + # A Cloud Dataproc job resource. + # Corresponds to the JSON property `job` + # @return [Google::Apis::DataprocV1beta2::Job] + attr_accessor :job + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @job = args[:job] if args.key?(:job) + end + end + + # A YARN application created by a job. Application information is a subset of < + # code>org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto. + # Beta Feature: This report is available for testing purposes only. It may be + # changed before final release. + class YarnApplication + include Google::Apis::Core::Hashable + + # Required. The application name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Required. The numerical progress of the application, from 1 to 100. + # Corresponds to the JSON property `progress` + # @return [Float] + attr_accessor :progress + + # Required. The application state. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Optional. The HTTP URL of the ApplicationMaster, HistoryServer, or + # TimelineServer that provides application-specific information. The URL uses + # the internal hostname, and requires a proxy server for resolution and, + # possibly, access. + # Corresponds to the JSON property `trackingUrl` + # @return [String] + attr_accessor :tracking_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @progress = args[:progress] if args.key?(:progress) + @state = args[:state] if args.key?(:state) + @tracking_url = args[:tracking_url] if args.key?(:tracking_url) + end + end + end + end +end diff --git a/generated/google/apis/dataproc_v1beta2/representations.rb b/generated/google/apis/dataproc_v1beta2/representations.rb new file mode 100644 index 000000000..8f3d7277f --- /dev/null +++ b/generated/google/apis/dataproc_v1beta2/representations.rb @@ -0,0 +1,675 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DataprocV1beta2 + + class AcceleratorConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CancelJobRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Cluster + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClusterConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClusterMetrics + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClusterOperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClusterOperationStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ClusterStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiagnoseClusterRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiagnoseClusterResults + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GceClusterConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HadoopJob + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HiveJob + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceGroupConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Job + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobPlacement + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobScheduling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LifecycleConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListClustersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListJobsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LoggingConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedGroupConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NodeInitializationAction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PigJob + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PySparkJob + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class QueryList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SoftwareConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SparkJob + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SparkSqlJob + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SubmitJobRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class YarnApplication + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcceleratorConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :accelerator_count, as: 'acceleratorCount' + property :accelerator_type_uri, as: 'acceleratorTypeUri' + end + end + + class CancelJobRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class Cluster + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_name, as: 'clusterName' + property :cluster_uuid, as: 'clusterUuid' + property :config, as: 'config', class: Google::Apis::DataprocV1beta2::ClusterConfig, decorator: Google::Apis::DataprocV1beta2::ClusterConfig::Representation + + hash :labels, as: 'labels' + property :metrics, as: 'metrics', class: Google::Apis::DataprocV1beta2::ClusterMetrics, decorator: Google::Apis::DataprocV1beta2::ClusterMetrics::Representation + + property :project_id, as: 'projectId' + property :status, as: 'status', class: Google::Apis::DataprocV1beta2::ClusterStatus, decorator: Google::Apis::DataprocV1beta2::ClusterStatus::Representation + + collection :status_history, as: 'statusHistory', class: Google::Apis::DataprocV1beta2::ClusterStatus, decorator: Google::Apis::DataprocV1beta2::ClusterStatus::Representation + + end + end + + class ClusterConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config_bucket, as: 'configBucket' + property :gce_cluster_config, as: 'gceClusterConfig', class: Google::Apis::DataprocV1beta2::GceClusterConfig, decorator: Google::Apis::DataprocV1beta2::GceClusterConfig::Representation + + collection :initialization_actions, as: 'initializationActions', class: Google::Apis::DataprocV1beta2::NodeInitializationAction, decorator: Google::Apis::DataprocV1beta2::NodeInitializationAction::Representation + + property :lifecycle_config, as: 'lifecycleConfig', class: Google::Apis::DataprocV1beta2::LifecycleConfig, decorator: Google::Apis::DataprocV1beta2::LifecycleConfig::Representation + + property :master_config, as: 'masterConfig', class: Google::Apis::DataprocV1beta2::InstanceGroupConfig, decorator: Google::Apis::DataprocV1beta2::InstanceGroupConfig::Representation + + property :secondary_worker_config, as: 'secondaryWorkerConfig', class: Google::Apis::DataprocV1beta2::InstanceGroupConfig, decorator: Google::Apis::DataprocV1beta2::InstanceGroupConfig::Representation + + property :software_config, as: 'softwareConfig', class: Google::Apis::DataprocV1beta2::SoftwareConfig, decorator: Google::Apis::DataprocV1beta2::SoftwareConfig::Representation + + property :worker_config, as: 'workerConfig', class: Google::Apis::DataprocV1beta2::InstanceGroupConfig, decorator: Google::Apis::DataprocV1beta2::InstanceGroupConfig::Representation + + end + end + + class ClusterMetrics + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :hdfs_metrics, as: 'hdfsMetrics' + hash :yarn_metrics, as: 'yarnMetrics' + end + end + + class ClusterOperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_name, as: 'clusterName' + property :cluster_uuid, as: 'clusterUuid' + property :description, as: 'description' + hash :labels, as: 'labels' + property :operation_type, as: 'operationType' + property :status, as: 'status', class: Google::Apis::DataprocV1beta2::ClusterOperationStatus, decorator: Google::Apis::DataprocV1beta2::ClusterOperationStatus::Representation + + collection :status_history, as: 'statusHistory', class: Google::Apis::DataprocV1beta2::ClusterOperationStatus, decorator: Google::Apis::DataprocV1beta2::ClusterOperationStatus::Representation + + collection :warnings, as: 'warnings' + end + end + + class ClusterOperationStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :details, as: 'details' + property :inner_state, as: 'innerState' + property :state, as: 'state' + property :state_start_time, as: 'stateStartTime' + end + end + + class ClusterStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :detail, as: 'detail' + property :state, as: 'state' + property :state_start_time, as: 'stateStartTime' + property :substate, as: 'substate' + end + end + + class DiagnoseClusterRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class DiagnoseClusterResults + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :output_uri, as: 'outputUri' + end + end + + class DiskConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :boot_disk_size_gb, as: 'bootDiskSizeGb' + property :num_local_ssds, as: 'numLocalSsds' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GceClusterConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :internal_ip_only, as: 'internalIpOnly' + hash :metadata, as: 'metadata' + property :network_uri, as: 'networkUri' + property :service_account, as: 'serviceAccount' + collection :service_account_scopes, as: 'serviceAccountScopes' + property :subnetwork_uri, as: 'subnetworkUri' + collection :tags, as: 'tags' + property :zone_uri, as: 'zoneUri' + end + end + + class HadoopJob + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :archive_uris, as: 'archiveUris' + collection :args, as: 'args' + collection :file_uris, as: 'fileUris' + collection :jar_file_uris, as: 'jarFileUris' + property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1beta2::LoggingConfig, decorator: Google::Apis::DataprocV1beta2::LoggingConfig::Representation + + property :main_class, as: 'mainClass' + property :main_jar_file_uri, as: 'mainJarFileUri' + hash :properties, as: 'properties' + end + end + + class HiveJob + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :continue_on_failure, as: 'continueOnFailure' + collection :jar_file_uris, as: 'jarFileUris' + hash :properties, as: 'properties' + property :query_file_uri, as: 'queryFileUri' + property :query_list, as: 'queryList', class: Google::Apis::DataprocV1beta2::QueryList, decorator: Google::Apis::DataprocV1beta2::QueryList::Representation + + hash :script_variables, as: 'scriptVariables' + end + end + + class InstanceGroupConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :accelerators, as: 'accelerators', class: Google::Apis::DataprocV1beta2::AcceleratorConfig, decorator: Google::Apis::DataprocV1beta2::AcceleratorConfig::Representation + + property :disk_config, as: 'diskConfig', class: Google::Apis::DataprocV1beta2::DiskConfig, decorator: Google::Apis::DataprocV1beta2::DiskConfig::Representation + + property :image_uri, as: 'imageUri' + collection :instance_names, as: 'instanceNames' + property :is_preemptible, as: 'isPreemptible' + property :machine_type_uri, as: 'machineTypeUri' + property :managed_group_config, as: 'managedGroupConfig', class: Google::Apis::DataprocV1beta2::ManagedGroupConfig, decorator: Google::Apis::DataprocV1beta2::ManagedGroupConfig::Representation + + property :num_instances, as: 'numInstances' + end + end + + class Job + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :driver_control_files_uri, as: 'driverControlFilesUri' + property :driver_output_resource_uri, as: 'driverOutputResourceUri' + property :hadoop_job, as: 'hadoopJob', class: Google::Apis::DataprocV1beta2::HadoopJob, decorator: Google::Apis::DataprocV1beta2::HadoopJob::Representation + + property :hive_job, as: 'hiveJob', class: Google::Apis::DataprocV1beta2::HiveJob, decorator: Google::Apis::DataprocV1beta2::HiveJob::Representation + + hash :labels, as: 'labels' + property :pig_job, as: 'pigJob', class: Google::Apis::DataprocV1beta2::PigJob, decorator: Google::Apis::DataprocV1beta2::PigJob::Representation + + property :placement, as: 'placement', class: Google::Apis::DataprocV1beta2::JobPlacement, decorator: Google::Apis::DataprocV1beta2::JobPlacement::Representation + + property :pyspark_job, as: 'pysparkJob', class: Google::Apis::DataprocV1beta2::PySparkJob, decorator: Google::Apis::DataprocV1beta2::PySparkJob::Representation + + property :reference, as: 'reference', class: Google::Apis::DataprocV1beta2::JobReference, decorator: Google::Apis::DataprocV1beta2::JobReference::Representation + + property :scheduling, as: 'scheduling', class: Google::Apis::DataprocV1beta2::JobScheduling, decorator: Google::Apis::DataprocV1beta2::JobScheduling::Representation + + property :spark_job, as: 'sparkJob', class: Google::Apis::DataprocV1beta2::SparkJob, decorator: Google::Apis::DataprocV1beta2::SparkJob::Representation + + property :spark_sql_job, as: 'sparkSqlJob', class: Google::Apis::DataprocV1beta2::SparkSqlJob, decorator: Google::Apis::DataprocV1beta2::SparkSqlJob::Representation + + property :status, as: 'status', class: Google::Apis::DataprocV1beta2::JobStatus, decorator: Google::Apis::DataprocV1beta2::JobStatus::Representation + + collection :status_history, as: 'statusHistory', class: Google::Apis::DataprocV1beta2::JobStatus, decorator: Google::Apis::DataprocV1beta2::JobStatus::Representation + + collection :yarn_applications, as: 'yarnApplications', class: Google::Apis::DataprocV1beta2::YarnApplication, decorator: Google::Apis::DataprocV1beta2::YarnApplication::Representation + + end + end + + class JobPlacement + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_name, as: 'clusterName' + property :cluster_uuid, as: 'clusterUuid' + end + end + + class JobReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :job_id, as: 'jobId' + property :project_id, as: 'projectId' + end + end + + class JobScheduling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_failures_per_hour, as: 'maxFailuresPerHour' + end + end + + class JobStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :details, as: 'details' + property :state, as: 'state' + property :state_start_time, as: 'stateStartTime' + property :substate, as: 'substate' + end + end + + class LifecycleConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_delete_time, as: 'autoDeleteTime' + property :auto_delete_ttl, as: 'autoDeleteTtl' + property :idle_delete_ttl, as: 'idleDeleteTtl' + end + end + + class ListClustersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :clusters, as: 'clusters', class: Google::Apis::DataprocV1beta2::Cluster, decorator: Google::Apis::DataprocV1beta2::Cluster::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListJobsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :jobs, as: 'jobs', class: Google::Apis::DataprocV1beta2::Job, decorator: Google::Apis::DataprocV1beta2::Job::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::DataprocV1beta2::Operation, decorator: Google::Apis::DataprocV1beta2::Operation::Representation + + end + end + + class LoggingConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :driver_log_levels, as: 'driverLogLevels' + end + end + + class ManagedGroupConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance_group_manager_name, as: 'instanceGroupManagerName' + property :instance_template_name, as: 'instanceTemplateName' + end + end + + class NodeInitializationAction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :executable_file, as: 'executableFile' + property :execution_timeout, as: 'executionTimeout' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::DataprocV1beta2::Status, decorator: Google::Apis::DataprocV1beta2::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class PigJob + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :continue_on_failure, as: 'continueOnFailure' + collection :jar_file_uris, as: 'jarFileUris' + property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1beta2::LoggingConfig, decorator: Google::Apis::DataprocV1beta2::LoggingConfig::Representation + + hash :properties, as: 'properties' + property :query_file_uri, as: 'queryFileUri' + property :query_list, as: 'queryList', class: Google::Apis::DataprocV1beta2::QueryList, decorator: Google::Apis::DataprocV1beta2::QueryList::Representation + + hash :script_variables, as: 'scriptVariables' + end + end + + class PySparkJob + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :archive_uris, as: 'archiveUris' + collection :args, as: 'args' + collection :file_uris, as: 'fileUris' + collection :jar_file_uris, as: 'jarFileUris' + property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1beta2::LoggingConfig, decorator: Google::Apis::DataprocV1beta2::LoggingConfig::Representation + + property :main_python_file_uri, as: 'mainPythonFileUri' + hash :properties, as: 'properties' + collection :python_file_uris, as: 'pythonFileUris' + end + end + + class QueryList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :queries, as: 'queries' + end + end + + class SoftwareConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :image_version, as: 'imageVersion' + hash :properties, as: 'properties' + end + end + + class SparkJob + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :archive_uris, as: 'archiveUris' + collection :args, as: 'args' + collection :file_uris, as: 'fileUris' + collection :jar_file_uris, as: 'jarFileUris' + property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1beta2::LoggingConfig, decorator: Google::Apis::DataprocV1beta2::LoggingConfig::Representation + + property :main_class, as: 'mainClass' + property :main_jar_file_uri, as: 'mainJarFileUri' + hash :properties, as: 'properties' + end + end + + class SparkSqlJob + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :jar_file_uris, as: 'jarFileUris' + property :logging_config, as: 'loggingConfig', class: Google::Apis::DataprocV1beta2::LoggingConfig, decorator: Google::Apis::DataprocV1beta2::LoggingConfig::Representation + + hash :properties, as: 'properties' + property :query_file_uri, as: 'queryFileUri' + property :query_list, as: 'queryList', class: Google::Apis::DataprocV1beta2::QueryList, decorator: Google::Apis::DataprocV1beta2::QueryList::Representation + + hash :script_variables, as: 'scriptVariables' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class SubmitJobRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :job, as: 'job', class: Google::Apis::DataprocV1beta2::Job, decorator: Google::Apis::DataprocV1beta2::Job::Representation + + end + end + + class YarnApplication + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :progress, as: 'progress' + property :state, as: 'state' + property :tracking_url, as: 'trackingUrl' + end + end + end + end +end diff --git a/generated/google/apis/dataproc_v1beta2/service.rb b/generated/google/apis/dataproc_v1beta2/service.rb new file mode 100644 index 000000000..b628560f7 --- /dev/null +++ b/generated/google/apis/dataproc_v1beta2/service.rb @@ -0,0 +1,739 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DataprocV1beta2 + # Google Cloud Dataproc API + # + # Manages Hadoop-based clusters and jobs on Google Cloud Platform. + # + # @example + # require 'google/apis/dataproc_v1beta2' + # + # Dataproc = Google::Apis::DataprocV1beta2 # Alias the module + # service = Dataproc::DataprocService.new + # + # @see https://cloud.google.com/dataproc/ + class DataprocService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://dataproc.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates a cluster in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the cluster belongs + # to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [Google::Apis::DataprocV1beta2::Cluster] cluster_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_region_cluster(project_id, region, cluster_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/projects/{projectId}/regions/{region}/clusters', options) + command.request_representation = Google::Apis::DataprocV1beta2::Cluster::Representation + command.request_object = cluster_object + command.response_representation = Google::Apis::DataprocV1beta2::Operation::Representation + command.response_class = Google::Apis::DataprocV1beta2::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a cluster in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the cluster belongs + # to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] cluster_name + # Required. The cluster name. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_region_cluster(project_id, region, cluster_name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}', options) + command.response_representation = Google::Apis::DataprocV1beta2::Operation::Representation + command.response_class = Google::Apis::DataprocV1beta2::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['clusterName'] = cluster_name unless cluster_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets cluster diagnostic information. After the operation completes, the + # Operation.response field contains DiagnoseClusterOutputLocation. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the cluster belongs + # to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] cluster_name + # Required. The cluster name. + # @param [Google::Apis::DataprocV1beta2::DiagnoseClusterRequest] diagnose_cluster_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def diagnose_cluster(project_id, region, cluster_name, diagnose_cluster_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose', options) + command.request_representation = Google::Apis::DataprocV1beta2::DiagnoseClusterRequest::Representation + command.request_object = diagnose_cluster_request_object + command.response_representation = Google::Apis::DataprocV1beta2::Operation::Representation + command.response_class = Google::Apis::DataprocV1beta2::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['clusterName'] = cluster_name unless cluster_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the resource representation for a cluster in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the cluster belongs + # to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] cluster_name + # Required. The cluster name. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Cluster] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Cluster] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_region_cluster(project_id, region, cluster_name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}', options) + command.response_representation = Google::Apis::DataprocV1beta2::Cluster::Representation + command.response_class = Google::Apis::DataprocV1beta2::Cluster + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['clusterName'] = cluster_name unless cluster_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all regions/`region`/clusters in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the cluster belongs + # to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] filter + # Optional. A filter constraining the clusters to list. Filters are case- + # sensitive and have the following syntax:field = value AND field = value ... + # where field is one of status.state, clusterName, or labels.[KEY], and [KEY] is + # a label key. value can be * to match all values. status.state can be one of + # the following: ACTIVE, INACTIVE, CREATING, RUNNING, ERROR, DELETING, or + # UPDATING. ACTIVE contains the CREATING, UPDATING, and RUNNING states. INACTIVE + # contains the DELETING and ERROR states. clusterName is the name of the cluster + # provided at creation time. Only the logical AND operator is supported; space- + # separated items are treated as having an implicit AND operator.Example filter: + # status.state = ACTIVE AND clusterName = mycluster AND labels.env = staging AND + # labels.starred = * + # @param [Fixnum] page_size + # Optional. The standard List page size. + # @param [String] page_token + # Optional. The standard List page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::ListClustersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::ListClustersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_region_clusters(project_id, region, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/projects/{projectId}/regions/{region}/clusters', options) + command.response_representation = Google::Apis::DataprocV1beta2::ListClustersResponse::Representation + command.response_class = Google::Apis::DataprocV1beta2::ListClustersResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates a cluster in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project the cluster belongs to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] cluster_name + # Required. The cluster name. + # @param [Google::Apis::DataprocV1beta2::Cluster] cluster_object + # @param [String] graceful_decommission_timeout + # Optional. Timeout for graceful YARN decomissioning. Graceful decommissioning + # allows removing nodes from the cluster without interrupting jobs in progress. + # Timeout specifies how long to wait for jobs in progress to finish before + # forcefully removing nodes (and potentially interrupting jobs). Default timeout + # is 0 (for forceful decommission), and the maximum allowed timeout is 1 day. + # Only supported on Dataproc image versions 1.2 and higher. + # @param [String] update_mask + # 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 < + # code>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 only some fields can be updated: |Mask| + # Purpose| |labels|Updates labels| |config.worker_config.num_instances|Resize + # primary worker group| |config.secondary_worker_config.num_instances|Resize + # secondary worker group| + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_region_cluster(project_id, region, cluster_name, cluster_object = nil, graceful_decommission_timeout: nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}', options) + command.request_representation = Google::Apis::DataprocV1beta2::Cluster::Representation + command.request_object = cluster_object + command.response_representation = Google::Apis::DataprocV1beta2::Operation::Representation + command.response_class = Google::Apis::DataprocV1beta2::Operation + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['clusterName'] = cluster_name unless cluster_name.nil? + command.query['gracefulDecommissionTimeout'] = graceful_decommission_timeout unless graceful_decommission_timeout.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Starts a job cancellation request. To access the job resource after + # cancellation, call regions/`region`/jobs.list or regions/`region`/jobs.get. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the job belongs to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] job_id + # Required. The job ID. + # @param [Google::Apis::DataprocV1beta2::CancelJobRequest] cancel_job_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_job(project_id, region, job_id, cancel_job_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel', options) + command.request_representation = Google::Apis::DataprocV1beta2::CancelJobRequest::Representation + command.request_object = cancel_job_request_object + command.response_representation = Google::Apis::DataprocV1beta2::Job::Representation + command.response_class = Google::Apis::DataprocV1beta2::Job + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the job from the project. If the job is active, the delete fails, and + # the response returns FAILED_PRECONDITION. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the job belongs to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] job_id + # Required. The job ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_region_job(project_id, region, job_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}', options) + command.response_representation = Google::Apis::DataprocV1beta2::Empty::Representation + command.response_class = Google::Apis::DataprocV1beta2::Empty + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the resource representation for a job in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the job belongs to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] job_id + # Required. The job ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_region_job(project_id, region, job_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}', options) + command.response_representation = Google::Apis::DataprocV1beta2::Job::Representation + command.response_class = Google::Apis::DataprocV1beta2::Job + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists regions/`region`/jobs in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the job belongs to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] cluster_name + # Optional. If set, the returned jobs list includes only jobs that were + # submitted to the named cluster. + # @param [String] filter + # Optional. A filter constraining the jobs to list. Filters are case-sensitive + # and have the following syntax:field = value AND field = value ...where field + # is status.state or labels.[KEY], and [KEY] is a label key. value can be * to + # match all values. status.state can be either ACTIVE or INACTIVE. Only the + # logical AND operator is supported; space-separated items are treated as having + # an implicit AND operator.Example filter:status.state = ACTIVE AND labels.env = + # staging AND labels.starred = * + # @param [String] job_state_matcher + # Optional. Specifies enumerated categories of jobs to list (default = match ALL + # jobs). + # @param [Fixnum] page_size + # Optional. The number of results to return in each response. + # @param [String] page_token + # Optional. The page token, returned by a previous call, to request the next + # page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::ListJobsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::ListJobsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_region_jobs(project_id, region, cluster_name: nil, filter: nil, job_state_matcher: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/projects/{projectId}/regions/{region}/jobs', options) + command.response_representation = Google::Apis::DataprocV1beta2::ListJobsResponse::Representation + command.response_class = Google::Apis::DataprocV1beta2::ListJobsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.query['clusterName'] = cluster_name unless cluster_name.nil? + command.query['filter'] = filter unless filter.nil? + command.query['jobStateMatcher'] = job_state_matcher unless job_state_matcher.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates a job in a project. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the job belongs to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [String] job_id + # Required. The job ID. + # @param [Google::Apis::DataprocV1beta2::Job] job_object + # @param [String] update_mask + # Required. Specifies the path, relative to Job, of the field to + # update. For example, to update the labels of a Job the update_mask + # parameter would be specified as labels, and the PATCH request + # body would specify the new value. Note: Currently, + # labels is the only field that can be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_region_job(project_id, region, job_id, job_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}', options) + command.request_representation = Google::Apis::DataprocV1beta2::Job::Representation + command.request_object = job_object + command.response_representation = Google::Apis::DataprocV1beta2::Job::Representation + command.response_class = Google::Apis::DataprocV1beta2::Job + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Submits a job to a cluster. + # @param [String] project_id + # Required. The ID of the Google Cloud Platform project that the job belongs to. + # @param [String] region + # Required. The Cloud Dataproc region in which to handle the request. + # @param [Google::Apis::DataprocV1beta2::SubmitJobRequest] submit_job_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def submit_job(project_id, region, submit_job_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/projects/{projectId}/regions/{region}/jobs:submit', options) + command.request_representation = Google::Apis::DataprocV1beta2::SubmitJobRequest::Representation + command.request_object = submit_job_request_object + command.response_representation = Google::Apis::DataprocV1beta2::Job::Representation + command.response_class = Google::Apis::DataprocV1beta2::Job + command.params['projectId'] = project_id unless project_id.nil? + command.params['region'] = region unless region.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Starts asynchronous cancellation on a long-running operation. The server makes + # a best effort to cancel the operation, but success is not guaranteed. If the + # server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. + # Clients can use Operations.GetOperation or other methods to check whether the + # cancellation succeeded or whether the operation completed despite cancellation. + # On successful cancellation, the operation is not deleted; instead, it becomes + # an operation with an Operation.error value with a google.rpc.Status.code of 1, + # corresponding to Code.CANCELLED. + # @param [String] name + # The name of the operation resource to be cancelled. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_project_region_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+name}:cancel', options) + command.response_representation = Google::Apis::DataprocV1beta2::Empty::Representation + command.response_class = Google::Apis::DataprocV1beta2::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a long-running operation. This method indicates that the client is no + # longer interested in the operation result. It does not cancel the operation. + # If the server doesn't support this method, it returns google.rpc.Code. + # UNIMPLEMENTED. + # @param [String] name + # The name of the operation resource to be deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_region_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta2/{+name}', options) + command.response_representation = Google::Apis::DataprocV1beta2::Empty::Representation + command.response_class = Google::Apis::DataprocV1beta2::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] name + # The name of the operation resource. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_region_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+name}', options) + command.response_representation = Google::Apis::DataprocV1beta2::Operation::Representation + command.response_class = Google::Apis::DataprocV1beta2::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the server + # doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding + # allows API services to override the binding to use different resource name + # schemes, such as users/*/operations. To override the binding, API services can + # add a binding such as "/v1/`name=users/*`/operations" to their service + # configuration. For backwards compatibility, the default name includes the + # operations collection id, however overriding users must ensure the name + # binding is the parent resource, without the operations collection id. + # @param [String] name + # The name of the operation's parent resource. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DataprocV1beta2::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataprocV1beta2::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_region_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+name}', options) + command.response_representation = Google::Apis::DataprocV1beta2::ListOperationsResponse::Representation + command.response_class = Google::Apis::DataprocV1beta2::ListOperationsResponse + command.params['name'] = name unless name.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/datastore_v1beta3.rb b/generated/google/apis/datastore_v1beta3.rb new file mode 100644 index 000000000..4753f775d --- /dev/null +++ b/generated/google/apis/datastore_v1beta3.rb @@ -0,0 +1,38 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/datastore_v1beta3/service.rb' +require 'google/apis/datastore_v1beta3/classes.rb' +require 'google/apis/datastore_v1beta3/representations.rb' + +module Google + module Apis + # Google Cloud Datastore API + # + # Accesses the schemaless NoSQL database to provide fully managed, robust, + # scalable storage for your application. + # + # @see https://cloud.google.com/datastore/ + module DatastoreV1beta3 + VERSION = 'V1beta3' + REVISION = '20170811' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View and manage your Google Cloud Datastore data + AUTH_DATASTORE = 'https://www.googleapis.com/auth/datastore' + end + end +end diff --git a/generated/google/apis/datastore_v1beta3/classes.rb b/generated/google/apis/datastore_v1beta3/classes.rb new file mode 100644 index 000000000..612d5af34 --- /dev/null +++ b/generated/google/apis/datastore_v1beta3/classes.rb @@ -0,0 +1,1621 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DatastoreV1beta3 + + # The request for Datastore.AllocateIds. + class AllocateIdsRequest + include Google::Apis::Core::Hashable + + # A list of keys with incomplete key paths for which to allocate IDs. + # No key may be reserved/read-only. + # Corresponds to the JSON property `keys` + # @return [Array] + attr_accessor :keys + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @keys = args[:keys] if args.key?(:keys) + end + end + + # The response for Datastore.AllocateIds. + class AllocateIdsResponse + include Google::Apis::Core::Hashable + + # The keys specified in the request (in the same order), each with + # its key path completed with a newly allocated ID. + # Corresponds to the JSON property `keys` + # @return [Array] + attr_accessor :keys + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @keys = args[:keys] if args.key?(:keys) + end + end + + # An array value. + class ArrayValue + include Google::Apis::Core::Hashable + + # Values in the array. + # The order of this array may not be preserved if it contains a mix of + # indexed and unindexed values. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @values = args[:values] if args.key?(:values) + end + end + + # The request for Datastore.BeginTransaction. + class BeginTransactionRequest + include Google::Apis::Core::Hashable + + # Options for beginning a new transaction. + # Transactions can be created explicitly with calls to + # Datastore.BeginTransaction or implicitly by setting + # ReadOptions.new_transaction in read requests. + # Corresponds to the JSON property `transactionOptions` + # @return [Google::Apis::DatastoreV1beta3::TransactionOptions] + attr_accessor :transaction_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @transaction_options = args[:transaction_options] if args.key?(:transaction_options) + end + end + + # The response for Datastore.BeginTransaction. + class BeginTransactionResponse + include Google::Apis::Core::Hashable + + # The transaction identifier (always present). + # Corresponds to the JSON property `transaction` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :transaction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @transaction = args[:transaction] if args.key?(:transaction) + end + end + + # The request for Datastore.Commit. + class CommitRequest + include Google::Apis::Core::Hashable + + # The type of commit to perform. Defaults to `TRANSACTIONAL`. + # Corresponds to the JSON property `mode` + # @return [String] + attr_accessor :mode + + # The mutations to perform. + # When mode is `TRANSACTIONAL`, mutations affecting a single entity are + # applied in order. The following sequences of mutations affecting a single + # entity are not permitted in a single `Commit` request: + # - `insert` followed by `insert` + # - `update` followed by `insert` + # - `upsert` followed by `insert` + # - `delete` followed by `update` + # When mode is `NON_TRANSACTIONAL`, no two mutations may affect a single + # entity. + # Corresponds to the JSON property `mutations` + # @return [Array] + attr_accessor :mutations + + # The identifier of the transaction associated with the commit. A + # transaction identifier is returned by a call to + # Datastore.BeginTransaction. + # Corresponds to the JSON property `transaction` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :transaction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @mode = args[:mode] if args.key?(:mode) + @mutations = args[:mutations] if args.key?(:mutations) + @transaction = args[:transaction] if args.key?(:transaction) + end + end + + # The response for Datastore.Commit. + class CommitResponse + include Google::Apis::Core::Hashable + + # The number of index entries updated during the commit, or zero if none were + # updated. + # Corresponds to the JSON property `indexUpdates` + # @return [Fixnum] + attr_accessor :index_updates + + # The result of performing the mutations. + # The i-th mutation result corresponds to the i-th mutation in the request. + # Corresponds to the JSON property `mutationResults` + # @return [Array] + attr_accessor :mutation_results + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @index_updates = args[:index_updates] if args.key?(:index_updates) + @mutation_results = args[:mutation_results] if args.key?(:mutation_results) + end + end + + # A filter that merges multiple other filters using the given operator. + class CompositeFilter + include Google::Apis::Core::Hashable + + # The list of filters to combine. + # Must contain at least one filter. + # Corresponds to the JSON property `filters` + # @return [Array] + attr_accessor :filters + + # The operator for combining multiple filters. + # Corresponds to the JSON property `op` + # @return [String] + attr_accessor :op + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @filters = args[:filters] if args.key?(:filters) + @op = args[:op] if args.key?(:op) + end + end + + # A Datastore data object. + # An entity is limited to 1 megabyte when stored. That _roughly_ + # corresponds to a limit of 1 megabyte for the serialized form of this + # message. + class Entity + include Google::Apis::Core::Hashable + + # A unique identifier for an entity. + # If a key's partition ID or any of its path kinds or names are + # reserved/read-only, the key is reserved/read-only. + # A reserved/read-only key is forbidden in certain documented contexts. + # Corresponds to the JSON property `key` + # @return [Google::Apis::DatastoreV1beta3::Key] + attr_accessor :key + + # The entity's properties. + # The map's keys are property names. + # A property name matching regex `__.*__` is reserved. + # A reserved property name is forbidden in certain documented contexts. + # The name must not contain more than 500 characters. + # The name cannot be `""`. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @properties = args[:properties] if args.key?(:properties) + end + end + + # The result of fetching an entity from Datastore. + class EntityResult + include Google::Apis::Core::Hashable + + # A cursor that points to the position after the result entity. + # Set only when the `EntityResult` is part of a `QueryResultBatch` message. + # Corresponds to the JSON property `cursor` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :cursor + + # A Datastore data object. + # An entity is limited to 1 megabyte when stored. That _roughly_ + # corresponds to a limit of 1 megabyte for the serialized form of this + # message. + # Corresponds to the JSON property `entity` + # @return [Google::Apis::DatastoreV1beta3::Entity] + attr_accessor :entity + + # The version of the entity, a strictly positive number that monotonically + # increases with changes to the entity. + # This field is set for `FULL` entity + # results. + # For missing entities in `LookupResponse`, this + # is the version of the snapshot that was used to look up the entity, and it + # is always set except for eventually consistent reads. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cursor = args[:cursor] if args.key?(:cursor) + @entity = args[:entity] if args.key?(:entity) + @version = args[:version] if args.key?(:version) + end + end + + # A holder for any type of filter. + class Filter + include Google::Apis::Core::Hashable + + # A filter that merges multiple other filters using the given operator. + # Corresponds to the JSON property `compositeFilter` + # @return [Google::Apis::DatastoreV1beta3::CompositeFilter] + attr_accessor :composite_filter + + # A filter on a specific property. + # Corresponds to the JSON property `propertyFilter` + # @return [Google::Apis::DatastoreV1beta3::PropertyFilter] + attr_accessor :property_filter + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @composite_filter = args[:composite_filter] if args.key?(:composite_filter) + @property_filter = args[:property_filter] if args.key?(:property_filter) + end + end + + # Metadata common to all Datastore Admin operations. + class GoogleDatastoreAdminV1beta1CommonMetadata + include Google::Apis::Core::Hashable + + # The time the operation ended, either successfully or otherwise. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # The client-assigned labels which were provided when the operation was + # created. May also include additional labels. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The type of the operation. Can be used as a filter in + # ListOperationsRequest. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The time that work began on the operation. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # The current state of the Operation. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @labels = args[:labels] if args.key?(:labels) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @start_time = args[:start_time] if args.key?(:start_time) + @state = args[:state] if args.key?(:state) + end + end + + # Identifies a subset of entities in a project. This is specified as + # combinations of kind + namespace (either or both of which may be all, as + # described in the following examples). + # Example usage: + # Entire project: + # kinds=[], namespace_ids=[] + # Kinds Foo and Bar in all namespaces: + # kinds=['Foo', 'Bar'], namespace_ids=[] + # Kinds Foo and Bar only in the default namespace: + # kinds=['Foo', 'Bar'], namespace_ids=[''] + # Kinds Foo and Bar in both the default and Baz namespaces: + # kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] + # The entire Baz namespace: + # kinds=[], namespace_ids=['Baz'] + class GoogleDatastoreAdminV1beta1EntityFilter + include Google::Apis::Core::Hashable + + # If empty, then this represents all kinds. + # Corresponds to the JSON property `kinds` + # @return [Array] + attr_accessor :kinds + + # An empty list represents all namespaces. This is the preferred + # usage for projects that don't use namespaces. + # An empty string element represents the default namespace. This should be + # used if the project has data in non-default namespaces, but doesn't want to + # include them. + # Each namespace in this list must be unique. + # Corresponds to the JSON property `namespaceIds` + # @return [Array] + attr_accessor :namespace_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kinds = args[:kinds] if args.key?(:kinds) + @namespace_ids = args[:namespace_ids] if args.key?(:namespace_ids) + end + end + + # Metadata for ExportEntities operations. + class GoogleDatastoreAdminV1beta1ExportEntitiesMetadata + include Google::Apis::Core::Hashable + + # Metadata common to all Datastore Admin operations. + # Corresponds to the JSON property `common` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1CommonMetadata] + attr_accessor :common + + # Identifies a subset of entities in a project. This is specified as + # combinations of kind + namespace (either or both of which may be all, as + # described in the following examples). + # Example usage: + # Entire project: + # kinds=[], namespace_ids=[] + # Kinds Foo and Bar in all namespaces: + # kinds=['Foo', 'Bar'], namespace_ids=[] + # Kinds Foo and Bar only in the default namespace: + # kinds=['Foo', 'Bar'], namespace_ids=[''] + # Kinds Foo and Bar in both the default and Baz namespaces: + # kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] + # The entire Baz namespace: + # kinds=[], namespace_ids=['Baz'] + # Corresponds to the JSON property `entityFilter` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1EntityFilter] + attr_accessor :entity_filter + + # Location for the export metadata and data files. This will be the same + # value as the + # google.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_prefix + # field. The final output location is provided in + # google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url. + # Corresponds to the JSON property `outputUrlPrefix` + # @return [String] + attr_accessor :output_url_prefix + + # Measures the progress of a particular metric. + # Corresponds to the JSON property `progressBytes` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress] + attr_accessor :progress_bytes + + # Measures the progress of a particular metric. + # Corresponds to the JSON property `progressEntities` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress] + attr_accessor :progress_entities + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @common = args[:common] if args.key?(:common) + @entity_filter = args[:entity_filter] if args.key?(:entity_filter) + @output_url_prefix = args[:output_url_prefix] if args.key?(:output_url_prefix) + @progress_bytes = args[:progress_bytes] if args.key?(:progress_bytes) + @progress_entities = args[:progress_entities] if args.key?(:progress_entities) + end + end + + # The response for + # google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities. + class GoogleDatastoreAdminV1beta1ExportEntitiesResponse + include Google::Apis::Core::Hashable + + # Location of the output metadata file. This can be used to begin an import + # into Cloud Datastore (this project or another project). See + # google.datastore.admin.v1beta1.ImportEntitiesRequest.input_url. + # Only present if the operation completed successfully. + # Corresponds to the JSON property `outputUrl` + # @return [String] + attr_accessor :output_url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @output_url = args[:output_url] if args.key?(:output_url) + end + end + + # Metadata for ImportEntities operations. + class GoogleDatastoreAdminV1beta1ImportEntitiesMetadata + include Google::Apis::Core::Hashable + + # Metadata common to all Datastore Admin operations. + # Corresponds to the JSON property `common` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1CommonMetadata] + attr_accessor :common + + # Identifies a subset of entities in a project. This is specified as + # combinations of kind + namespace (either or both of which may be all, as + # described in the following examples). + # Example usage: + # Entire project: + # kinds=[], namespace_ids=[] + # Kinds Foo and Bar in all namespaces: + # kinds=['Foo', 'Bar'], namespace_ids=[] + # Kinds Foo and Bar only in the default namespace: + # kinds=['Foo', 'Bar'], namespace_ids=[''] + # Kinds Foo and Bar in both the default and Baz namespaces: + # kinds=['Foo', 'Bar'], namespace_ids=['', 'Baz'] + # The entire Baz namespace: + # kinds=[], namespace_ids=['Baz'] + # Corresponds to the JSON property `entityFilter` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1EntityFilter] + attr_accessor :entity_filter + + # The location of the import metadata file. This will be the same value as + # the google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url + # field. + # Corresponds to the JSON property `inputUrl` + # @return [String] + attr_accessor :input_url + + # Measures the progress of a particular metric. + # Corresponds to the JSON property `progressBytes` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress] + attr_accessor :progress_bytes + + # Measures the progress of a particular metric. + # Corresponds to the JSON property `progressEntities` + # @return [Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress] + attr_accessor :progress_entities + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @common = args[:common] if args.key?(:common) + @entity_filter = args[:entity_filter] if args.key?(:entity_filter) + @input_url = args[:input_url] if args.key?(:input_url) + @progress_bytes = args[:progress_bytes] if args.key?(:progress_bytes) + @progress_entities = args[:progress_entities] if args.key?(:progress_entities) + end + end + + # Measures the progress of a particular metric. + class GoogleDatastoreAdminV1beta1Progress + include Google::Apis::Core::Hashable + + # Note that this may be greater than work_estimated. + # Corresponds to the JSON property `workCompleted` + # @return [Fixnum] + attr_accessor :work_completed + + # An estimate of how much work needs to be performed. May be zero if the + # work estimate is unavailable. + # Corresponds to the JSON property `workEstimated` + # @return [Fixnum] + attr_accessor :work_estimated + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @work_completed = args[:work_completed] if args.key?(:work_completed) + @work_estimated = args[:work_estimated] if args.key?(:work_estimated) + end + end + + # A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference). + class GqlQuery + include Google::Apis::Core::Hashable + + # When false, the query string must not contain any literals and instead must + # bind all values. For example, + # `SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while + # `SELECT * FROM Kind WHERE a = @value` is. + # Corresponds to the JSON property `allowLiterals` + # @return [Boolean] + attr_accessor :allow_literals + alias_method :allow_literals?, :allow_literals + + # For each non-reserved named binding site in the query string, there must be + # a named parameter with that name, but not necessarily the inverse. + # Key must match regex `A-Za-z_$*`, must not match regex + # `__.*__`, and must not be `""`. + # Corresponds to the JSON property `namedBindings` + # @return [Hash] + attr_accessor :named_bindings + + # Numbered binding site @1 references the first numbered parameter, + # effectively using 1-based indexing, rather than the usual 0. + # For each binding site numbered i in `query_string`, there must be an i-th + # numbered parameter. The inverse must also be true. + # Corresponds to the JSON property `positionalBindings` + # @return [Array] + attr_accessor :positional_bindings + + # A string of the format described + # [here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference). + # Corresponds to the JSON property `queryString` + # @return [String] + attr_accessor :query_string + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allow_literals = args[:allow_literals] if args.key?(:allow_literals) + @named_bindings = args[:named_bindings] if args.key?(:named_bindings) + @positional_bindings = args[:positional_bindings] if args.key?(:positional_bindings) + @query_string = args[:query_string] if args.key?(:query_string) + end + end + + # A binding parameter for a GQL query. + class GqlQueryParameter + include Google::Apis::Core::Hashable + + # A query cursor. Query cursors are returned in query + # result batches. + # Corresponds to the JSON property `cursor` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :cursor + + # A message that can hold any of the supported value types and associated + # metadata. + # Corresponds to the JSON property `value` + # @return [Google::Apis::DatastoreV1beta3::Value] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cursor = args[:cursor] if args.key?(:cursor) + @value = args[:value] if args.key?(:value) + end + end + + # A unique identifier for an entity. + # If a key's partition ID or any of its path kinds or names are + # reserved/read-only, the key is reserved/read-only. + # A reserved/read-only key is forbidden in certain documented contexts. + class Key + include Google::Apis::Core::Hashable + + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + # Partition dimensions: + # - May be `""`. + # - Must be valid UTF-8 bytes. + # - Must have values that match regex `[A-Za-z\d\.\-_]`1,100`` + # If the value of any dimension matches regex `__.*__`, the partition is + # reserved/read-only. + # A reserved/read-only partition ID is forbidden in certain documented + # contexts. + # Foreign partition IDs (in which the project ID does + # not match the context project ID ) are discouraged. + # Reads and writes of foreign partition IDs may fail if the project is not in an + # active state. + # Corresponds to the JSON property `partitionId` + # @return [Google::Apis::DatastoreV1beta3::PartitionId] + attr_accessor :partition_id + + # The entity path. + # An entity path consists of one or more elements composed of a kind and a + # string or numerical identifier, which identify entities. The first + # element identifies a _root entity_, the second element identifies + # a _child_ of the root entity, the third element identifies a child of the + # second entity, and so forth. The entities identified by all prefixes of + # the path are called the element's _ancestors_. + # An entity path is always fully complete: *all* of the entity's ancestors + # are required to be in the path along with the entity identifier itself. + # The only exception is that in some documented cases, the identifier in the + # last path element (for the entity) itself may be omitted. For example, + # the last path element of the key of `Mutation.insert` may have no + # identifier. + # A path can never be empty, and a path can have at most 100 elements. + # Corresponds to the JSON property `path` + # @return [Array] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @partition_id = args[:partition_id] if args.key?(:partition_id) + @path = args[:path] if args.key?(:path) + end + end + + # A representation of a kind. + class KindExpression + include Google::Apis::Core::Hashable + + # The name of the kind. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # An object representing a latitude/longitude pair. This is expressed as a pair + # of doubles representing degrees latitude and degrees longitude. Unless + # specified otherwise, this must conform to the + # WGS84 + # standard. Values must be within normalized ranges. + # Example of normalization code in Python: + # def NormalizeLongitude(longitude): + # """Wraps decimal degrees longitude to [-180.0, 180.0].""" + # q, r = divmod(longitude, 360.0) + # if r > 180.0 or (r == 180.0 and q <= -1.0): + # return r - 360.0 + # return r + # def NormalizeLatLng(latitude, longitude): + # """Wraps decimal degrees latitude and longitude to + # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" + # r = latitude % 360.0 + # if r <= 90.0: + # return r, NormalizeLongitude(longitude) + # elif r >= 270.0: + # return r - 360, NormalizeLongitude(longitude) + # else: + # return 180 - r, NormalizeLongitude(longitude + 180.0) + # assert 180.0 == NormalizeLongitude(180.0) + # assert -180.0 == NormalizeLongitude(-180.0) + # assert -179.0 == NormalizeLongitude(181.0) + # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) + # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) + # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) + # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) + # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) + # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) + # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) + # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) + # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) + # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) + class LatLng + include Google::Apis::Core::Hashable + + # The latitude in degrees. It must be in the range [-90.0, +90.0]. + # Corresponds to the JSON property `latitude` + # @return [Float] + attr_accessor :latitude + + # The longitude in degrees. It must be in the range [-180.0, +180.0]. + # Corresponds to the JSON property `longitude` + # @return [Float] + attr_accessor :longitude + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @latitude = args[:latitude] if args.key?(:latitude) + @longitude = args[:longitude] if args.key?(:longitude) + end + end + + # The request for Datastore.Lookup. + class LookupRequest + include Google::Apis::Core::Hashable + + # Keys of entities to look up. + # Corresponds to the JSON property `keys` + # @return [Array] + attr_accessor :keys + + # The options shared by read requests. + # Corresponds to the JSON property `readOptions` + # @return [Google::Apis::DatastoreV1beta3::ReadOptions] + attr_accessor :read_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @keys = args[:keys] if args.key?(:keys) + @read_options = args[:read_options] if args.key?(:read_options) + end + end + + # The response for Datastore.Lookup. + class LookupResponse + include Google::Apis::Core::Hashable + + # A list of keys that were not looked up due to resource constraints. The + # order of results in this field is undefined and has no relation to the + # order of the keys in the input. + # Corresponds to the JSON property `deferred` + # @return [Array] + attr_accessor :deferred + + # Entities found as `ResultType.FULL` entities. The order of results in this + # field is undefined and has no relation to the order of the keys in the + # input. + # Corresponds to the JSON property `found` + # @return [Array] + attr_accessor :found + + # Entities not found as `ResultType.KEY_ONLY` entities. The order of results + # in this field is undefined and has no relation to the order of the keys + # in the input. + # Corresponds to the JSON property `missing` + # @return [Array] + attr_accessor :missing + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deferred = args[:deferred] if args.key?(:deferred) + @found = args[:found] if args.key?(:found) + @missing = args[:missing] if args.key?(:missing) + end + end + + # A mutation to apply to an entity. + class Mutation + include Google::Apis::Core::Hashable + + # The version of the entity that this mutation is being applied to. If this + # does not match the current version on the server, the mutation conflicts. + # Corresponds to the JSON property `baseVersion` + # @return [Fixnum] + attr_accessor :base_version + + # A unique identifier for an entity. + # If a key's partition ID or any of its path kinds or names are + # reserved/read-only, the key is reserved/read-only. + # A reserved/read-only key is forbidden in certain documented contexts. + # Corresponds to the JSON property `delete` + # @return [Google::Apis::DatastoreV1beta3::Key] + attr_accessor :delete + + # A Datastore data object. + # An entity is limited to 1 megabyte when stored. That _roughly_ + # corresponds to a limit of 1 megabyte for the serialized form of this + # message. + # Corresponds to the JSON property `insert` + # @return [Google::Apis::DatastoreV1beta3::Entity] + attr_accessor :insert + + # A Datastore data object. + # An entity is limited to 1 megabyte when stored. That _roughly_ + # corresponds to a limit of 1 megabyte for the serialized form of this + # message. + # Corresponds to the JSON property `update` + # @return [Google::Apis::DatastoreV1beta3::Entity] + attr_accessor :update + + # A Datastore data object. + # An entity is limited to 1 megabyte when stored. That _roughly_ + # corresponds to a limit of 1 megabyte for the serialized form of this + # message. + # Corresponds to the JSON property `upsert` + # @return [Google::Apis::DatastoreV1beta3::Entity] + attr_accessor :upsert + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @base_version = args[:base_version] if args.key?(:base_version) + @delete = args[:delete] if args.key?(:delete) + @insert = args[:insert] if args.key?(:insert) + @update = args[:update] if args.key?(:update) + @upsert = args[:upsert] if args.key?(:upsert) + end + end + + # The result of applying a mutation. + class MutationResult + include Google::Apis::Core::Hashable + + # Whether a conflict was detected for this mutation. Always false when a + # conflict detection strategy field is not set in the mutation. + # Corresponds to the JSON property `conflictDetected` + # @return [Boolean] + attr_accessor :conflict_detected + alias_method :conflict_detected?, :conflict_detected + + # A unique identifier for an entity. + # If a key's partition ID or any of its path kinds or names are + # reserved/read-only, the key is reserved/read-only. + # A reserved/read-only key is forbidden in certain documented contexts. + # Corresponds to the JSON property `key` + # @return [Google::Apis::DatastoreV1beta3::Key] + attr_accessor :key + + # The version of the entity on the server after processing the mutation. If + # the mutation doesn't change anything on the server, then the version will + # be the version of the current entity or, if no entity is present, a version + # that is strictly greater than the version of any previous entity and less + # than the version of any possible future entity. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @conflict_detected = args[:conflict_detected] if args.key?(:conflict_detected) + @key = args[:key] if args.key?(:key) + @version = args[:version] if args.key?(:version) + end + end + + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + # Partition dimensions: + # - May be `""`. + # - Must be valid UTF-8 bytes. + # - Must have values that match regex `[A-Za-z\d\.\-_]`1,100`` + # If the value of any dimension matches regex `__.*__`, the partition is + # reserved/read-only. + # A reserved/read-only partition ID is forbidden in certain documented + # contexts. + # Foreign partition IDs (in which the project ID does + # not match the context project ID ) are discouraged. + # Reads and writes of foreign partition IDs may fail if the project is not in an + # active state. + class PartitionId + include Google::Apis::Core::Hashable + + # If not empty, the ID of the namespace to which the entities belong. + # Corresponds to the JSON property `namespaceId` + # @return [String] + attr_accessor :namespace_id + + # The ID of the project to which the entities belong. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @namespace_id = args[:namespace_id] if args.key?(:namespace_id) + @project_id = args[:project_id] if args.key?(:project_id) + end + end + + # A (kind, ID/name) pair used to construct a key path. + # If either name or ID is set, the element is complete. + # If neither is set, the element is incomplete. + class PathElement + include Google::Apis::Core::Hashable + + # The auto-allocated ID of the entity. + # Never equal to zero. Values less than zero are discouraged and may not + # be supported in the future. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The kind of the entity. + # A kind matching regex `__.*__` is reserved/read-only. + # A kind must not contain more than 1500 bytes when UTF-8 encoded. + # Cannot be `""`. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the entity. + # A name matching regex `__.*__` is reserved/read-only. + # A name must not be more than 1500 bytes when UTF-8 encoded. + # Cannot be `""`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + end + end + + # A representation of a property in a projection. + class Projection + include Google::Apis::Core::Hashable + + # A reference to a property relative to the kind expressions. + # Corresponds to the JSON property `property` + # @return [Google::Apis::DatastoreV1beta3::PropertyReference] + attr_accessor :property + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @property = args[:property] if args.key?(:property) + end + end + + # A filter on a specific property. + class PropertyFilter + include Google::Apis::Core::Hashable + + # The operator to filter by. + # Corresponds to the JSON property `op` + # @return [String] + attr_accessor :op + + # A reference to a property relative to the kind expressions. + # Corresponds to the JSON property `property` + # @return [Google::Apis::DatastoreV1beta3::PropertyReference] + attr_accessor :property + + # A message that can hold any of the supported value types and associated + # metadata. + # Corresponds to the JSON property `value` + # @return [Google::Apis::DatastoreV1beta3::Value] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @op = args[:op] if args.key?(:op) + @property = args[:property] if args.key?(:property) + @value = args[:value] if args.key?(:value) + end + end + + # The desired order for a specific property. + class PropertyOrder + include Google::Apis::Core::Hashable + + # The direction to order by. Defaults to `ASCENDING`. + # Corresponds to the JSON property `direction` + # @return [String] + attr_accessor :direction + + # A reference to a property relative to the kind expressions. + # Corresponds to the JSON property `property` + # @return [Google::Apis::DatastoreV1beta3::PropertyReference] + attr_accessor :property + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @direction = args[:direction] if args.key?(:direction) + @property = args[:property] if args.key?(:property) + end + end + + # A reference to a property relative to the kind expressions. + class PropertyReference + include Google::Apis::Core::Hashable + + # The name of the property. + # If name includes "."s, it may be interpreted as a property name path. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # A query for entities. + class Query + include Google::Apis::Core::Hashable + + # The properties to make distinct. The query results will contain the first + # result for each distinct combination of values for the given properties + # (if empty, all results are returned). + # Corresponds to the JSON property `distinctOn` + # @return [Array] + attr_accessor :distinct_on + + # An ending point for the query results. Query cursors are + # returned in query result batches and + # [can only be used to limit the same query](https://cloud.google.com/datastore/ + # docs/concepts/queries#cursors_limits_and_offsets). + # Corresponds to the JSON property `endCursor` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :end_cursor + + # A holder for any type of filter. + # Corresponds to the JSON property `filter` + # @return [Google::Apis::DatastoreV1beta3::Filter] + attr_accessor :filter + + # The kinds to query (if empty, returns entities of all kinds). + # Currently at most 1 kind may be specified. + # Corresponds to the JSON property `kind` + # @return [Array] + attr_accessor :kind + + # The maximum number of results to return. Applies after all other + # constraints. Optional. + # Unspecified is interpreted as no limit. + # Must be >= 0 if specified. + # Corresponds to the JSON property `limit` + # @return [Fixnum] + attr_accessor :limit + + # The number of results to skip. Applies before limit, but after all other + # constraints. Optional. Must be >= 0 if specified. + # Corresponds to the JSON property `offset` + # @return [Fixnum] + attr_accessor :offset + + # The order to apply to the query results (if empty, order is unspecified). + # Corresponds to the JSON property `order` + # @return [Array] + attr_accessor :order + + # The projection to return. Defaults to returning all properties. + # Corresponds to the JSON property `projection` + # @return [Array] + attr_accessor :projection + + # A starting point for the query results. Query cursors are + # returned in query result batches and + # [can only be used to continue the same query](https://cloud.google.com/ + # datastore/docs/concepts/queries#cursors_limits_and_offsets). + # Corresponds to the JSON property `startCursor` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :start_cursor + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @distinct_on = args[:distinct_on] if args.key?(:distinct_on) + @end_cursor = args[:end_cursor] if args.key?(:end_cursor) + @filter = args[:filter] if args.key?(:filter) + @kind = args[:kind] if args.key?(:kind) + @limit = args[:limit] if args.key?(:limit) + @offset = args[:offset] if args.key?(:offset) + @order = args[:order] if args.key?(:order) + @projection = args[:projection] if args.key?(:projection) + @start_cursor = args[:start_cursor] if args.key?(:start_cursor) + end + end + + # A batch of results produced by a query. + class QueryResultBatch + include Google::Apis::Core::Hashable + + # A cursor that points to the position after the last result in the batch. + # Corresponds to the JSON property `endCursor` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :end_cursor + + # The result type for every entity in `entity_results`. + # Corresponds to the JSON property `entityResultType` + # @return [String] + attr_accessor :entity_result_type + + # The results for this batch. + # Corresponds to the JSON property `entityResults` + # @return [Array] + attr_accessor :entity_results + + # The state of the query after the current batch. + # Corresponds to the JSON property `moreResults` + # @return [String] + attr_accessor :more_results + + # A cursor that points to the position after the last skipped result. + # Will be set when `skipped_results` != 0. + # Corresponds to the JSON property `skippedCursor` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :skipped_cursor + + # The number of results skipped, typically because of an offset. + # Corresponds to the JSON property `skippedResults` + # @return [Fixnum] + attr_accessor :skipped_results + + # The version number of the snapshot this batch was returned from. + # This applies to the range of results from the query's `start_cursor` (or + # the beginning of the query if no cursor was given) to this batch's + # `end_cursor` (not the query's `end_cursor`). + # In a single transaction, subsequent query result batches for the same query + # can have a greater snapshot version number. Each batch's snapshot version + # is valid for all preceding batches. + # The value will be zero for eventually consistent queries. + # Corresponds to the JSON property `snapshotVersion` + # @return [Fixnum] + attr_accessor :snapshot_version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_cursor = args[:end_cursor] if args.key?(:end_cursor) + @entity_result_type = args[:entity_result_type] if args.key?(:entity_result_type) + @entity_results = args[:entity_results] if args.key?(:entity_results) + @more_results = args[:more_results] if args.key?(:more_results) + @skipped_cursor = args[:skipped_cursor] if args.key?(:skipped_cursor) + @skipped_results = args[:skipped_results] if args.key?(:skipped_results) + @snapshot_version = args[:snapshot_version] if args.key?(:snapshot_version) + end + end + + # Options specific to read-only transactions. + class ReadOnly + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The options shared by read requests. + class ReadOptions + include Google::Apis::Core::Hashable + + # The non-transactional read consistency to use. + # Cannot be set to `STRONG` for global queries. + # Corresponds to the JSON property `readConsistency` + # @return [String] + attr_accessor :read_consistency + + # The identifier of the transaction in which to read. A + # transaction identifier is returned by a call to + # Datastore.BeginTransaction. + # Corresponds to the JSON property `transaction` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :transaction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @read_consistency = args[:read_consistency] if args.key?(:read_consistency) + @transaction = args[:transaction] if args.key?(:transaction) + end + end + + # Options specific to read / write transactions. + class ReadWrite + include Google::Apis::Core::Hashable + + # The transaction identifier of the transaction being retried. + # Corresponds to the JSON property `previousTransaction` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :previous_transaction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @previous_transaction = args[:previous_transaction] if args.key?(:previous_transaction) + end + end + + # The request for Datastore.Rollback. + class RollbackRequest + include Google::Apis::Core::Hashable + + # The transaction identifier, returned by a call to + # Datastore.BeginTransaction. + # Corresponds to the JSON property `transaction` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :transaction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @transaction = args[:transaction] if args.key?(:transaction) + end + end + + # The response for Datastore.Rollback. + # (an empty message). + class RollbackResponse + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The request for Datastore.RunQuery. + class RunQueryRequest + include Google::Apis::Core::Hashable + + # A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference). + # Corresponds to the JSON property `gqlQuery` + # @return [Google::Apis::DatastoreV1beta3::GqlQuery] + attr_accessor :gql_query + + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + # Partition dimensions: + # - May be `""`. + # - Must be valid UTF-8 bytes. + # - Must have values that match regex `[A-Za-z\d\.\-_]`1,100`` + # If the value of any dimension matches regex `__.*__`, the partition is + # reserved/read-only. + # A reserved/read-only partition ID is forbidden in certain documented + # contexts. + # Foreign partition IDs (in which the project ID does + # not match the context project ID ) are discouraged. + # Reads and writes of foreign partition IDs may fail if the project is not in an + # active state. + # Corresponds to the JSON property `partitionId` + # @return [Google::Apis::DatastoreV1beta3::PartitionId] + attr_accessor :partition_id + + # A query for entities. + # Corresponds to the JSON property `query` + # @return [Google::Apis::DatastoreV1beta3::Query] + attr_accessor :query + + # The options shared by read requests. + # Corresponds to the JSON property `readOptions` + # @return [Google::Apis::DatastoreV1beta3::ReadOptions] + attr_accessor :read_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gql_query = args[:gql_query] if args.key?(:gql_query) + @partition_id = args[:partition_id] if args.key?(:partition_id) + @query = args[:query] if args.key?(:query) + @read_options = args[:read_options] if args.key?(:read_options) + end + end + + # The response for Datastore.RunQuery. + class RunQueryResponse + include Google::Apis::Core::Hashable + + # A batch of results produced by a query. + # Corresponds to the JSON property `batch` + # @return [Google::Apis::DatastoreV1beta3::QueryResultBatch] + attr_accessor :batch + + # A query for entities. + # Corresponds to the JSON property `query` + # @return [Google::Apis::DatastoreV1beta3::Query] + attr_accessor :query + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @batch = args[:batch] if args.key?(:batch) + @query = args[:query] if args.key?(:query) + end + end + + # Options for beginning a new transaction. + # Transactions can be created explicitly with calls to + # Datastore.BeginTransaction or implicitly by setting + # ReadOptions.new_transaction in read requests. + class TransactionOptions + include Google::Apis::Core::Hashable + + # Options specific to read-only transactions. + # Corresponds to the JSON property `readOnly` + # @return [Google::Apis::DatastoreV1beta3::ReadOnly] + attr_accessor :read_only + + # Options specific to read / write transactions. + # Corresponds to the JSON property `readWrite` + # @return [Google::Apis::DatastoreV1beta3::ReadWrite] + attr_accessor :read_write + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @read_only = args[:read_only] if args.key?(:read_only) + @read_write = args[:read_write] if args.key?(:read_write) + end + end + + # A message that can hold any of the supported value types and associated + # metadata. + class Value + include Google::Apis::Core::Hashable + + # An array value. + # Corresponds to the JSON property `arrayValue` + # @return [Google::Apis::DatastoreV1beta3::ArrayValue] + attr_accessor :array_value + + # A blob value. + # May have at most 1,000,000 bytes. + # When `exclude_from_indexes` is false, may have at most 1500 bytes. + # In JSON requests, must be base64-encoded. + # Corresponds to the JSON property `blobValue` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :blob_value + + # A boolean value. + # Corresponds to the JSON property `booleanValue` + # @return [Boolean] + attr_accessor :boolean_value + alias_method :boolean_value?, :boolean_value + + # A double value. + # Corresponds to the JSON property `doubleValue` + # @return [Float] + attr_accessor :double_value + + # A Datastore data object. + # An entity is limited to 1 megabyte when stored. That _roughly_ + # corresponds to a limit of 1 megabyte for the serialized form of this + # message. + # Corresponds to the JSON property `entityValue` + # @return [Google::Apis::DatastoreV1beta3::Entity] + attr_accessor :entity_value + + # If the value should be excluded from all indexes including those defined + # explicitly. + # Corresponds to the JSON property `excludeFromIndexes` + # @return [Boolean] + attr_accessor :exclude_from_indexes + alias_method :exclude_from_indexes?, :exclude_from_indexes + + # An object representing a latitude/longitude pair. This is expressed as a pair + # of doubles representing degrees latitude and degrees longitude. Unless + # specified otherwise, this must conform to the + # WGS84 + # standard. Values must be within normalized ranges. + # Example of normalization code in Python: + # def NormalizeLongitude(longitude): + # """Wraps decimal degrees longitude to [-180.0, 180.0].""" + # q, r = divmod(longitude, 360.0) + # if r > 180.0 or (r == 180.0 and q <= -1.0): + # return r - 360.0 + # return r + # def NormalizeLatLng(latitude, longitude): + # """Wraps decimal degrees latitude and longitude to + # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" + # r = latitude % 360.0 + # if r <= 90.0: + # return r, NormalizeLongitude(longitude) + # elif r >= 270.0: + # return r - 360, NormalizeLongitude(longitude) + # else: + # return 180 - r, NormalizeLongitude(longitude + 180.0) + # assert 180.0 == NormalizeLongitude(180.0) + # assert -180.0 == NormalizeLongitude(-180.0) + # assert -179.0 == NormalizeLongitude(181.0) + # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) + # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) + # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) + # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) + # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) + # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) + # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) + # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) + # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) + # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) + # Corresponds to the JSON property `geoPointValue` + # @return [Google::Apis::DatastoreV1beta3::LatLng] + attr_accessor :geo_point_value + + # An integer value. + # Corresponds to the JSON property `integerValue` + # @return [Fixnum] + attr_accessor :integer_value + + # A unique identifier for an entity. + # If a key's partition ID or any of its path kinds or names are + # reserved/read-only, the key is reserved/read-only. + # A reserved/read-only key is forbidden in certain documented contexts. + # Corresponds to the JSON property `keyValue` + # @return [Google::Apis::DatastoreV1beta3::Key] + attr_accessor :key_value + + # The `meaning` field should only be populated for backwards compatibility. + # Corresponds to the JSON property `meaning` + # @return [Fixnum] + attr_accessor :meaning + + # A null value. + # Corresponds to the JSON property `nullValue` + # @return [String] + attr_accessor :null_value + + # A UTF-8 encoded string value. + # When `exclude_from_indexes` is false (it is indexed) , may have at most 1500 + # bytes. + # Otherwise, may be set to at least 1,000,000 bytes. + # Corresponds to the JSON property `stringValue` + # @return [String] + attr_accessor :string_value + + # A timestamp value. + # When stored in the Datastore, precise only to microseconds; + # any additional precision is rounded down. + # Corresponds to the JSON property `timestampValue` + # @return [String] + attr_accessor :timestamp_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @array_value = args[:array_value] if args.key?(:array_value) + @blob_value = args[:blob_value] if args.key?(:blob_value) + @boolean_value = args[:boolean_value] if args.key?(:boolean_value) + @double_value = args[:double_value] if args.key?(:double_value) + @entity_value = args[:entity_value] if args.key?(:entity_value) + @exclude_from_indexes = args[:exclude_from_indexes] if args.key?(:exclude_from_indexes) + @geo_point_value = args[:geo_point_value] if args.key?(:geo_point_value) + @integer_value = args[:integer_value] if args.key?(:integer_value) + @key_value = args[:key_value] if args.key?(:key_value) + @meaning = args[:meaning] if args.key?(:meaning) + @null_value = args[:null_value] if args.key?(:null_value) + @string_value = args[:string_value] if args.key?(:string_value) + @timestamp_value = args[:timestamp_value] if args.key?(:timestamp_value) + end + end + end + end +end diff --git a/generated/google/apis/datastore_v1beta3/representations.rb b/generated/google/apis/datastore_v1beta3/representations.rb new file mode 100644 index 000000000..cf6bf66fa --- /dev/null +++ b/generated/google/apis/datastore_v1beta3/representations.rb @@ -0,0 +1,715 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DatastoreV1beta3 + + class AllocateIdsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AllocateIdsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ArrayValue + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BeginTransactionRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BeginTransactionResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CommitRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CommitResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompositeFilter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Entity + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EntityResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Filter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleDatastoreAdminV1beta1CommonMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleDatastoreAdminV1beta1EntityFilter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleDatastoreAdminV1beta1ExportEntitiesMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleDatastoreAdminV1beta1ExportEntitiesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleDatastoreAdminV1beta1ImportEntitiesMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleDatastoreAdminV1beta1Progress + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GqlQuery + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GqlQueryParameter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Key + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class KindExpression + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LatLng + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LookupRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LookupResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Mutation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MutationResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PartitionId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PathElement + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Projection + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PropertyFilter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PropertyOrder + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PropertyReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Query + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class QueryResultBatch + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReadOnly + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReadOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReadWrite + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RollbackRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RollbackResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RunQueryRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RunQueryResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TransactionOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Value + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AllocateIdsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :keys, as: 'keys', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + end + end + + class AllocateIdsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :keys, as: 'keys', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + end + end + + class ArrayValue + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :values, as: 'values', class: Google::Apis::DatastoreV1beta3::Value, decorator: Google::Apis::DatastoreV1beta3::Value::Representation + + end + end + + class BeginTransactionRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :transaction_options, as: 'transactionOptions', class: Google::Apis::DatastoreV1beta3::TransactionOptions, decorator: Google::Apis::DatastoreV1beta3::TransactionOptions::Representation + + end + end + + class BeginTransactionResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :transaction, :base64 => true, as: 'transaction' + end + end + + class CommitRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :mode, as: 'mode' + collection :mutations, as: 'mutations', class: Google::Apis::DatastoreV1beta3::Mutation, decorator: Google::Apis::DatastoreV1beta3::Mutation::Representation + + property :transaction, :base64 => true, as: 'transaction' + end + end + + class CommitResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :index_updates, as: 'indexUpdates' + collection :mutation_results, as: 'mutationResults', class: Google::Apis::DatastoreV1beta3::MutationResult, decorator: Google::Apis::DatastoreV1beta3::MutationResult::Representation + + end + end + + class CompositeFilter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :filters, as: 'filters', class: Google::Apis::DatastoreV1beta3::Filter, decorator: Google::Apis::DatastoreV1beta3::Filter::Representation + + property :op, as: 'op' + end + end + + class Entity + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + hash :properties, as: 'properties', class: Google::Apis::DatastoreV1beta3::Value, decorator: Google::Apis::DatastoreV1beta3::Value::Representation + + end + end + + class EntityResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cursor, :base64 => true, as: 'cursor' + property :entity, as: 'entity', class: Google::Apis::DatastoreV1beta3::Entity, decorator: Google::Apis::DatastoreV1beta3::Entity::Representation + + property :version, :numeric_string => true, as: 'version' + end + end + + class Filter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :composite_filter, as: 'compositeFilter', class: Google::Apis::DatastoreV1beta3::CompositeFilter, decorator: Google::Apis::DatastoreV1beta3::CompositeFilter::Representation + + property :property_filter, as: 'propertyFilter', class: Google::Apis::DatastoreV1beta3::PropertyFilter, decorator: Google::Apis::DatastoreV1beta3::PropertyFilter::Representation + + end + end + + class GoogleDatastoreAdminV1beta1CommonMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime' + hash :labels, as: 'labels' + property :operation_type, as: 'operationType' + property :start_time, as: 'startTime' + property :state, as: 'state' + end + end + + class GoogleDatastoreAdminV1beta1EntityFilter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :kinds, as: 'kinds' + collection :namespace_ids, as: 'namespaceIds' + end + end + + class GoogleDatastoreAdminV1beta1ExportEntitiesMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :common, as: 'common', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1CommonMetadata, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1CommonMetadata::Representation + + property :entity_filter, as: 'entityFilter', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1EntityFilter, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1EntityFilter::Representation + + property :output_url_prefix, as: 'outputUrlPrefix' + property :progress_bytes, as: 'progressBytes', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress::Representation + + property :progress_entities, as: 'progressEntities', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress::Representation + + end + end + + class GoogleDatastoreAdminV1beta1ExportEntitiesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :output_url, as: 'outputUrl' + end + end + + class GoogleDatastoreAdminV1beta1ImportEntitiesMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :common, as: 'common', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1CommonMetadata, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1CommonMetadata::Representation + + property :entity_filter, as: 'entityFilter', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1EntityFilter, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1EntityFilter::Representation + + property :input_url, as: 'inputUrl' + property :progress_bytes, as: 'progressBytes', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress::Representation + + property :progress_entities, as: 'progressEntities', class: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress, decorator: Google::Apis::DatastoreV1beta3::GoogleDatastoreAdminV1beta1Progress::Representation + + end + end + + class GoogleDatastoreAdminV1beta1Progress + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :work_completed, :numeric_string => true, as: 'workCompleted' + property :work_estimated, :numeric_string => true, as: 'workEstimated' + end + end + + class GqlQuery + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :allow_literals, as: 'allowLiterals' + hash :named_bindings, as: 'namedBindings', class: Google::Apis::DatastoreV1beta3::GqlQueryParameter, decorator: Google::Apis::DatastoreV1beta3::GqlQueryParameter::Representation + + collection :positional_bindings, as: 'positionalBindings', class: Google::Apis::DatastoreV1beta3::GqlQueryParameter, decorator: Google::Apis::DatastoreV1beta3::GqlQueryParameter::Representation + + property :query_string, as: 'queryString' + end + end + + class GqlQueryParameter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cursor, :base64 => true, as: 'cursor' + property :value, as: 'value', class: Google::Apis::DatastoreV1beta3::Value, decorator: Google::Apis::DatastoreV1beta3::Value::Representation + + end + end + + class Key + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :partition_id, as: 'partitionId', class: Google::Apis::DatastoreV1beta3::PartitionId, decorator: Google::Apis::DatastoreV1beta3::PartitionId::Representation + + collection :path, as: 'path', class: Google::Apis::DatastoreV1beta3::PathElement, decorator: Google::Apis::DatastoreV1beta3::PathElement::Representation + + end + end + + class KindExpression + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class LatLng + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :latitude, as: 'latitude' + property :longitude, as: 'longitude' + end + end + + class LookupRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :keys, as: 'keys', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + property :read_options, as: 'readOptions', class: Google::Apis::DatastoreV1beta3::ReadOptions, decorator: Google::Apis::DatastoreV1beta3::ReadOptions::Representation + + end + end + + class LookupResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :deferred, as: 'deferred', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + collection :found, as: 'found', class: Google::Apis::DatastoreV1beta3::EntityResult, decorator: Google::Apis::DatastoreV1beta3::EntityResult::Representation + + collection :missing, as: 'missing', class: Google::Apis::DatastoreV1beta3::EntityResult, decorator: Google::Apis::DatastoreV1beta3::EntityResult::Representation + + end + end + + class Mutation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :base_version, :numeric_string => true, as: 'baseVersion' + property :delete, as: 'delete', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + property :insert, as: 'insert', class: Google::Apis::DatastoreV1beta3::Entity, decorator: Google::Apis::DatastoreV1beta3::Entity::Representation + + property :update, as: 'update', class: Google::Apis::DatastoreV1beta3::Entity, decorator: Google::Apis::DatastoreV1beta3::Entity::Representation + + property :upsert, as: 'upsert', class: Google::Apis::DatastoreV1beta3::Entity, decorator: Google::Apis::DatastoreV1beta3::Entity::Representation + + end + end + + class MutationResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :conflict_detected, as: 'conflictDetected' + property :key, as: 'key', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + property :version, :numeric_string => true, as: 'version' + end + end + + class PartitionId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :namespace_id, as: 'namespaceId' + property :project_id, as: 'projectId' + end + end + + class PathElement + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + end + end + + class Projection + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :property, as: 'property', class: Google::Apis::DatastoreV1beta3::PropertyReference, decorator: Google::Apis::DatastoreV1beta3::PropertyReference::Representation + + end + end + + class PropertyFilter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :op, as: 'op' + property :property, as: 'property', class: Google::Apis::DatastoreV1beta3::PropertyReference, decorator: Google::Apis::DatastoreV1beta3::PropertyReference::Representation + + property :value, as: 'value', class: Google::Apis::DatastoreV1beta3::Value, decorator: Google::Apis::DatastoreV1beta3::Value::Representation + + end + end + + class PropertyOrder + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :direction, as: 'direction' + property :property, as: 'property', class: Google::Apis::DatastoreV1beta3::PropertyReference, decorator: Google::Apis::DatastoreV1beta3::PropertyReference::Representation + + end + end + + class PropertyReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class Query + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :distinct_on, as: 'distinctOn', class: Google::Apis::DatastoreV1beta3::PropertyReference, decorator: Google::Apis::DatastoreV1beta3::PropertyReference::Representation + + property :end_cursor, :base64 => true, as: 'endCursor' + property :filter, as: 'filter', class: Google::Apis::DatastoreV1beta3::Filter, decorator: Google::Apis::DatastoreV1beta3::Filter::Representation + + collection :kind, as: 'kind', class: Google::Apis::DatastoreV1beta3::KindExpression, decorator: Google::Apis::DatastoreV1beta3::KindExpression::Representation + + property :limit, as: 'limit' + property :offset, as: 'offset' + collection :order, as: 'order', class: Google::Apis::DatastoreV1beta3::PropertyOrder, decorator: Google::Apis::DatastoreV1beta3::PropertyOrder::Representation + + collection :projection, as: 'projection', class: Google::Apis::DatastoreV1beta3::Projection, decorator: Google::Apis::DatastoreV1beta3::Projection::Representation + + property :start_cursor, :base64 => true, as: 'startCursor' + end + end + + class QueryResultBatch + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_cursor, :base64 => true, as: 'endCursor' + property :entity_result_type, as: 'entityResultType' + collection :entity_results, as: 'entityResults', class: Google::Apis::DatastoreV1beta3::EntityResult, decorator: Google::Apis::DatastoreV1beta3::EntityResult::Representation + + property :more_results, as: 'moreResults' + property :skipped_cursor, :base64 => true, as: 'skippedCursor' + property :skipped_results, as: 'skippedResults' + property :snapshot_version, :numeric_string => true, as: 'snapshotVersion' + end + end + + class ReadOnly + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ReadOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :read_consistency, as: 'readConsistency' + property :transaction, :base64 => true, as: 'transaction' + end + end + + class ReadWrite + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :previous_transaction, :base64 => true, as: 'previousTransaction' + end + end + + class RollbackRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :transaction, :base64 => true, as: 'transaction' + end + end + + class RollbackResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class RunQueryRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gql_query, as: 'gqlQuery', class: Google::Apis::DatastoreV1beta3::GqlQuery, decorator: Google::Apis::DatastoreV1beta3::GqlQuery::Representation + + property :partition_id, as: 'partitionId', class: Google::Apis::DatastoreV1beta3::PartitionId, decorator: Google::Apis::DatastoreV1beta3::PartitionId::Representation + + property :query, as: 'query', class: Google::Apis::DatastoreV1beta3::Query, decorator: Google::Apis::DatastoreV1beta3::Query::Representation + + property :read_options, as: 'readOptions', class: Google::Apis::DatastoreV1beta3::ReadOptions, decorator: Google::Apis::DatastoreV1beta3::ReadOptions::Representation + + end + end + + class RunQueryResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :batch, as: 'batch', class: Google::Apis::DatastoreV1beta3::QueryResultBatch, decorator: Google::Apis::DatastoreV1beta3::QueryResultBatch::Representation + + property :query, as: 'query', class: Google::Apis::DatastoreV1beta3::Query, decorator: Google::Apis::DatastoreV1beta3::Query::Representation + + end + end + + class TransactionOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :read_only, as: 'readOnly', class: Google::Apis::DatastoreV1beta3::ReadOnly, decorator: Google::Apis::DatastoreV1beta3::ReadOnly::Representation + + property :read_write, as: 'readWrite', class: Google::Apis::DatastoreV1beta3::ReadWrite, decorator: Google::Apis::DatastoreV1beta3::ReadWrite::Representation + + end + end + + class Value + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :array_value, as: 'arrayValue', class: Google::Apis::DatastoreV1beta3::ArrayValue, decorator: Google::Apis::DatastoreV1beta3::ArrayValue::Representation + + property :blob_value, :base64 => true, as: 'blobValue' + property :boolean_value, as: 'booleanValue' + property :double_value, as: 'doubleValue' + property :entity_value, as: 'entityValue', class: Google::Apis::DatastoreV1beta3::Entity, decorator: Google::Apis::DatastoreV1beta3::Entity::Representation + + property :exclude_from_indexes, as: 'excludeFromIndexes' + property :geo_point_value, as: 'geoPointValue', class: Google::Apis::DatastoreV1beta3::LatLng, decorator: Google::Apis::DatastoreV1beta3::LatLng::Representation + + property :integer_value, :numeric_string => true, as: 'integerValue' + property :key_value, as: 'keyValue', class: Google::Apis::DatastoreV1beta3::Key, decorator: Google::Apis::DatastoreV1beta3::Key::Representation + + property :meaning, as: 'meaning' + property :null_value, as: 'nullValue' + property :string_value, as: 'stringValue' + property :timestamp_value, as: 'timestampValue' + end + end + end + end +end diff --git a/generated/google/apis/datastore_v1beta3/service.rb b/generated/google/apis/datastore_v1beta3/service.rb new file mode 100644 index 000000000..bddb10121 --- /dev/null +++ b/generated/google/apis/datastore_v1beta3/service.rb @@ -0,0 +1,260 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DatastoreV1beta3 + # Google Cloud Datastore API + # + # Accesses the schemaless NoSQL database to provide fully managed, robust, + # scalable storage for your application. + # + # @example + # require 'google/apis/datastore_v1beta3' + # + # Datastore = Google::Apis::DatastoreV1beta3 # Alias the module + # service = Datastore::DatastoreService.new + # + # @see https://cloud.google.com/datastore/ + class DatastoreService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://datastore.googleapis.com/', '') + @batch_path = 'batch' + end + + # Allocates IDs for the given keys, which is useful for referencing an entity + # before it is inserted. + # @param [String] project_id + # The ID of the project against which to make the request. + # @param [Google::Apis::DatastoreV1beta3::AllocateIdsRequest] allocate_ids_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DatastoreV1beta3::AllocateIdsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DatastoreV1beta3::AllocateIdsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def allocate_project_ids(project_id, allocate_ids_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta3/projects/{projectId}:allocateIds', options) + command.request_representation = Google::Apis::DatastoreV1beta3::AllocateIdsRequest::Representation + command.request_object = allocate_ids_request_object + command.response_representation = Google::Apis::DatastoreV1beta3::AllocateIdsResponse::Representation + command.response_class = Google::Apis::DatastoreV1beta3::AllocateIdsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Begins a new transaction. + # @param [String] project_id + # The ID of the project against which to make the request. + # @param [Google::Apis::DatastoreV1beta3::BeginTransactionRequest] begin_transaction_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DatastoreV1beta3::BeginTransactionResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DatastoreV1beta3::BeginTransactionResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def begin_project_transaction(project_id, begin_transaction_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta3/projects/{projectId}:beginTransaction', options) + command.request_representation = Google::Apis::DatastoreV1beta3::BeginTransactionRequest::Representation + command.request_object = begin_transaction_request_object + command.response_representation = Google::Apis::DatastoreV1beta3::BeginTransactionResponse::Representation + command.response_class = Google::Apis::DatastoreV1beta3::BeginTransactionResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Commits a transaction, optionally creating, deleting or modifying some + # entities. + # @param [String] project_id + # The ID of the project against which to make the request. + # @param [Google::Apis::DatastoreV1beta3::CommitRequest] commit_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DatastoreV1beta3::CommitResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DatastoreV1beta3::CommitResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def commit_project(project_id, commit_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta3/projects/{projectId}:commit', options) + command.request_representation = Google::Apis::DatastoreV1beta3::CommitRequest::Representation + command.request_object = commit_request_object + command.response_representation = Google::Apis::DatastoreV1beta3::CommitResponse::Representation + command.response_class = Google::Apis::DatastoreV1beta3::CommitResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Looks up entities by key. + # @param [String] project_id + # The ID of the project against which to make the request. + # @param [Google::Apis::DatastoreV1beta3::LookupRequest] lookup_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DatastoreV1beta3::LookupResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DatastoreV1beta3::LookupResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def lookup_project(project_id, lookup_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta3/projects/{projectId}:lookup', options) + command.request_representation = Google::Apis::DatastoreV1beta3::LookupRequest::Representation + command.request_object = lookup_request_object + command.response_representation = Google::Apis::DatastoreV1beta3::LookupResponse::Representation + command.response_class = Google::Apis::DatastoreV1beta3::LookupResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Rolls back a transaction. + # @param [String] project_id + # The ID of the project against which to make the request. + # @param [Google::Apis::DatastoreV1beta3::RollbackRequest] rollback_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DatastoreV1beta3::RollbackResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DatastoreV1beta3::RollbackResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def rollback_project(project_id, rollback_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta3/projects/{projectId}:rollback', options) + command.request_representation = Google::Apis::DatastoreV1beta3::RollbackRequest::Representation + command.request_object = rollback_request_object + command.response_representation = Google::Apis::DatastoreV1beta3::RollbackResponse::Representation + command.response_class = Google::Apis::DatastoreV1beta3::RollbackResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Queries for entities. + # @param [String] project_id + # The ID of the project against which to make the request. + # @param [Google::Apis::DatastoreV1beta3::RunQueryRequest] run_query_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DatastoreV1beta3::RunQueryResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DatastoreV1beta3::RunQueryResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def run_project_query(project_id, run_query_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta3/projects/{projectId}:runQuery', options) + command.request_representation = Google::Apis::DatastoreV1beta3::RunQueryRequest::Representation + command.request_object = run_query_request_object + command.response_representation = Google::Apis::DatastoreV1beta3::RunQueryResponse::Representation + command.response_class = Google::Apis::DatastoreV1beta3::RunQueryResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/deploymentmanager_alpha.rb b/generated/google/apis/deploymentmanager_alpha.rb new file mode 100644 index 000000000..c2f833f99 --- /dev/null +++ b/generated/google/apis/deploymentmanager_alpha.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/deploymentmanager_alpha/service.rb' +require 'google/apis/deploymentmanager_alpha/classes.rb' +require 'google/apis/deploymentmanager_alpha/representations.rb' + +module Google + module Apis + # Google Cloud Deployment Manager Alpha API + # + # The Deployment Manager API allows users to declaratively configure, deploy and + # run complex solutions on the Google Cloud Platform. + # + # @see https://cloud.google.com/deployment-manager/ + module DeploymentmanagerAlpha + VERSION = 'Alpha' + REVISION = '20170810' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + + # View and manage your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN = 'https://www.googleapis.com/auth/ndev.cloudman' + + # View your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN_READONLY = 'https://www.googleapis.com/auth/ndev.cloudman.readonly' + end + end +end diff --git a/generated/google/apis/deploymentmanager_alpha/classes.rb b/generated/google/apis/deploymentmanager_alpha/classes.rb new file mode 100644 index 000000000..bb85b5cf5 --- /dev/null +++ b/generated/google/apis/deploymentmanager_alpha/classes.rb @@ -0,0 +1,2422 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DeploymentmanagerAlpha + + # Specifies the audit configuration for a service. The configuration determines + # which permission types are logged, and what identities, if any, are exempted + # from logging. An AuditConfig must have one or more AuditLogConfigs. + # If there are AuditConfigs for both `allServices` and a specific service, the + # union of the two AuditConfigs is used for that service: the log_types + # specified in each AuditConfig are enabled, and the exempted_members in each + # AuditConfig are exempted. + # Example Policy with multiple AuditConfigs: + # ` "audit_configs": [ ` "service": "allServices" "audit_log_configs": [ ` " + # log_type": "DATA_READ", "exempted_members": [ "user:foo@gmail.com" ] `, ` " + # log_type": "DATA_WRITE", `, ` "log_type": "ADMIN_READ", ` ] `, ` "service": " + # fooservice.googleapis.com" "audit_log_configs": [ ` "log_type": "DATA_READ", `, + # ` "log_type": "DATA_WRITE", "exempted_members": [ "user:bar@gmail.com" ] ` ] ` + # ] ` + # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + # logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail. + # com from DATA_WRITE logging. + class AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # Specifies a service that will be enabled for audit logging. For example, ` + # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special + # value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. Example: + # ` "audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ " + # user:foo@gmail.com" ] `, ` "log_type": "DATA_WRITE", ` ] ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail. + # com from DATA_READ logging. + class AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of permission. + # Follows the same format of [Binding.members][]. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Authorization-related information used by Cloud Audit Logging. + class AuthorizationLoggingOptions + include Google::Apis::Core::Hashable + + # The type of the permission that was checked. + # Corresponds to the JSON property `permissionType` + # @return [String] + attr_accessor :permission_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permission_type = args[:permission_type] if args.key?(:permission_type) + end + end + + # Basic Auth used as a credential. + class BasicAuth + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `password` + # @return [String] + attr_accessor :password + + # + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @password = args[:password] if args.key?(:password) + @user = args[:user] if args.key?(:user) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # Represents an expression text. Example: + # title: "User account presence" description: "Determines whether the request + # has a user account" expression: "size(request.user) > 0" + # Corresponds to the JSON property `condition` + # @return [Google::Apis::DeploymentmanagerAlpha::Expr] + attr_accessor :condition + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor` + # , or `roles/owner`. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # CollectionOverride allows resource handling overrides for specific resources + # within a BaseType + class CollectionOverride + include Google::Apis::Core::Hashable + + # The collection that identifies this resource within its service. + # Corresponds to the JSON property `collection` + # @return [String] + attr_accessor :collection + + # Options allows customized resource handling by Deployment Manager. + # Corresponds to the JSON property `options` + # @return [Google::Apis::DeploymentmanagerAlpha::Options] + attr_accessor :options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @collection = args[:collection] if args.key?(:collection) + @options = args[:options] if args.key?(:options) + end + end + + # Holds the composite type. + class CompositeType + include Google::Apis::Core::Hashable + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the composite type was created, in RFC3339 text + # format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # Name of the composite type. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + attr_accessor :operation + + # [Output Only] Self link for the type provider. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # Files that make up the template contents of a template type. + # Corresponds to the JSON property `templateContents` + # @return [Google::Apis::DeploymentmanagerAlpha::TemplateContents] + attr_accessor :template_contents + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @template_contents = args[:template_contents] if args.key?(:template_contents) + end + end + + # + class CompositeTypeLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A response that returns all Composite Types supported by Deployment Manager + class CompositeTypesListResponse + include Google::Apis::Core::Hashable + + # [Output Only] A list of resource composite types supported by Deployment + # Manager. + # Corresponds to the JSON property `compositeTypes` + # @return [Array] + attr_accessor :composite_types + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @composite_types = args[:composite_types] if args.key?(:composite_types) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # A condition to be met. + class Condition + include Google::Apis::Core::Hashable + + # Trusted attributes supplied by the IAM system. + # Corresponds to the JSON property `iam` + # @return [String] + attr_accessor :iam + + # An operator to apply the subject with. + # Corresponds to the JSON property `op` + # @return [String] + attr_accessor :op + + # Trusted attributes discharged by the service. + # Corresponds to the JSON property `svc` + # @return [String] + attr_accessor :svc + + # Trusted attributes supplied by any service that owns resources and uses the + # IAM system for access control. + # Corresponds to the JSON property `sys` + # @return [String] + attr_accessor :sys + + # DEPRECATED. Use 'values' instead. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + # The objects of the condition. This is mutually exclusive with 'value'. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @iam = args[:iam] if args.key?(:iam) + @op = args[:op] if args.key?(:op) + @svc = args[:svc] if args.key?(:svc) + @sys = args[:sys] if args.key?(:sys) + @value = args[:value] if args.key?(:value) + @values = args[:values] if args.key?(:values) + end + end + + # + class ConfigFile + include Google::Apis::Core::Hashable + + # The contents of the file. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + end + end + + # BaseType that describes a service-backed Type. + class ConfigurableService + include Google::Apis::Core::Hashable + + # Allows resource handling overrides for specific collections + # Corresponds to the JSON property `collectionOverrides` + # @return [Array] + attr_accessor :collection_overrides + + # Credential used by ConfigurableResourceTypes. + # Corresponds to the JSON property `credential` + # @return [Google::Apis::DeploymentmanagerAlpha::Credential] + attr_accessor :credential + + # Descriptor Url for the this type. + # Corresponds to the JSON property `descriptorUrl` + # @return [String] + attr_accessor :descriptor_url + + # Options allows customized resource handling by Deployment Manager. + # Corresponds to the JSON property `options` + # @return [Google::Apis::DeploymentmanagerAlpha::Options] + attr_accessor :options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @collection_overrides = args[:collection_overrides] if args.key?(:collection_overrides) + @credential = args[:credential] if args.key?(:credential) + @descriptor_url = args[:descriptor_url] if args.key?(:descriptor_url) + @options = args[:options] if args.key?(:options) + end + end + + # Credential used by ConfigurableResourceTypes. + class Credential + include Google::Apis::Core::Hashable + + # Basic Auth used as a credential. + # Corresponds to the JSON property `basicAuth` + # @return [Google::Apis::DeploymentmanagerAlpha::BasicAuth] + attr_accessor :basic_auth + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @basic_auth = args[:basic_auth] if args.key?(:basic_auth) + end + end + + # + class Deployment + include Google::Apis::Core::Hashable + + # An optional user-provided description of the deployment. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Provides a fingerprint to use in requests to modify a deployment, such as + # update(), stop(), and cancelPreview() requests. A fingerprint is a randomly + # generated value that must be provided with update(), stop(), and cancelPreview( + # ) requests to perform optimistic locking. This ensures optimistic concurrency + # so that only one request happens at a time. + # The fingerprint is initially generated by Deployment Manager and changes after + # every request to modify data. To get the latest fingerprint value, perform a + # get() request to a deployment. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the deployment was created, in RFC3339 text + # format . + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # [Output Only] URL of the manifest representing the last manifest that was + # successfully deployed. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + attr_accessor :operation + + # [Output Only] Self link for the deployment. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # + # Corresponds to the JSON property `target` + # @return [Google::Apis::DeploymentmanagerAlpha::TargetConfiguration] + attr_accessor :target + + # + # Corresponds to the JSON property `update` + # @return [Google::Apis::DeploymentmanagerAlpha::DeploymentUpdate] + attr_accessor :update + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @manifest = args[:manifest] if args.key?(:manifest) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @self_link = args[:self_link] if args.key?(:self_link) + @target = args[:target] if args.key?(:target) + @update = args[:update] if args.key?(:update) + end + end + + # + class DeploymentLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # + class DeploymentUpdate + include Google::Apis::Core::Hashable + + # [Output Only] An optional user-provided description of the deployment after + # the current update has been applied. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Map of labels; provided by the client when the resource is + # created or updated. Specifically: Label keys must be between 1 and 63 + # characters long and must conform to the following regular expression: [a-z]([- + # a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and + # must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # [Output Only] URL of the manifest representing the update configuration of + # this deployment. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @labels = args[:labels] if args.key?(:labels) + @manifest = args[:manifest] if args.key?(:manifest) + end + end + + # + class DeploymentUpdateLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # + class DeploymentsCancelPreviewRequest + include Google::Apis::Core::Hashable + + # Specifies a fingerprint for cancelPreview() requests. A fingerprint is a + # randomly generated value that must be provided in cancelPreview() requests to + # perform optimistic locking. This ensures optimistic concurrency so that the + # deployment does not have conflicting requests (e.g. if someone attempts to + # make a new update request while another user attempts to cancel a preview, + # this would prevent one of the requests). + # The fingerprint is initially generated by Deployment Manager and changes after + # every request to modify a deployment. To get the latest fingerprint value, + # perform a get() request on the deployment. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + end + end + + # A response containing a partial list of deployments and a page token used to + # build the next request if the request has been truncated. + class DeploymentsListResponse + include Google::Apis::Core::Hashable + + # [Output Only] The deployments contained in this response. + # Corresponds to the JSON property `deployments` + # @return [Array] + attr_accessor :deployments + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deployments = args[:deployments] if args.key?(:deployments) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class DeploymentsStopRequest + include Google::Apis::Core::Hashable + + # Specifies a fingerprint for stop() requests. A fingerprint is a randomly + # generated value that must be provided in stop() requests to perform optimistic + # locking. This ensures optimistic concurrency so that the deployment does not + # have conflicting requests (e.g. if someone attempts to make a new update + # request while another user attempts to stop an ongoing update request, this + # would prevent a collision). + # The fingerprint is initially generated by Deployment Manager and changes after + # every request to modify a deployment. To get the latest fingerprint value, + # perform a get() request on the deployment. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + end + end + + # Represents an expression text. Example: + # title: "User account presence" description: "Determines whether the request + # has a user account" expression: "size(request.user) > 0" + class Expr + include Google::Apis::Core::Hashable + + # An optional description of the expression. This is a longer text which + # describes the expression, e.g. when hovered over it in a UI. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Textual representation of an expression in Common Expression Language syntax. + # The application context of the containing message determines which well-known + # feature set of CEL is supported. + # Corresponds to the JSON property `expression` + # @return [String] + attr_accessor :expression + + # An optional string indicating the location of the expression for error + # reporting, e.g. a file name and a position in the file. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # An optional title for the expression, i.e. a short string describing its + # purpose. This can be used e.g. in UIs which allow to enter the expression. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @expression = args[:expression] if args.key?(:expression) + @location = args[:location] if args.key?(:location) + @title = args[:title] if args.key?(:title) + end + end + + # + class ImportFile + include Google::Apis::Core::Hashable + + # The contents of the file. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + # The name of the file. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + @name = args[:name] if args.key?(:name) + end + end + + # InputMapping creates a 'virtual' property that will be injected into the + # properties before sending the request to the underlying API. + class InputMapping + include Google::Apis::Core::Hashable + + # The name of the field that is going to be injected. + # Corresponds to the JSON property `fieldName` + # @return [String] + attr_accessor :field_name + + # The location where this mapping applies. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # Regex to evaluate on method to decide if input applies. + # Corresponds to the JSON property `methodMatch` + # @return [String] + attr_accessor :method_match + + # A jsonPath expression to select an element. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field_name = args[:field_name] if args.key?(:field_name) + @location = args[:location] if args.key?(:location) + @method_match = args[:method_match] if args.key?(:method_match) + @value = args[:value] if args.key?(:value) + end + end + + # Specifies what kind of log the caller must write + class LogConfig + include Google::Apis::Core::Hashable + + # Write a Cloud Audit log + # Corresponds to the JSON property `cloudAudit` + # @return [Google::Apis::DeploymentmanagerAlpha::LogConfigCloudAuditOptions] + attr_accessor :cloud_audit + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, and end in " + # _count". Field names should not contain an initial slash. The actual exported + # metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are their + # respective values. + # At present the only supported field names are - "iam_principal", corresponding + # to IAMContext.principal; - "" (empty string), resulting in one aggretated + # counter with no field. + # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==> + # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value + # of IAMContext.principal]` + # At this time we do not support: * multiple field names (though this may be + # supported in the future) * decrementing the counter * incrementing it by + # anything other than 1 + # Corresponds to the JSON property `counter` + # @return [Google::Apis::DeploymentmanagerAlpha::LogConfigCounterOptions] + attr_accessor :counter + + # Write a Data Access (Gin) log + # Corresponds to the JSON property `dataAccess` + # @return [Google::Apis::DeploymentmanagerAlpha::LogConfigDataAccessOptions] + attr_accessor :data_access + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit) + @counter = args[:counter] if args.key?(:counter) + @data_access = args[:data_access] if args.key?(:data_access) + end + end + + # Write a Cloud Audit log + class LogConfigCloudAuditOptions + include Google::Apis::Core::Hashable + + # Authorization-related information used by Cloud Audit Logging. + # Corresponds to the JSON property `authorizationLoggingOptions` + # @return [Google::Apis::DeploymentmanagerAlpha::AuthorizationLoggingOptions] + attr_accessor :authorization_logging_options + + # The log_name to populate in the Cloud Audit Record. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @authorization_logging_options = args[:authorization_logging_options] if args.key?(:authorization_logging_options) + @log_name = args[:log_name] if args.key?(:log_name) + end + end + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, and end in " + # _count". Field names should not contain an initial slash. The actual exported + # metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are their + # respective values. + # At present the only supported field names are - "iam_principal", corresponding + # to IAMContext.principal; - "" (empty string), resulting in one aggretated + # counter with no field. + # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==> + # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value + # of IAMContext.principal]` + # At this time we do not support: * multiple field names (though this may be + # supported in the future) * decrementing the counter * incrementing it by + # anything other than 1 + class LogConfigCounterOptions + include Google::Apis::Core::Hashable + + # The field value to attribute. + # Corresponds to the JSON property `field` + # @return [String] + attr_accessor :field + + # The metric to update. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + @metric = args[:metric] if args.key?(:metric) + end + end + + # Write a Data Access (Gin) log + class LogConfigDataAccessOptions + include Google::Apis::Core::Hashable + + # Whether Gin logging should happen in a fail-closed manner at the caller. This + # is relevant only in the LocalIAM implementation, for now. + # Corresponds to the JSON property `logMode` + # @return [String] + attr_accessor :log_mode + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_mode = args[:log_mode] if args.key?(:log_mode) + end + end + + # + class Manifest + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `config` + # @return [Google::Apis::DeploymentmanagerAlpha::ConfigFile] + attr_accessor :config + + # [Output Only] The fully-expanded configuration file, including any templates + # and references. + # Corresponds to the JSON property `expandedConfig` + # @return [String] + attr_accessor :expanded_config + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The imported files for this manifest. + # Corresponds to the JSON property `imports` + # @return [Array] + attr_accessor :imports + + # [Output Only] Timestamp when the manifest was created, in RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] The YAML layout for this manifest. + # Corresponds to the JSON property `layout` + # @return [String] + attr_accessor :layout + + # [Output Only] The name of the manifest. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Self link for the manifest. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + @expanded_config = args[:expanded_config] if args.key?(:expanded_config) + @id = args[:id] if args.key?(:id) + @imports = args[:imports] if args.key?(:imports) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @layout = args[:layout] if args.key?(:layout) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # A response containing a partial list of manifests and a page token used to + # build the next request if the request has been truncated. + class ManifestsListResponse + include Google::Apis::Core::Hashable + + # [Output Only] Manifests contained in this list response. + # Corresponds to the JSON property `manifests` + # @return [Array] + attr_accessor :manifests + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @manifests = args[:manifests] if args.key?(:manifests) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # An Operation resource, used to manage asynchronous API requests. + class Operation + include Google::Apis::Core::Hashable + + # [Output Only] Reserved for future use. + # Corresponds to the JSON property `clientOperationId` + # @return [String] + attr_accessor :client_operation_id + + # [Deprecated] This field is deprecated. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] A textual description of the operation, which is set when the + # operation is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The time that this operation was completed. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + # Corresponds to the JSON property `error` + # @return [Google::Apis::DeploymentmanagerAlpha::Operation::Error] + attr_accessor :error + + # [Output Only] If the operation fails, this field contains the HTTP error + # message that was returned, such as NOT FOUND. + # Corresponds to the JSON property `httpErrorMessage` + # @return [String] + attr_accessor :http_error_message + + # [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. + # Corresponds to the JSON property `httpErrorStatusCode` + # @return [Fixnum] + attr_accessor :http_error_status_code + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The time that this operation was requested. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] Type of the resource. Always compute#operation for Operation + # resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The type of operation, such as insert, update, or delete, and so + # on. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # [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. + # Corresponds to the JSON property `progress` + # @return [Fixnum] + attr_accessor :progress + + # [Output Only] The URL of the region where the operation resides. Only + # available when performing regional operations. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The time that this operation was started by the server. This + # value is in RFC3339 text format. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # [Output Only] The status of the operation, which can be one of the following: + # PENDING, RUNNING, or DONE. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional textual description of the current status of the + # operation. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # [Output Only] The unique target ID, which identifies a specific incarnation of + # the target resource. + # Corresponds to the JSON property `targetId` + # @return [Fixnum] + attr_accessor :target_id + + # [Output Only] The URL of the resource that the operation modifies. For + # operations related to creating a snapshot, this points to the persistent disk + # that the snapshot was created from. + # Corresponds to the JSON property `targetLink` + # @return [String] + attr_accessor :target_link + + # [Output Only] User who requested the operation, for example: user@example.com. + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # [Output Only] If warning messages are generated during processing of the + # operation, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + # [Output Only] The URL of the zone where the operation resides. Only available + # when performing per-zone operations. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_operation_id = args[:client_operation_id] if args.key?(:client_operation_id) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @end_time = args[:end_time] if args.key?(:end_time) + @error = args[:error] if args.key?(:error) + @http_error_message = args[:http_error_message] if args.key?(:http_error_message) + @http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @progress = args[:progress] if args.key?(:progress) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @target_id = args[:target_id] if args.key?(:target_id) + @target_link = args[:target_link] if args.key?(:target_link) + @user = args[:user] if args.key?(:user) + @warnings = args[:warnings] if args.key?(:warnings) + @zone = args[:zone] if args.key?(:zone) + end + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A response containing a partial list of operations and a page token used to + # build the next request if the request has been truncated. + class OperationsListResponse + include Google::Apis::Core::Hashable + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Operations contained in this list response. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # Options allows customized resource handling by Deployment Manager. + class Options + include Google::Apis::Core::Hashable + + # The mappings that apply for requests. + # Corresponds to the JSON property `inputMappings` + # @return [Array] + attr_accessor :input_mappings + + # The json path to the field in the resource JSON body into which the resource + # name should be mapped. Leaving this empty indicates that there should be no + # mapping performed. + # Corresponds to the JSON property `nameProperty` + # @return [String] + attr_accessor :name_property + + # Options for how to validate and process properties on a resource. + # Corresponds to the JSON property `validationOptions` + # @return [Google::Apis::DeploymentmanagerAlpha::ValidationOptions] + attr_accessor :validation_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input_mappings = args[:input_mappings] if args.key?(:input_mappings) + @name_property = args[:name_property] if args.key?(:name_property) + @validation_options = args[:validation_options] if args.key?(:validation_options) + end + end + + # 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). + class Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. `bindings` with no members will + # result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `iamOwned` + # @return [Boolean] + attr_accessor :iam_owned + alias_method :iam_owned?, :iam_owned + + # 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. + # Corresponds to the JSON property `rules` + # @return [Array] + attr_accessor :rules + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @iam_owned = args[:iam_owned] if args.key?(:iam_owned) + @rules = args[:rules] if args.key?(:rules) + @version = args[:version] if args.key?(:version) + end + end + + # + class Resource + include Google::Apis::Core::Hashable + + # The access controls set on the resource. + # Corresponds to the JSON property `accessControl` + # @return [Google::Apis::DeploymentmanagerAlpha::ResourceAccessControl] + attr_accessor :access_control + + # [Output Only] The evaluated properties of the resource with references + # expanded. Returned as serialized YAML. + # Corresponds to the JSON property `finalProperties` + # @return [String] + attr_accessor :final_properties + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the resource was created or acquired, in RFC3339 + # text format . + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] URL of the manifest representing the current configuration of + # this resource. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + # [Output Only] The name of the resource as it appears in the YAML config. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The current properties of the resource before any references + # have been filled in. Returned as serialized YAML. + # Corresponds to the JSON property `properties` + # @return [String] + attr_accessor :properties + + # [Output Only] The type of the resource, for example compute.v1.instance, or + # cloudfunctions.v1beta1.function. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # + # Corresponds to the JSON property `update` + # @return [Google::Apis::DeploymentmanagerAlpha::ResourceUpdate] + attr_accessor :update + + # [Output Only] Timestamp when the resource was updated, in RFC3339 text format . + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + # [Output Only] The URL of the actual resource. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + # [Output Only] If warning messages are generated during processing of this + # resource, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_control = args[:access_control] if args.key?(:access_control) + @final_properties = args[:final_properties] if args.key?(:final_properties) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @manifest = args[:manifest] if args.key?(:manifest) + @name = args[:name] if args.key?(:name) + @properties = args[:properties] if args.key?(:properties) + @type = args[:type] if args.key?(:type) + @update = args[:update] if args.key?(:update) + @update_time = args[:update_time] if args.key?(:update_time) + @url = args[:url] if args.key?(:url) + @warnings = args[:warnings] if args.key?(:warnings) + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # The access controls set on the resource. + class ResourceAccessControl + include Google::Apis::Core::Hashable + + # The GCP IAM Policy to set on the resource. + # Corresponds to the JSON property `gcpIamPolicy` + # @return [String] + attr_accessor :gcp_iam_policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gcp_iam_policy = args[:gcp_iam_policy] if args.key?(:gcp_iam_policy) + end + end + + # + class ResourceUpdate + include Google::Apis::Core::Hashable + + # The access controls set on the resource. + # Corresponds to the JSON property `accessControl` + # @return [Google::Apis::DeploymentmanagerAlpha::ResourceAccessControl] + attr_accessor :access_control + + # [Output Only] If errors are generated during update of the resource, this + # field will be populated. + # Corresponds to the JSON property `error` + # @return [Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Error] + attr_accessor :error + + # [Output Only] The expanded properties of the resource with reference values + # expanded. Returned as serialized YAML. + # Corresponds to the JSON property `finalProperties` + # @return [String] + attr_accessor :final_properties + + # [Output Only] The intent of the resource: PREVIEW, UPDATE, or CANCEL. + # Corresponds to the JSON property `intent` + # @return [String] + attr_accessor :intent + + # [Output Only] URL of the manifest representing the update configuration of + # this resource. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + # [Output Only] The set of updated properties for this resource, before + # references are expanded. Returned as serialized YAML. + # Corresponds to the JSON property `properties` + # @return [String] + attr_accessor :properties + + # [Output Only] The state of the resource. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # [Output Only] If warning messages are generated during processing of this + # resource, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_control = args[:access_control] if args.key?(:access_control) + @error = args[:error] if args.key?(:error) + @final_properties = args[:final_properties] if args.key?(:final_properties) + @intent = args[:intent] if args.key?(:intent) + @manifest = args[:manifest] if args.key?(:manifest) + @properties = args[:properties] if args.key?(:properties) + @state = args[:state] if args.key?(:state) + @warnings = args[:warnings] if args.key?(:warnings) + end + + # [Output Only] If errors are generated during update of the resource, this + # field will be populated. + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A response containing a partial list of resources and a page token used to + # build the next request if the request has been truncated. + class ResourcesListResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Resources contained in this list response. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resources = args[:resources] if args.key?(:resources) + end + end + + # A rule to be applied in a Policy. + class Rule + include Google::Apis::Core::Hashable + + # Required + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # Additional restrictions that must be met + # Corresponds to the JSON property `conditions` + # @return [Array] + attr_accessor :conditions + + # Human-readable description of the rule. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `ins` + # @return [Array] + attr_accessor :ins + + # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries + # that match the LOG action. + # Corresponds to the JSON property `logConfigs` + # @return [Array] + attr_accessor :log_configs + + # If one or more 'not_in' clauses are specified, the rule matches if the + # PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries. + # Corresponds to the JSON property `notIns` + # @return [Array] + attr_accessor :not_ins + + # 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. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @conditions = args[:conditions] if args.key?(:conditions) + @description = args[:description] if args.key?(:description) + @ins = args[:ins] if args.key?(:ins) + @log_configs = args[:log_configs] if args.key?(:log_configs) + @not_ins = args[:not_ins] if args.key?(:not_ins) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class TargetConfiguration + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `config` + # @return [Google::Apis::DeploymentmanagerAlpha::ConfigFile] + attr_accessor :config + + # Specifies any files to import for this configuration. This can be used to + # import templates or other files. For example, you might import a text file in + # order to use the file in a template. + # Corresponds to the JSON property `imports` + # @return [Array] + attr_accessor :imports + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + @imports = args[:imports] if args.key?(:imports) + end + end + + # Files that make up the template contents of a template type. + class TemplateContents + include Google::Apis::Core::Hashable + + # Import files referenced by the main template. + # Corresponds to the JSON property `imports` + # @return [Array] + attr_accessor :imports + + # Which interpreter (python or jinja) should be used during expansion. + # Corresponds to the JSON property `interpreter` + # @return [String] + attr_accessor :interpreter + + # The contents of the template schema. + # Corresponds to the JSON property `schema` + # @return [String] + attr_accessor :schema + + # The contents of the main template file. + # Corresponds to the JSON property `template` + # @return [String] + attr_accessor :template + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @imports = args[:imports] if args.key?(:imports) + @interpreter = args[:interpreter] if args.key?(:interpreter) + @schema = args[:schema] if args.key?(:schema) + @template = args[:template] if args.key?(:template) + end + end + + # + class TestPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the 'resource'. Permissions with wildcards + # (such as '*' or 'storage.*') are not allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class TestPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # A resource type supported by Deployment Manager. + class Type + include Google::Apis::Core::Hashable + + # BaseType that describes a service-backed Type. + # Corresponds to the JSON property `configurableService` + # @return [Google::Apis::DeploymentmanagerAlpha::ConfigurableService] + attr_accessor :configurable_service + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the type was created, in RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # Name of the type. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + attr_accessor :operation + + # [Output Only] Self link for the type. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @configurable_service = args[:configurable_service] if args.key?(:configurable_service) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # Contains detailed information about a composite type, base type, or base type + # with specific collection. + class TypeInfo + include Google::Apis::Core::Hashable + + # The description of the type. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field + # will be empty. + # Corresponds to the JSON property `documentationLink` + # @return [String] + attr_accessor :documentation_link + + # [Output Only] Type of the output. Always deploymentManager#TypeInfo for + # TypeInfo. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The base type or composite type name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # + # Corresponds to the JSON property `schema` + # @return [Google::Apis::DeploymentmanagerAlpha::TypeInfoSchemaInfo] + attr_accessor :schema + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The title on the API descriptor URL provided. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @documentation_link = args[:documentation_link] if args.key?(:documentation_link) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @schema = args[:schema] if args.key?(:schema) + @self_link = args[:self_link] if args.key?(:self_link) + @title = args[:title] if args.key?(:title) + end + end + + # + class TypeInfoSchemaInfo + include Google::Apis::Core::Hashable + + # The properties that this composite type or base type collection accept as + # input, represented as a json blob, format is: JSON Schema Draft V4 + # Corresponds to the JSON property `input` + # @return [String] + attr_accessor :input + + # The properties that this composite type or base type collection exposes as + # output, these properties can be used for references, represented as json blob, + # format is: JSON Schema Draft V4 + # Corresponds to the JSON property `output` + # @return [String] + attr_accessor :output + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + @output = args[:output] if args.key?(:output) + end + end + + # + class TypeLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A type provider that describes a service-backed Type. + class TypeProvider + include Google::Apis::Core::Hashable + + # Allows resource handling overrides for specific collections + # Corresponds to the JSON property `collectionOverrides` + # @return [Array] + attr_accessor :collection_overrides + + # Credential used by ConfigurableResourceTypes. + # Corresponds to the JSON property `credential` + # @return [Google::Apis::DeploymentmanagerAlpha::Credential] + attr_accessor :credential + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Descriptor Url for the this type provider. + # Corresponds to the JSON property `descriptorUrl` + # @return [String] + attr_accessor :descriptor_url + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the type provider was created, in RFC3339 text + # format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # Name of the type provider. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + attr_accessor :operation + + # Options allows customized resource handling by Deployment Manager. + # Corresponds to the JSON property `options` + # @return [Google::Apis::DeploymentmanagerAlpha::Options] + attr_accessor :options + + # [Output Only] Self link for the type provider. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @collection_overrides = args[:collection_overrides] if args.key?(:collection_overrides) + @credential = args[:credential] if args.key?(:credential) + @description = args[:description] if args.key?(:description) + @descriptor_url = args[:descriptor_url] if args.key?(:descriptor_url) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @options = args[:options] if args.key?(:options) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class TypeProviderLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A response that returns all Type Providers supported by Deployment Manager + class TypeProvidersListResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] A list of resource type providers supported by Deployment + # Manager. + # Corresponds to the JSON property `typeProviders` + # @return [Array] + attr_accessor :type_providers + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @type_providers = args[:type_providers] if args.key?(:type_providers) + end + end + + # + class TypeProvidersListTypesResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] A list of resource type info. + # Corresponds to the JSON property `types` + # @return [Array] + attr_accessor :types + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @types = args[:types] if args.key?(:types) + end + end + + # A response that returns all Types supported by Deployment Manager + class TypesListResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] A list of resource types supported by Deployment Manager. + # Corresponds to the JSON property `types` + # @return [Array] + attr_accessor :types + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @types = args[:types] if args.key?(:types) + end + end + + # Options for how to validate and process properties on a resource. + class ValidationOptions + include Google::Apis::Core::Hashable + + # Customize how deployment manager will validate the resource against schema + # errors. + # Corresponds to the JSON property `schemaValidation` + # @return [String] + attr_accessor :schema_validation + + # Specify what to do with extra properties when executing a request. + # Corresponds to the JSON property `undeclaredProperties` + # @return [String] + attr_accessor :undeclared_properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @schema_validation = args[:schema_validation] if args.key?(:schema_validation) + @undeclared_properties = args[:undeclared_properties] if args.key?(:undeclared_properties) + end + end + end + end +end diff --git a/generated/google/apis/deploymentmanager_alpha/representations.rb b/generated/google/apis/deploymentmanager_alpha/representations.rb new file mode 100644 index 000000000..577fadc1d --- /dev/null +++ b/generated/google/apis/deploymentmanager_alpha/representations.rb @@ -0,0 +1,1054 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DeploymentmanagerAlpha + + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizationLoggingOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BasicAuth + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CollectionOverride + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompositeType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompositeTypeLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompositeTypesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Condition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ConfigFile + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ConfigurableService + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Credential + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Deployment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentUpdate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentUpdateLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentsCancelPreviewRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentsStopRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Expr + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ImportFile + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InputMapping + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigCloudAuditOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigCounterOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigDataAccessOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Manifest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManifestsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Options + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Resource + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceAccessControl + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceUpdate + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourcesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Rule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetConfiguration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TemplateContents + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Type + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeInfoSchemaInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProvider + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProviderLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProvidersListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProvidersListTypesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ValidationOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::DeploymentmanagerAlpha::AuditLogConfig, decorator: Google::Apis::DeploymentmanagerAlpha::AuditLogConfig::Representation + + collection :exempted_members, as: 'exemptedMembers' + property :service, as: 'service' + end + end + + class AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class AuthorizationLoggingOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :permission_type, as: 'permissionType' + end + end + + class BasicAuth + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :password, as: 'password' + property :user, as: 'user' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::DeploymentmanagerAlpha::Expr, decorator: Google::Apis::DeploymentmanagerAlpha::Expr::Representation + + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class CollectionOverride + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :collection, as: 'collection' + property :options, as: 'options', class: Google::Apis::DeploymentmanagerAlpha::Options, decorator: Google::Apis::DeploymentmanagerAlpha::Options::Representation + + end + end + + class CompositeType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerAlpha::CompositeTypeLabelEntry, decorator: Google::Apis::DeploymentmanagerAlpha::CompositeTypeLabelEntry::Representation + + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerAlpha::Operation, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Representation + + property :self_link, as: 'selfLink' + property :status, as: 'status' + property :template_contents, as: 'templateContents', class: Google::Apis::DeploymentmanagerAlpha::TemplateContents, decorator: Google::Apis::DeploymentmanagerAlpha::TemplateContents::Representation + + end + end + + class CompositeTypeLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class CompositeTypesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :composite_types, as: 'compositeTypes', class: Google::Apis::DeploymentmanagerAlpha::CompositeType, decorator: Google::Apis::DeploymentmanagerAlpha::CompositeType::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class Condition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :iam, as: 'iam' + property :op, as: 'op' + property :svc, as: 'svc' + property :sys, as: 'sys' + property :value, as: 'value' + collection :values, as: 'values' + end + end + + class ConfigFile + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content, as: 'content' + end + end + + class ConfigurableService + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :collection_overrides, as: 'collectionOverrides', class: Google::Apis::DeploymentmanagerAlpha::CollectionOverride, decorator: Google::Apis::DeploymentmanagerAlpha::CollectionOverride::Representation + + property :credential, as: 'credential', class: Google::Apis::DeploymentmanagerAlpha::Credential, decorator: Google::Apis::DeploymentmanagerAlpha::Credential::Representation + + property :descriptor_url, as: 'descriptorUrl' + property :options, as: 'options', class: Google::Apis::DeploymentmanagerAlpha::Options, decorator: Google::Apis::DeploymentmanagerAlpha::Options::Representation + + end + end + + class Credential + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :basic_auth, as: 'basicAuth', class: Google::Apis::DeploymentmanagerAlpha::BasicAuth, decorator: Google::Apis::DeploymentmanagerAlpha::BasicAuth::Representation + + end + end + + class Deployment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :fingerprint, :base64 => true, as: 'fingerprint' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerAlpha::DeploymentLabelEntry, decorator: Google::Apis::DeploymentmanagerAlpha::DeploymentLabelEntry::Representation + + property :manifest, as: 'manifest' + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerAlpha::Operation, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Representation + + property :self_link, as: 'selfLink' + property :target, as: 'target', class: Google::Apis::DeploymentmanagerAlpha::TargetConfiguration, decorator: Google::Apis::DeploymentmanagerAlpha::TargetConfiguration::Representation + + property :update, as: 'update', class: Google::Apis::DeploymentmanagerAlpha::DeploymentUpdate, decorator: Google::Apis::DeploymentmanagerAlpha::DeploymentUpdate::Representation + + end + end + + class DeploymentLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class DeploymentUpdate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerAlpha::DeploymentUpdateLabelEntry, decorator: Google::Apis::DeploymentmanagerAlpha::DeploymentUpdateLabelEntry::Representation + + property :manifest, as: 'manifest' + end + end + + class DeploymentUpdateLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class DeploymentsCancelPreviewRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + end + end + + class DeploymentsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :deployments, as: 'deployments', class: Google::Apis::DeploymentmanagerAlpha::Deployment, decorator: Google::Apis::DeploymentmanagerAlpha::Deployment::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class DeploymentsStopRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + end + end + + class Expr + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :expression, as: 'expression' + property :location, as: 'location' + property :title, as: 'title' + end + end + + class ImportFile + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content, as: 'content' + property :name, as: 'name' + end + end + + class InputMapping + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field_name, as: 'fieldName' + property :location, as: 'location' + property :method_match, as: 'methodMatch' + property :value, as: 'value' + end + end + + class LogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cloud_audit, as: 'cloudAudit', class: Google::Apis::DeploymentmanagerAlpha::LogConfigCloudAuditOptions, decorator: Google::Apis::DeploymentmanagerAlpha::LogConfigCloudAuditOptions::Representation + + property :counter, as: 'counter', class: Google::Apis::DeploymentmanagerAlpha::LogConfigCounterOptions, decorator: Google::Apis::DeploymentmanagerAlpha::LogConfigCounterOptions::Representation + + property :data_access, as: 'dataAccess', class: Google::Apis::DeploymentmanagerAlpha::LogConfigDataAccessOptions, decorator: Google::Apis::DeploymentmanagerAlpha::LogConfigDataAccessOptions::Representation + + end + end + + class LogConfigCloudAuditOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :authorization_logging_options, as: 'authorizationLoggingOptions', class: Google::Apis::DeploymentmanagerAlpha::AuthorizationLoggingOptions, decorator: Google::Apis::DeploymentmanagerAlpha::AuthorizationLoggingOptions::Representation + + property :log_name, as: 'logName' + end + end + + class LogConfigCounterOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field' + property :metric, as: 'metric' + end + end + + class LogConfigDataAccessOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :log_mode, as: 'logMode' + end + end + + class Manifest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config', class: Google::Apis::DeploymentmanagerAlpha::ConfigFile, decorator: Google::Apis::DeploymentmanagerAlpha::ConfigFile::Representation + + property :expanded_config, as: 'expandedConfig' + property :id, :numeric_string => true, as: 'id' + collection :imports, as: 'imports', class: Google::Apis::DeploymentmanagerAlpha::ImportFile, decorator: Google::Apis::DeploymentmanagerAlpha::ImportFile::Representation + + property :insert_time, as: 'insertTime' + property :layout, as: 'layout' + property :name, as: 'name' + property :self_link, as: 'selfLink' + end + end + + class ManifestsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :manifests, as: 'manifests', class: Google::Apis::DeploymentmanagerAlpha::Manifest, decorator: Google::Apis::DeploymentmanagerAlpha::Manifest::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_operation_id, as: 'clientOperationId' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :end_time, as: 'endTime' + property :error, as: 'error', class: Google::Apis::DeploymentmanagerAlpha::Operation::Error, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Error::Representation + + property :http_error_message, as: 'httpErrorMessage' + property :http_error_status_code, as: 'httpErrorStatusCode' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + property :kind, as: 'kind' + property :name, as: 'name' + property :operation_type, as: 'operationType' + property :progress, as: 'progress' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :start_time, as: 'startTime' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :target_id, :numeric_string => true, as: 'targetId' + property :target_link, as: 'targetLink' + property :user, as: 'user' + collection :warnings, as: 'warnings', class: Google::Apis::DeploymentmanagerAlpha::Operation::Warning, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Warning::Representation + + property :zone, as: 'zone' + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::DeploymentmanagerAlpha::Operation::Error::Error, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Error::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::DeploymentmanagerAlpha::Operation::Warning::Datum, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class OperationsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::DeploymentmanagerAlpha::Operation, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Representation + + end + end + + class Options + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :input_mappings, as: 'inputMappings', class: Google::Apis::DeploymentmanagerAlpha::InputMapping, decorator: Google::Apis::DeploymentmanagerAlpha::InputMapping::Representation + + property :name_property, as: 'nameProperty' + property :validation_options, as: 'validationOptions', class: Google::Apis::DeploymentmanagerAlpha::ValidationOptions, decorator: Google::Apis::DeploymentmanagerAlpha::ValidationOptions::Representation + + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::DeploymentmanagerAlpha::AuditConfig, decorator: Google::Apis::DeploymentmanagerAlpha::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::DeploymentmanagerAlpha::Binding, decorator: Google::Apis::DeploymentmanagerAlpha::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :iam_owned, as: 'iamOwned' + collection :rules, as: 'rules', class: Google::Apis::DeploymentmanagerAlpha::Rule, decorator: Google::Apis::DeploymentmanagerAlpha::Rule::Representation + + property :version, as: 'version' + end + end + + class Resource + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :access_control, as: 'accessControl', class: Google::Apis::DeploymentmanagerAlpha::ResourceAccessControl, decorator: Google::Apis::DeploymentmanagerAlpha::ResourceAccessControl::Representation + + property :final_properties, as: 'finalProperties' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + property :manifest, as: 'manifest' + property :name, as: 'name' + property :properties, as: 'properties' + property :type, as: 'type' + property :update, as: 'update', class: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate, decorator: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Representation + + property :update_time, as: 'updateTime' + property :url, as: 'url' + collection :warnings, as: 'warnings', class: Google::Apis::DeploymentmanagerAlpha::Resource::Warning, decorator: Google::Apis::DeploymentmanagerAlpha::Resource::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::DeploymentmanagerAlpha::Resource::Warning::Datum, decorator: Google::Apis::DeploymentmanagerAlpha::Resource::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ResourceAccessControl + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gcp_iam_policy, as: 'gcpIamPolicy' + end + end + + class ResourceUpdate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :access_control, as: 'accessControl', class: Google::Apis::DeploymentmanagerAlpha::ResourceAccessControl, decorator: Google::Apis::DeploymentmanagerAlpha::ResourceAccessControl::Representation + + property :error, as: 'error', class: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Error, decorator: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Error::Representation + + property :final_properties, as: 'finalProperties' + property :intent, as: 'intent' + property :manifest, as: 'manifest' + property :properties, as: 'properties' + property :state, as: 'state' + collection :warnings, as: 'warnings', class: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Warning, decorator: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Warning::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Error::Error, decorator: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Error::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Warning::Datum, decorator: Google::Apis::DeploymentmanagerAlpha::ResourceUpdate::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ResourcesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resources, as: 'resources', class: Google::Apis::DeploymentmanagerAlpha::Resource, decorator: Google::Apis::DeploymentmanagerAlpha::Resource::Representation + + end + end + + class Rule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + collection :conditions, as: 'conditions', class: Google::Apis::DeploymentmanagerAlpha::Condition, decorator: Google::Apis::DeploymentmanagerAlpha::Condition::Representation + + property :description, as: 'description' + collection :ins, as: 'ins' + collection :log_configs, as: 'logConfigs', class: Google::Apis::DeploymentmanagerAlpha::LogConfig, decorator: Google::Apis::DeploymentmanagerAlpha::LogConfig::Representation + + collection :not_ins, as: 'notIns' + collection :permissions, as: 'permissions' + end + end + + class TargetConfiguration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config', class: Google::Apis::DeploymentmanagerAlpha::ConfigFile, decorator: Google::Apis::DeploymentmanagerAlpha::ConfigFile::Representation + + collection :imports, as: 'imports', class: Google::Apis::DeploymentmanagerAlpha::ImportFile, decorator: Google::Apis::DeploymentmanagerAlpha::ImportFile::Representation + + end + end + + class TemplateContents + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :imports, as: 'imports', class: Google::Apis::DeploymentmanagerAlpha::ImportFile, decorator: Google::Apis::DeploymentmanagerAlpha::ImportFile::Representation + + property :interpreter, as: 'interpreter' + property :schema, as: 'schema' + property :template, as: 'template' + end + end + + class TestPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class Type + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :configurable_service, as: 'configurableService', class: Google::Apis::DeploymentmanagerAlpha::ConfigurableService, decorator: Google::Apis::DeploymentmanagerAlpha::ConfigurableService::Representation + + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerAlpha::TypeLabelEntry, decorator: Google::Apis::DeploymentmanagerAlpha::TypeLabelEntry::Representation + + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerAlpha::Operation, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Representation + + property :self_link, as: 'selfLink' + end + end + + class TypeInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :documentation_link, as: 'documentationLink' + property :kind, as: 'kind' + property :name, as: 'name' + property :schema, as: 'schema', class: Google::Apis::DeploymentmanagerAlpha::TypeInfoSchemaInfo, decorator: Google::Apis::DeploymentmanagerAlpha::TypeInfoSchemaInfo::Representation + + property :self_link, as: 'selfLink' + property :title, as: 'title' + end + end + + class TypeInfoSchemaInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input' + property :output, as: 'output' + end + end + + class TypeLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class TypeProvider + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :collection_overrides, as: 'collectionOverrides', class: Google::Apis::DeploymentmanagerAlpha::CollectionOverride, decorator: Google::Apis::DeploymentmanagerAlpha::CollectionOverride::Representation + + property :credential, as: 'credential', class: Google::Apis::DeploymentmanagerAlpha::Credential, decorator: Google::Apis::DeploymentmanagerAlpha::Credential::Representation + + property :description, as: 'description' + property :descriptor_url, as: 'descriptorUrl' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerAlpha::TypeProviderLabelEntry, decorator: Google::Apis::DeploymentmanagerAlpha::TypeProviderLabelEntry::Representation + + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerAlpha::Operation, decorator: Google::Apis::DeploymentmanagerAlpha::Operation::Representation + + property :options, as: 'options', class: Google::Apis::DeploymentmanagerAlpha::Options, decorator: Google::Apis::DeploymentmanagerAlpha::Options::Representation + + property :self_link, as: 'selfLink' + end + end + + class TypeProviderLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class TypeProvidersListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :type_providers, as: 'typeProviders', class: Google::Apis::DeploymentmanagerAlpha::TypeProvider, decorator: Google::Apis::DeploymentmanagerAlpha::TypeProvider::Representation + + end + end + + class TypeProvidersListTypesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :types, as: 'types', class: Google::Apis::DeploymentmanagerAlpha::TypeInfo, decorator: Google::Apis::DeploymentmanagerAlpha::TypeInfo::Representation + + end + end + + class TypesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :types, as: 'types', class: Google::Apis::DeploymentmanagerAlpha::Type, decorator: Google::Apis::DeploymentmanagerAlpha::Type::Representation + + end + end + + class ValidationOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :schema_validation, as: 'schemaValidation' + property :undeclared_properties, as: 'undeclaredProperties' + end + end + end + end +end diff --git a/generated/google/apis/deploymentmanager_alpha/service.rb b/generated/google/apis/deploymentmanager_alpha/service.rb new file mode 100644 index 000000000..ee262dee5 --- /dev/null +++ b/generated/google/apis/deploymentmanager_alpha/service.rb @@ -0,0 +1,1883 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DeploymentmanagerAlpha + # Google Cloud Deployment Manager Alpha API + # + # The Deployment Manager API allows users to declaratively configure, deploy and + # run complex solutions on the Google Cloud Platform. + # + # @example + # require 'google/apis/deploymentmanager_alpha' + # + # Deploymentmanager = Google::Apis::DeploymentmanagerAlpha # Alias the module + # service = Deploymentmanager::DeploymentManagerAlphaService.new + # + # @see https://cloud.google.com/deployment-manager/ + class DeploymentManagerAlphaService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'deploymentmanager/alpha/projects/') + @batch_path = 'batch' + end + + # Deletes a composite type. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the type for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_composite_type(project, composite_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/compositeTypes/{compositeType}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific composite type. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the composite type for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::CompositeType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::CompositeType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_composite_type(project, composite_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/compositeTypes/{compositeType}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::CompositeType::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::CompositeType + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a composite type. + # @param [String] project + # The project ID for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::CompositeType] composite_type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_composite_type(project, composite_type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/compositeTypes', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::CompositeType::Representation + command.request_object = composite_type_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all composite types for Deployment Manager. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::CompositeTypesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::CompositeTypesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_composite_types(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/compositeTypes', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::CompositeTypesListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::CompositeTypesListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a composite type. This method supports patch semantics. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the composite type for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::CompositeType] composite_type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_composite_type(project, composite_type, composite_type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/compositeTypes/{compositeType}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::CompositeType::Representation + command.request_object = composite_type_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a composite type. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the composite type for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::CompositeType] composite_type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_composite_type(project, composite_type, composite_type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/compositeTypes/{compositeType}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::CompositeType::Representation + command.request_object = composite_type_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Cancels and removes the preview currently associated with the deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::DeploymentsCancelPreviewRequest] deployments_cancel_preview_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_deployment_preview(project, deployment, deployments_cancel_preview_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{deployment}/cancelPreview', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::DeploymentsCancelPreviewRequest::Representation + command.request_object = deployments_cancel_preview_request_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a deployment and all of the resources in the deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] delete_policy + # Sets the policy to use for deleting resources. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_deployment(project, deployment, delete_policy: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/deployments/{deployment}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['deletePolicy'] = delete_policy unless delete_policy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Deployment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Deployment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_deployment(project, deployment, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Deployment::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Deployment + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_deployment_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Policy::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a deployment and all of the resources described by the deployment + # manifest. + # @param [String] project + # The project ID for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::Deployment] deployment_object + # @param [Boolean] preview + # If set to true, creates a deployment and creates "shell" resources but does + # not actually instantiate these resources. This allows you to preview what your + # deployment looks like. After previewing a deployment, you can deploy your + # resources by making a request with the update() method or you can use the + # cancelPreview() method to cancel the preview altogether. Note that the + # deployment will still exist after you cancel the preview and you must + # separately delete this deployment if you want to remove it. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_deployment(project, deployment_object = nil, preview: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::Deployment::Representation + command.request_object = deployment_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['preview'] = preview unless preview.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all deployments for a given project. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::DeploymentsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::DeploymentsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_deployments(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::DeploymentsListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::DeploymentsListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a deployment and all of the resources described by the deployment + # manifest. This method supports patch semantics. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::Deployment] deployment_object + # @param [String] create_policy + # Sets the policy to use for creating new resources. + # @param [String] delete_policy + # Sets the policy to use for deleting resources. + # @param [Boolean] preview + # If set to true, updates the deployment and creates and updates the "shell" + # resources but does not actually alter or instantiate these resources. This + # allows you to preview what your deployment will look like. You can use this + # intent to preview how an update would affect your deployment. You must provide + # a target.config with a configuration if this is set to true. After previewing + # a deployment, you can deploy your resources by making a request with the + # update() or you can cancelPreview() to remove the preview altogether. Note + # that the deployment will still exist after you cancel the preview and you must + # separately delete this deployment if you want to remove it. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_deployment(project, deployment, deployment_object = nil, create_policy: nil, delete_policy: nil, preview: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/deployments/{deployment}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::Deployment::Representation + command.request_object = deployment_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['createPolicy'] = create_policy unless create_policy.nil? + command.query['deletePolicy'] = delete_policy unless delete_policy.nil? + command.query['preview'] = preview unless preview.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_deployment_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Policy::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Stops an ongoing operation. This does not roll back any work that has already + # been completed, but prevents any new work from being started. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::DeploymentsStopRequest] deployments_stop_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def stop_deployment(project, deployment, deployments_stop_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{deployment}/stop', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::DeploymentsStopRequest::Representation + command.request_object = deployments_stop_request_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_deployment_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::TestPermissionsResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a deployment and all of the resources described by the deployment + # manifest. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::Deployment] deployment_object + # @param [String] create_policy + # Sets the policy to use for creating new resources. + # @param [String] delete_policy + # Sets the policy to use for deleting resources. + # @param [Boolean] preview + # If set to true, updates the deployment and creates and updates the "shell" + # resources but does not actually alter or instantiate these resources. This + # allows you to preview what your deployment will look like. You can use this + # intent to preview how an update would affect your deployment. You must provide + # a target.config with a configuration if this is set to true. After previewing + # a deployment, you can deploy your resources by making a request with the + # update() or you can cancelPreview() to remove the preview altogether. Note + # that the deployment will still exist after you cancel the preview and you must + # separately delete this deployment if you want to remove it. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_deployment(project, deployment, deployment_object = nil, create_policy: nil, delete_policy: nil, preview: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/deployments/{deployment}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::Deployment::Representation + command.request_object = deployment_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['createPolicy'] = create_policy unless create_policy.nil? + command.query['deletePolicy'] = delete_policy unless delete_policy.nil? + command.query['preview'] = preview unless preview.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific manifest. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] manifest + # The name of the manifest for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Manifest] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Manifest] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_manifest(project, deployment, manifest, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/manifests/{manifest}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Manifest::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Manifest + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.params['manifest'] = manifest unless manifest.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all manifests for a given deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::ManifestsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::ManifestsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_manifests(project, deployment, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/manifests', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::ManifestsListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::ManifestsListResponse + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific operation. + # @param [String] project + # The project ID for this request. + # @param [String] operation + # The name of the operation for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations/{operation}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all operations for a project. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::OperationsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::OperationsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_operations(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::OperationsListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::OperationsListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a single resource. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] resource + # The name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Resource] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Resource] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_resource(project, deployment, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/resources/{resource}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Resource::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Resource + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all resources in a given deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::ResourcesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::ResourcesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_resources(project, deployment, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/resources', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::ResourcesListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::ResourcesListResponse + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a type provider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_type_provider(project, type_provider, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/typeProviders/{typeProvider}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific type provider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::TypeProvider] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::TypeProvider] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_type_provider(project, type_provider, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders/{typeProvider}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::TypeProvider::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::TypeProvider + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets a type info for a type provided by a TypeProvider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] type + # The name of the type provider for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::TypeInfo] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::TypeInfo] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_type_provider_type(project, type_provider, type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders/{typeProvider}/types/{type}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::TypeInfo::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::TypeInfo + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.params['type'] = type unless type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a type provider. + # @param [String] project + # The project ID for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::TypeProvider] type_provider_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_type_provider(project, type_provider_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/typeProviders', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::TypeProvider::Representation + command.request_object = type_provider_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all resource type providers for Deployment Manager. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::TypeProvidersListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::TypeProvidersListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_type_providers(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::TypeProvidersListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::TypeProvidersListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all the type info for a TypeProvider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::TypeProvidersListTypesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::TypeProvidersListTypesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_type_provider_types(project, type_provider, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders/{typeProvider}/types', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::TypeProvidersListTypesResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::TypeProvidersListTypesResponse + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a type provider. This method supports patch semantics. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::TypeProvider] type_provider_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_type_provider(project, type_provider, type_provider_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/typeProviders/{typeProvider}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::TypeProvider::Representation + command.request_object = type_provider_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a type provider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::TypeProvider] type_provider_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_type_provider(project, type_provider, type_provider_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/typeProviders/{typeProvider}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::TypeProvider::Representation + command.request_object = type_provider_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a type and all of the resources in the type. + # @param [String] project + # The project ID for this request. + # @param [String] type + # The name of the type for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_type(project, type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/types/{type}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['type'] = type unless type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific type. + # @param [String] project + # The project ID for this request. + # @param [String] type + # The name of the type for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Type] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Type] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_type(project, type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/types/{type}', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Type::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Type + command.params['project'] = project unless project.nil? + command.params['type'] = type unless type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a type. + # @param [String] project + # The project ID for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::Type] type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_type(project, type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/types', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::Type::Representation + command.request_object = type_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all resource types for Deployment Manager. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::TypesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::TypesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_types(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/types', options) + command.response_representation = Google::Apis::DeploymentmanagerAlpha::TypesListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::TypesListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a type. This method supports patch semantics. + # @param [String] project + # The project ID for this request. + # @param [String] type + # The name of the type for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::Type] type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_type(project, type, type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/types/{type}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::Type::Representation + command.request_object = type_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['type'] = type unless type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a type. + # @param [String] project + # The project ID for this request. + # @param [String] type + # The name of the type for this request. + # @param [Google::Apis::DeploymentmanagerAlpha::Type] type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerAlpha::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerAlpha::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_type(project, type, type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/types/{type}', options) + command.request_representation = Google::Apis::DeploymentmanagerAlpha::Type::Representation + command.request_object = type_object + command.response_representation = Google::Apis::DeploymentmanagerAlpha::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerAlpha::Operation + command.params['project'] = project unless project.nil? + command.params['type'] = type unless type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/deploymentmanager_v2beta.rb b/generated/google/apis/deploymentmanager_v2beta.rb new file mode 100644 index 000000000..afacb7d12 --- /dev/null +++ b/generated/google/apis/deploymentmanager_v2beta.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/deploymentmanager_v2beta/service.rb' +require 'google/apis/deploymentmanager_v2beta/classes.rb' +require 'google/apis/deploymentmanager_v2beta/representations.rb' + +module Google + module Apis + # Google Cloud Deployment Manager API V2Beta Methods + # + # The Deployment Manager API allows users to declaratively configure, deploy and + # run complex solutions on the Google Cloud Platform. + # + # @see https://developers.google.com/deployment-manager/ + module DeploymentmanagerV2beta + VERSION = 'V2beta' + REVISION = '20170810' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + + # View and manage your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN = 'https://www.googleapis.com/auth/ndev.cloudman' + + # View your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN_READONLY = 'https://www.googleapis.com/auth/ndev.cloudman.readonly' + end + end +end diff --git a/generated/google/apis/deploymentmanager_v2beta/classes.rb b/generated/google/apis/deploymentmanager_v2beta/classes.rb new file mode 100644 index 000000000..3b4a6df3c --- /dev/null +++ b/generated/google/apis/deploymentmanager_v2beta/classes.rb @@ -0,0 +1,2426 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DeploymentmanagerV2beta + + # Specifies the audit configuration for a service. The configuration determines + # which permission types are logged, and what identities, if any, are exempted + # from logging. An AuditConfig must have one or more AuditLogConfigs. + # If there are AuditConfigs for both `allServices` and a specific service, the + # union of the two AuditConfigs is used for that service: the log_types + # specified in each AuditConfig are enabled, and the exempted_members in each + # AuditConfig are exempted. + # Example Policy with multiple AuditConfigs: + # ` "audit_configs": [ ` "service": "allServices" "audit_log_configs": [ ` " + # log_type": "DATA_READ", "exempted_members": [ "user:foo@gmail.com" ] `, ` " + # log_type": "DATA_WRITE", `, ` "log_type": "ADMIN_READ", ` ] `, ` "service": " + # fooservice.googleapis.com" "audit_log_configs": [ ` "log_type": "DATA_READ", `, + # ` "log_type": "DATA_WRITE", "exempted_members": [ "user:bar@gmail.com" ] ` ] ` + # ] ` + # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + # logging. It also exempts foo@gmail.com from DATA_READ logging, and bar@gmail. + # com from DATA_WRITE logging. + class AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # Specifies a service that will be enabled for audit logging. For example, ` + # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special + # value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. Example: + # ` "audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ " + # user:foo@gmail.com" ] `, ` "log_type": "DATA_WRITE", ` ] ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting foo@gmail. + # com from DATA_READ logging. + class AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of permission. + # Follows the same format of [Binding.members][]. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Authorization-related information used by Cloud Audit Logging. + class AuthorizationLoggingOptions + include Google::Apis::Core::Hashable + + # The type of the permission that was checked. + # Corresponds to the JSON property `permissionType` + # @return [String] + attr_accessor :permission_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permission_type = args[:permission_type] if args.key?(:permission_type) + end + end + + # BaseType that describes a service-backed Type. + class BaseType + include Google::Apis::Core::Hashable + + # Allows resource handling overrides for specific collections + # Corresponds to the JSON property `collectionOverrides` + # @return [Array] + attr_accessor :collection_overrides + + # Credential used by ConfigurableResourceTypes. + # Corresponds to the JSON property `credential` + # @return [Google::Apis::DeploymentmanagerV2beta::Credential] + attr_accessor :credential + + # Descriptor Url for the this type. + # Corresponds to the JSON property `descriptorUrl` + # @return [String] + attr_accessor :descriptor_url + + # Options allows customized resource handling by Deployment Manager. + # Corresponds to the JSON property `options` + # @return [Google::Apis::DeploymentmanagerV2beta::Options] + attr_accessor :options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @collection_overrides = args[:collection_overrides] if args.key?(:collection_overrides) + @credential = args[:credential] if args.key?(:credential) + @descriptor_url = args[:descriptor_url] if args.key?(:descriptor_url) + @options = args[:options] if args.key?(:options) + end + end + + # Basic Auth used as a credential. + class BasicAuth + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `password` + # @return [String] + attr_accessor :password + + # + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @password = args[:password] if args.key?(:password) + @user = args[:user] if args.key?(:user) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # Represents an expression text. Example: + # title: "User account presence" description: "Determines whether the request + # has a user account" expression: "size(request.user) > 0" + # Corresponds to the JSON property `condition` + # @return [Google::Apis::DeploymentmanagerV2beta::Expr] + attr_accessor :condition + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor` + # , or `roles/owner`. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # CollectionOverride allows resource handling overrides for specific resources + # within a BaseType + class CollectionOverride + include Google::Apis::Core::Hashable + + # The collection that identifies this resource within its service. + # Corresponds to the JSON property `collection` + # @return [String] + attr_accessor :collection + + # Options allows customized resource handling by Deployment Manager. + # Corresponds to the JSON property `options` + # @return [Google::Apis::DeploymentmanagerV2beta::Options] + attr_accessor :options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @collection = args[:collection] if args.key?(:collection) + @options = args[:options] if args.key?(:options) + end + end + + # Holds the composite type. + class CompositeType + include Google::Apis::Core::Hashable + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the composite type was created, in RFC3339 text + # format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # Name of the composite type. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + attr_accessor :operation + + # [Output Only] Self link for the type provider. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # Files that make up the template contents of a template type. + # Corresponds to the JSON property `templateContents` + # @return [Google::Apis::DeploymentmanagerV2beta::TemplateContents] + attr_accessor :template_contents + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + @template_contents = args[:template_contents] if args.key?(:template_contents) + end + end + + # + class CompositeTypeLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A response that returns all Composite Types supported by Deployment Manager + class CompositeTypesListResponse + include Google::Apis::Core::Hashable + + # [Output Only] A list of resource composite types supported by Deployment + # Manager. + # Corresponds to the JSON property `compositeTypes` + # @return [Array] + attr_accessor :composite_types + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @composite_types = args[:composite_types] if args.key?(:composite_types) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # A condition to be met. + class Condition + include Google::Apis::Core::Hashable + + # Trusted attributes supplied by the IAM system. + # Corresponds to the JSON property `iam` + # @return [String] + attr_accessor :iam + + # An operator to apply the subject with. + # Corresponds to the JSON property `op` + # @return [String] + attr_accessor :op + + # Trusted attributes discharged by the service. + # Corresponds to the JSON property `svc` + # @return [String] + attr_accessor :svc + + # Trusted attributes supplied by any service that owns resources and uses the + # IAM system for access control. + # Corresponds to the JSON property `sys` + # @return [String] + attr_accessor :sys + + # DEPRECATED. Use 'values' instead. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + # The objects of the condition. This is mutually exclusive with 'value'. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @iam = args[:iam] if args.key?(:iam) + @op = args[:op] if args.key?(:op) + @svc = args[:svc] if args.key?(:svc) + @sys = args[:sys] if args.key?(:sys) + @value = args[:value] if args.key?(:value) + @values = args[:values] if args.key?(:values) + end + end + + # + class ConfigFile + include Google::Apis::Core::Hashable + + # The contents of the file. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + end + end + + # Credential used by ConfigurableResourceTypes. + class Credential + include Google::Apis::Core::Hashable + + # Basic Auth used as a credential. + # Corresponds to the JSON property `basicAuth` + # @return [Google::Apis::DeploymentmanagerV2beta::BasicAuth] + attr_accessor :basic_auth + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @basic_auth = args[:basic_auth] if args.key?(:basic_auth) + end + end + + # + class Deployment + include Google::Apis::Core::Hashable + + # An optional user-provided description of the deployment. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Provides a fingerprint to use in requests to modify a deployment, such as + # update(), stop(), and cancelPreview() requests. A fingerprint is a randomly + # generated value that must be provided with update(), stop(), and cancelPreview( + # ) requests to perform optimistic locking. This ensures optimistic concurrency + # so that only one request happens at a time. + # The fingerprint is initially generated by Deployment Manager and changes after + # every request to modify data. To get the latest fingerprint value, perform a + # get() request to a deployment. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the deployment was created, in RFC3339 text + # format . + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # [Output Only] URL of the manifest representing the last manifest that was + # successfully deployed. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + # Name of the resource; provided by the client when the resource is created. The + # name must be 1-63 characters long, and comply with RFC1035. Specifically, the + # name must be 1-63 characters long and match the regular expression [a-z]([-a- + # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, + # and all following characters must be a dash, lowercase letter, or digit, + # except the last character, which cannot be a dash. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + attr_accessor :operation + + # [Output Only] Self link for the deployment. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # + # Corresponds to the JSON property `target` + # @return [Google::Apis::DeploymentmanagerV2beta::TargetConfiguration] + attr_accessor :target + + # + # Corresponds to the JSON property `update` + # @return [Google::Apis::DeploymentmanagerV2beta::DeploymentUpdate] + attr_accessor :update + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @manifest = args[:manifest] if args.key?(:manifest) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @self_link = args[:self_link] if args.key?(:self_link) + @target = args[:target] if args.key?(:target) + @update = args[:update] if args.key?(:update) + end + end + + # + class DeploymentLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # + class DeploymentUpdate + include Google::Apis::Core::Hashable + + # [Output Only] An optional user-provided description of the deployment after + # the current update has been applied. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Map of labels; provided by the client when the resource is + # created or updated. Specifically: Label keys must be between 1 and 63 + # characters long and must conform to the following regular expression: [a-z]([- + # a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and + # must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # [Output Only] URL of the manifest representing the update configuration of + # this deployment. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @labels = args[:labels] if args.key?(:labels) + @manifest = args[:manifest] if args.key?(:manifest) + end + end + + # + class DeploymentUpdateLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # + class DeploymentsCancelPreviewRequest + include Google::Apis::Core::Hashable + + # Specifies a fingerprint for cancelPreview() requests. A fingerprint is a + # randomly generated value that must be provided in cancelPreview() requests to + # perform optimistic locking. This ensures optimistic concurrency so that the + # deployment does not have conflicting requests (e.g. if someone attempts to + # make a new update request while another user attempts to cancel a preview, + # this would prevent one of the requests). + # The fingerprint is initially generated by Deployment Manager and changes after + # every request to modify a deployment. To get the latest fingerprint value, + # perform a get() request on the deployment. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + end + end + + # A response containing a partial list of deployments and a page token used to + # build the next request if the request has been truncated. + class DeploymentsListResponse + include Google::Apis::Core::Hashable + + # [Output Only] The deployments contained in this response. + # Corresponds to the JSON property `deployments` + # @return [Array] + attr_accessor :deployments + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deployments = args[:deployments] if args.key?(:deployments) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class DeploymentsStopRequest + include Google::Apis::Core::Hashable + + # Specifies a fingerprint for stop() requests. A fingerprint is a randomly + # generated value that must be provided in stop() requests to perform optimistic + # locking. This ensures optimistic concurrency so that the deployment does not + # have conflicting requests (e.g. if someone attempts to make a new update + # request while another user attempts to stop an ongoing update request, this + # would prevent a collision). + # The fingerprint is initially generated by Deployment Manager and changes after + # every request to modify a deployment. To get the latest fingerprint value, + # perform a get() request on the deployment. + # Corresponds to the JSON property `fingerprint` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :fingerprint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fingerprint = args[:fingerprint] if args.key?(:fingerprint) + end + end + + # Represents an expression text. Example: + # title: "User account presence" description: "Determines whether the request + # has a user account" expression: "size(request.user) > 0" + class Expr + include Google::Apis::Core::Hashable + + # An optional description of the expression. This is a longer text which + # describes the expression, e.g. when hovered over it in a UI. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Textual representation of an expression in Common Expression Language syntax. + # The application context of the containing message determines which well-known + # feature set of CEL is supported. + # Corresponds to the JSON property `expression` + # @return [String] + attr_accessor :expression + + # An optional string indicating the location of the expression for error + # reporting, e.g. a file name and a position in the file. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # An optional title for the expression, i.e. a short string describing its + # purpose. This can be used e.g. in UIs which allow to enter the expression. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @expression = args[:expression] if args.key?(:expression) + @location = args[:location] if args.key?(:location) + @title = args[:title] if args.key?(:title) + end + end + + # + class ImportFile + include Google::Apis::Core::Hashable + + # The contents of the file. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + # The name of the file. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + @name = args[:name] if args.key?(:name) + end + end + + # InputMapping creates a 'virtual' property that will be injected into the + # properties before sending the request to the underlying API. + class InputMapping + include Google::Apis::Core::Hashable + + # The name of the field that is going to be injected. + # Corresponds to the JSON property `fieldName` + # @return [String] + attr_accessor :field_name + + # The location where this mapping applies. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # Regex to evaluate on method to decide if input applies. + # Corresponds to the JSON property `methodMatch` + # @return [String] + attr_accessor :method_match + + # A jsonPath expression to select an element. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field_name = args[:field_name] if args.key?(:field_name) + @location = args[:location] if args.key?(:location) + @method_match = args[:method_match] if args.key?(:method_match) + @value = args[:value] if args.key?(:value) + end + end + + # Specifies what kind of log the caller must write + class LogConfig + include Google::Apis::Core::Hashable + + # Write a Cloud Audit log + # Corresponds to the JSON property `cloudAudit` + # @return [Google::Apis::DeploymentmanagerV2beta::LogConfigCloudAuditOptions] + attr_accessor :cloud_audit + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, and end in " + # _count". Field names should not contain an initial slash. The actual exported + # metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are their + # respective values. + # At present the only supported field names are - "iam_principal", corresponding + # to IAMContext.principal; - "" (empty string), resulting in one aggretated + # counter with no field. + # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==> + # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value + # of IAMContext.principal]` + # At this time we do not support: * multiple field names (though this may be + # supported in the future) * decrementing the counter * incrementing it by + # anything other than 1 + # Corresponds to the JSON property `counter` + # @return [Google::Apis::DeploymentmanagerV2beta::LogConfigCounterOptions] + attr_accessor :counter + + # Write a Data Access (Gin) log + # Corresponds to the JSON property `dataAccess` + # @return [Google::Apis::DeploymentmanagerV2beta::LogConfigDataAccessOptions] + attr_accessor :data_access + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit) + @counter = args[:counter] if args.key?(:counter) + @data_access = args[:data_access] if args.key?(:data_access) + end + end + + # Write a Cloud Audit log + class LogConfigCloudAuditOptions + include Google::Apis::Core::Hashable + + # Authorization-related information used by Cloud Audit Logging. + # Corresponds to the JSON property `authorizationLoggingOptions` + # @return [Google::Apis::DeploymentmanagerV2beta::AuthorizationLoggingOptions] + attr_accessor :authorization_logging_options + + # The log_name to populate in the Cloud Audit Record. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @authorization_logging_options = args[:authorization_logging_options] if args.key?(:authorization_logging_options) + @log_name = args[:log_name] if args.key?(:log_name) + end + end + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, and end in " + # _count". Field names should not contain an initial slash. The actual exported + # metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are their + # respective values. + # At present the only supported field names are - "iam_principal", corresponding + # to IAMContext.principal; - "" (empty string), resulting in one aggretated + # counter with no field. + # Examples: counter ` metric: "/debug_access_count" field: "iam_principal" ` ==> + # increment counter /iam/policy/backend_debug_access_count `iam_principal=[value + # of IAMContext.principal]` + # At this time we do not support: * multiple field names (though this may be + # supported in the future) * decrementing the counter * incrementing it by + # anything other than 1 + class LogConfigCounterOptions + include Google::Apis::Core::Hashable + + # The field value to attribute. + # Corresponds to the JSON property `field` + # @return [String] + attr_accessor :field + + # The metric to update. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + @metric = args[:metric] if args.key?(:metric) + end + end + + # Write a Data Access (Gin) log + class LogConfigDataAccessOptions + include Google::Apis::Core::Hashable + + # Whether Gin logging should happen in a fail-closed manner at the caller. This + # is relevant only in the LocalIAM implementation, for now. + # Corresponds to the JSON property `logMode` + # @return [String] + attr_accessor :log_mode + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_mode = args[:log_mode] if args.key?(:log_mode) + end + end + + # + class Manifest + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `config` + # @return [Google::Apis::DeploymentmanagerV2beta::ConfigFile] + attr_accessor :config + + # [Output Only] The fully-expanded configuration file, including any templates + # and references. + # Corresponds to the JSON property `expandedConfig` + # @return [String] + attr_accessor :expanded_config + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The imported files for this manifest. + # Corresponds to the JSON property `imports` + # @return [Array] + attr_accessor :imports + + # [Output Only] Timestamp when the manifest was created, in RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] The YAML layout for this manifest. + # Corresponds to the JSON property `layout` + # @return [String] + attr_accessor :layout + + # [Output Only] The name of the manifest. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] Self link for the manifest. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + @expanded_config = args[:expanded_config] if args.key?(:expanded_config) + @id = args[:id] if args.key?(:id) + @imports = args[:imports] if args.key?(:imports) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @layout = args[:layout] if args.key?(:layout) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # A response containing a partial list of manifests and a page token used to + # build the next request if the request has been truncated. + class ManifestsListResponse + include Google::Apis::Core::Hashable + + # [Output Only] Manifests contained in this list response. + # Corresponds to the JSON property `manifests` + # @return [Array] + attr_accessor :manifests + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @manifests = args[:manifests] if args.key?(:manifests) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # An Operation resource, used to manage asynchronous API requests. + class Operation + include Google::Apis::Core::Hashable + + # [Output Only] Reserved for future use. + # Corresponds to the JSON property `clientOperationId` + # @return [String] + attr_accessor :client_operation_id + + # [Deprecated] This field is deprecated. + # Corresponds to the JSON property `creationTimestamp` + # @return [String] + attr_accessor :creation_timestamp + + # [Output Only] A textual description of the operation, which is set when the + # operation is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The time that this operation was completed. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + # Corresponds to the JSON property `error` + # @return [Google::Apis::DeploymentmanagerV2beta::Operation::Error] + attr_accessor :error + + # [Output Only] If the operation fails, this field contains the HTTP error + # message that was returned, such as NOT FOUND. + # Corresponds to the JSON property `httpErrorMessage` + # @return [String] + attr_accessor :http_error_message + + # [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. + # Corresponds to the JSON property `httpErrorStatusCode` + # @return [Fixnum] + attr_accessor :http_error_status_code + + # [Output Only] The unique identifier for the resource. This identifier is + # defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] The time that this operation was requested. This value is in + # RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] Type of the resource. Always compute#operation for Operation + # resources. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # [Output Only] Name of the resource. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The type of operation, such as insert, update, or delete, and so + # on. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # [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. + # Corresponds to the JSON property `progress` + # @return [Fixnum] + attr_accessor :progress + + # [Output Only] The URL of the region where the operation resides. Only + # available when performing regional operations. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # [Output Only] The time that this operation was started by the server. This + # value is in RFC3339 text format. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # [Output Only] The status of the operation, which can be one of the following: + # PENDING, RUNNING, or DONE. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # [Output Only] An optional textual description of the current status of the + # operation. + # Corresponds to the JSON property `statusMessage` + # @return [String] + attr_accessor :status_message + + # [Output Only] The unique target ID, which identifies a specific incarnation of + # the target resource. + # Corresponds to the JSON property `targetId` + # @return [Fixnum] + attr_accessor :target_id + + # [Output Only] The URL of the resource that the operation modifies. For + # operations related to creating a snapshot, this points to the persistent disk + # that the snapshot was created from. + # Corresponds to the JSON property `targetLink` + # @return [String] + attr_accessor :target_link + + # [Output Only] User who requested the operation, for example: user@example.com. + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # [Output Only] If warning messages are generated during processing of the + # operation, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + # [Output Only] The URL of the zone where the operation resides. Only available + # when performing per-zone operations. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_operation_id = args[:client_operation_id] if args.key?(:client_operation_id) + @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) + @description = args[:description] if args.key?(:description) + @end_time = args[:end_time] if args.key?(:end_time) + @error = args[:error] if args.key?(:error) + @http_error_message = args[:http_error_message] if args.key?(:http_error_message) + @http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @progress = args[:progress] if args.key?(:progress) + @region = args[:region] if args.key?(:region) + @self_link = args[:self_link] if args.key?(:self_link) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + @status_message = args[:status_message] if args.key?(:status_message) + @target_id = args[:target_id] if args.key?(:target_id) + @target_link = args[:target_link] if args.key?(:target_link) + @user = args[:user] if args.key?(:user) + @warnings = args[:warnings] if args.key?(:warnings) + @zone = args[:zone] if args.key?(:zone) + end + + # [Output Only] If errors are generated during processing of the operation, this + # field will be populated. + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A response containing a partial list of operations and a page token used to + # build the next request if the request has been truncated. + class OperationsListResponse + include Google::Apis::Core::Hashable + + # [Output Only] A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] Operations contained in this list response. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # Options allows customized resource handling by Deployment Manager. + class Options + include Google::Apis::Core::Hashable + + # The mappings that apply for requests. + # Corresponds to the JSON property `inputMappings` + # @return [Array] + attr_accessor :input_mappings + + # Options for how to validate and process properties on a resource. + # Corresponds to the JSON property `validationOptions` + # @return [Google::Apis::DeploymentmanagerV2beta::ValidationOptions] + attr_accessor :validation_options + + # Additional properties block described as a jsonSchema, these properties will + # never be part of the json payload, but they can be consumed by InputMappings, + # this must be a valid json schema draft-04. The properties specified here will + # be decouple in a different section. This schema will be merged to the schema + # validation, and properties here will be extracted From the payload and + # consumed explicitly by InputMappings. ex: field1: type: string field2: type: + # number + # Corresponds to the JSON property `virtualProperties` + # @return [String] + attr_accessor :virtual_properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input_mappings = args[:input_mappings] if args.key?(:input_mappings) + @validation_options = args[:validation_options] if args.key?(:validation_options) + @virtual_properties = args[:virtual_properties] if args.key?(:virtual_properties) + end + end + + # 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). + class Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. `bindings` with no members will + # result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `iamOwned` + # @return [Boolean] + attr_accessor :iam_owned + alias_method :iam_owned?, :iam_owned + + # 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. + # Corresponds to the JSON property `rules` + # @return [Array] + attr_accessor :rules + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @iam_owned = args[:iam_owned] if args.key?(:iam_owned) + @rules = args[:rules] if args.key?(:rules) + @version = args[:version] if args.key?(:version) + end + end + + # + class Resource + include Google::Apis::Core::Hashable + + # The access controls set on the resource. + # Corresponds to the JSON property `accessControl` + # @return [Google::Apis::DeploymentmanagerV2beta::ResourceAccessControl] + attr_accessor :access_control + + # [Output Only] The evaluated properties of the resource with references + # expanded. Returned as serialized YAML. + # Corresponds to the JSON property `finalProperties` + # @return [String] + attr_accessor :final_properties + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the resource was created or acquired, in RFC3339 + # text format . + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # [Output Only] URL of the manifest representing the current configuration of + # this resource. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + # [Output Only] The name of the resource as it appears in the YAML config. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The current properties of the resource before any references + # have been filled in. Returned as serialized YAML. + # Corresponds to the JSON property `properties` + # @return [String] + attr_accessor :properties + + # [Output Only] The type of the resource, for example compute.v1.instance, or + # cloudfunctions.v1beta1.function. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # + # Corresponds to the JSON property `update` + # @return [Google::Apis::DeploymentmanagerV2beta::ResourceUpdate] + attr_accessor :update + + # [Output Only] Timestamp when the resource was updated, in RFC3339 text format . + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + # [Output Only] The URL of the actual resource. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + # [Output Only] If warning messages are generated during processing of this + # resource, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_control = args[:access_control] if args.key?(:access_control) + @final_properties = args[:final_properties] if args.key?(:final_properties) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @manifest = args[:manifest] if args.key?(:manifest) + @name = args[:name] if args.key?(:name) + @properties = args[:properties] if args.key?(:properties) + @type = args[:type] if args.key?(:type) + @update = args[:update] if args.key?(:update) + @update_time = args[:update_time] if args.key?(:update_time) + @url = args[:url] if args.key?(:url) + @warnings = args[:warnings] if args.key?(:warnings) + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # The access controls set on the resource. + class ResourceAccessControl + include Google::Apis::Core::Hashable + + # The GCP IAM Policy to set on the resource. + # Corresponds to the JSON property `gcpIamPolicy` + # @return [String] + attr_accessor :gcp_iam_policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gcp_iam_policy = args[:gcp_iam_policy] if args.key?(:gcp_iam_policy) + end + end + + # + class ResourceUpdate + include Google::Apis::Core::Hashable + + # The access controls set on the resource. + # Corresponds to the JSON property `accessControl` + # @return [Google::Apis::DeploymentmanagerV2beta::ResourceAccessControl] + attr_accessor :access_control + + # [Output Only] If errors are generated during update of the resource, this + # field will be populated. + # Corresponds to the JSON property `error` + # @return [Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Error] + attr_accessor :error + + # [Output Only] The expanded properties of the resource with reference values + # expanded. Returned as serialized YAML. + # Corresponds to the JSON property `finalProperties` + # @return [String] + attr_accessor :final_properties + + # [Output Only] The intent of the resource: PREVIEW, UPDATE, or CANCEL. + # Corresponds to the JSON property `intent` + # @return [String] + attr_accessor :intent + + # [Output Only] URL of the manifest representing the update configuration of + # this resource. + # Corresponds to the JSON property `manifest` + # @return [String] + attr_accessor :manifest + + # [Output Only] The set of updated properties for this resource, before + # references are expanded. Returned as serialized YAML. + # Corresponds to the JSON property `properties` + # @return [String] + attr_accessor :properties + + # [Output Only] The state of the resource. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # [Output Only] If warning messages are generated during processing of this + # resource, this field will be populated. + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_control = args[:access_control] if args.key?(:access_control) + @error = args[:error] if args.key?(:error) + @final_properties = args[:final_properties] if args.key?(:final_properties) + @intent = args[:intent] if args.key?(:intent) + @manifest = args[:manifest] if args.key?(:manifest) + @properties = args[:properties] if args.key?(:properties) + @state = args[:state] if args.key?(:state) + @warnings = args[:warnings] if args.key?(:warnings) + end + + # [Output Only] If errors are generated during update of the resource, this + # field will be populated. + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The array of errors encountered while processing this operation. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @errors = args[:errors] if args.key?(:errors) + end + + # + class Error + include Google::Apis::Core::Hashable + + # [Output Only] The error type identifier for this error. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Indicates the field in the request that caused the error. This + # property is optional. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # [Output Only] An optional, human-readable error message. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @location = args[:location] if args.key?(:location) + @message = args[:message] if args.key?(:message) + end + end + end + + # + class Warning + include Google::Apis::Core::Hashable + + # [Output Only] A warning code, if applicable. For example, Compute Engine + # returns NO_RESULTS_ON_PAGE if there are no results in the response. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # [Output Only] Metadata about this warning in key: value format. For example: + # "data": [ ` "key": "scope", "value": "zones/us-east1-d" ` + # Corresponds to the JSON property `data` + # @return [Array] + attr_accessor :data + + # [Output Only] A human-readable description of the warning code. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @data = args[:data] if args.key?(:data) + @message = args[:message] if args.key?(:message) + end + + # + class Datum + include Google::Apis::Core::Hashable + + # [Output Only] A key that provides more detail on the warning being returned. + # For example, for warnings where there are no results in a list request for a + # particular zone, this key might be scope and the key value might be the zone + # name. Other examples might be a key indicating a deprecated resource and a + # suggested replacement, or a warning about invalid network settings (for + # example, if an instance attempts to perform IP forwarding but is not enabled + # for IP forwarding). + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # [Output Only] A warning data value corresponding to the key. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # A response containing a partial list of resources and a page token used to + # build the next request if the request has been truncated. + class ResourcesListResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Resources contained in this list response. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resources = args[:resources] if args.key?(:resources) + end + end + + # A rule to be applied in a Policy. + class Rule + include Google::Apis::Core::Hashable + + # Required + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # Additional restrictions that must be met + # Corresponds to the JSON property `conditions` + # @return [Array] + attr_accessor :conditions + + # Human-readable description of the rule. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `ins` + # @return [Array] + attr_accessor :ins + + # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries + # that match the LOG action. + # Corresponds to the JSON property `logConfigs` + # @return [Array] + attr_accessor :log_configs + + # If one or more 'not_in' clauses are specified, the rule matches if the + # PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries. + # Corresponds to the JSON property `notIns` + # @return [Array] + attr_accessor :not_ins + + # 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. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @conditions = args[:conditions] if args.key?(:conditions) + @description = args[:description] if args.key?(:description) + @ins = args[:ins] if args.key?(:ins) + @log_configs = args[:log_configs] if args.key?(:log_configs) + @not_ins = args[:not_ins] if args.key?(:not_ins) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class TargetConfiguration + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `config` + # @return [Google::Apis::DeploymentmanagerV2beta::ConfigFile] + attr_accessor :config + + # Specifies any files to import for this configuration. This can be used to + # import templates or other files. For example, you might import a text file in + # order to use the file in a template. + # Corresponds to the JSON property `imports` + # @return [Array] + attr_accessor :imports + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + @imports = args[:imports] if args.key?(:imports) + end + end + + # Files that make up the template contents of a template type. + class TemplateContents + include Google::Apis::Core::Hashable + + # Import files referenced by the main template. + # Corresponds to the JSON property `imports` + # @return [Array] + attr_accessor :imports + + # Which interpreter (python or jinja) should be used during expansion. + # Corresponds to the JSON property `interpreter` + # @return [String] + attr_accessor :interpreter + + # The contents of the template schema. + # Corresponds to the JSON property `schema` + # @return [String] + attr_accessor :schema + + # The contents of the main template file. + # Corresponds to the JSON property `template` + # @return [String] + attr_accessor :template + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @imports = args[:imports] if args.key?(:imports) + @interpreter = args[:interpreter] if args.key?(:interpreter) + @schema = args[:schema] if args.key?(:schema) + @template = args[:template] if args.key?(:template) + end + end + + # + class TestPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the 'resource'. Permissions with wildcards + # (such as '*' or 'storage.*') are not allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # + class TestPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # A resource type supported by Deployment Manager. + class Type + include Google::Apis::Core::Hashable + + # BaseType that describes a service-backed Type. + # Corresponds to the JSON property `base` + # @return [Google::Apis::DeploymentmanagerV2beta::BaseType] + attr_accessor :base + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the type was created, in RFC3339 text format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # Name of the type. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + attr_accessor :operation + + # [Output Only] Self link for the type. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @base = args[:base] if args.key?(:base) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # Contains detailed information about a composite type, base type, or base type + # with specific collection. + class TypeInfo + include Google::Apis::Core::Hashable + + # The description of the type. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # For swagger 2.0 externalDocs field will be used. For swagger 1.2 this field + # will be empty. + # Corresponds to the JSON property `documentationLink` + # @return [String] + attr_accessor :documentation_link + + # [Output Only] Type of the output. Always deploymentManager#TypeInfo for + # TypeInfo. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The base type or composite type name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # + # Corresponds to the JSON property `schema` + # @return [Google::Apis::DeploymentmanagerV2beta::TypeInfoSchemaInfo] + attr_accessor :schema + + # [Output Only] Server-defined URL for the resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The title on the API descriptor URL provided. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @documentation_link = args[:documentation_link] if args.key?(:documentation_link) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @schema = args[:schema] if args.key?(:schema) + @self_link = args[:self_link] if args.key?(:self_link) + @title = args[:title] if args.key?(:title) + end + end + + # + class TypeInfoSchemaInfo + include Google::Apis::Core::Hashable + + # The properties that this composite type or base type collection accept as + # input, represented as a json blob, format is: JSON Schema Draft V4 + # Corresponds to the JSON property `input` + # @return [String] + attr_accessor :input + + # The properties that this composite type or base type collection exposes as + # output, these properties can be used for references, represented as json blob, + # format is: JSON Schema Draft V4 + # Corresponds to the JSON property `output` + # @return [String] + attr_accessor :output + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + @output = args[:output] if args.key?(:output) + end + end + + # + class TypeLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A type provider that describes a service-backed Type. + class TypeProvider + include Google::Apis::Core::Hashable + + # Allows resource handling overrides for specific collections + # Corresponds to the JSON property `collectionOverrides` + # @return [Array] + attr_accessor :collection_overrides + + # Credential used by ConfigurableResourceTypes. + # Corresponds to the JSON property `credential` + # @return [Google::Apis::DeploymentmanagerV2beta::Credential] + attr_accessor :credential + + # An optional textual description of the resource; provided by the client when + # the resource is created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Descriptor Url for the this type provider. + # Corresponds to the JSON property `descriptorUrl` + # @return [String] + attr_accessor :descriptor_url + + # [Output Only] Unique identifier for the resource; defined by the server. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # [Output Only] Timestamp when the type provider was created, in RFC3339 text + # format. + # Corresponds to the JSON property `insertTime` + # @return [String] + attr_accessor :insert_time + + # Map of labels; provided by the client when the resource is created or updated. + # Specifically: Label keys must be between 1 and 63 characters long and must + # conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label + # values must be between 0 and 63 characters long and must conform to the + # regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # Name of the type provider. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An Operation resource, used to manage asynchronous API requests. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + attr_accessor :operation + + # Options allows customized resource handling by Deployment Manager. + # Corresponds to the JSON property `options` + # @return [Google::Apis::DeploymentmanagerV2beta::Options] + attr_accessor :options + + # [Output Only] Self link for the type provider. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @collection_overrides = args[:collection_overrides] if args.key?(:collection_overrides) + @credential = args[:credential] if args.key?(:credential) + @description = args[:description] if args.key?(:description) + @descriptor_url = args[:descriptor_url] if args.key?(:descriptor_url) + @id = args[:id] if args.key?(:id) + @insert_time = args[:insert_time] if args.key?(:insert_time) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @operation = args[:operation] if args.key?(:operation) + @options = args[:options] if args.key?(:options) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class TypeProviderLabelEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A response that returns all Type Providers supported by Deployment Manager + class TypeProvidersListResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] A list of resource type providers supported by Deployment + # Manager. + # Corresponds to the JSON property `typeProviders` + # @return [Array] + attr_accessor :type_providers + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @type_providers = args[:type_providers] if args.key?(:type_providers) + end + end + + # + class TypeProvidersListTypesResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] A list of resource type info. + # Corresponds to the JSON property `types` + # @return [Array] + attr_accessor :types + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @types = args[:types] if args.key?(:types) + end + end + + # A response that returns all Types supported by Deployment Manager + class TypesListResponse + include Google::Apis::Core::Hashable + + # A token used to continue a truncated list request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # [Output Only] A list of resource types supported by Deployment Manager. + # Corresponds to the JSON property `types` + # @return [Array] + attr_accessor :types + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @types = args[:types] if args.key?(:types) + end + end + + # Options for how to validate and process properties on a resource. + class ValidationOptions + include Google::Apis::Core::Hashable + + # Customize how deployment manager will validate the resource against schema + # errors. + # Corresponds to the JSON property `schemaValidation` + # @return [String] + attr_accessor :schema_validation + + # Specify what to do with extra properties when executing a request. + # Corresponds to the JSON property `undeclaredProperties` + # @return [String] + attr_accessor :undeclared_properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @schema_validation = args[:schema_validation] if args.key?(:schema_validation) + @undeclared_properties = args[:undeclared_properties] if args.key?(:undeclared_properties) + end + end + end + end +end diff --git a/generated/google/apis/deploymentmanager_v2beta/representations.rb b/generated/google/apis/deploymentmanager_v2beta/representations.rb new file mode 100644 index 000000000..262bd0b5f --- /dev/null +++ b/generated/google/apis/deploymentmanager_v2beta/representations.rb @@ -0,0 +1,1054 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DeploymentmanagerV2beta + + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuthorizationLoggingOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BaseType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BasicAuth + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CollectionOverride + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompositeType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompositeTypeLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CompositeTypesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Condition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ConfigFile + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Credential + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Deployment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentUpdate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentUpdateLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentsCancelPreviewRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeploymentsStopRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Expr + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ImportFile + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InputMapping + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigCloudAuditOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigCounterOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogConfigDataAccessOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Manifest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManifestsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Options + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Resource + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceAccessControl + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceUpdate + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Warning + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Datum + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourcesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Rule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TargetConfiguration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TemplateContents + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Type + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeInfoSchemaInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProvider + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProviderLabelEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProvidersListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypeProvidersListTypesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TypesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ValidationOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::DeploymentmanagerV2beta::AuditLogConfig, decorator: Google::Apis::DeploymentmanagerV2beta::AuditLogConfig::Representation + + collection :exempted_members, as: 'exemptedMembers' + property :service, as: 'service' + end + end + + class AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class AuthorizationLoggingOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :permission_type, as: 'permissionType' + end + end + + class BaseType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :collection_overrides, as: 'collectionOverrides', class: Google::Apis::DeploymentmanagerV2beta::CollectionOverride, decorator: Google::Apis::DeploymentmanagerV2beta::CollectionOverride::Representation + + property :credential, as: 'credential', class: Google::Apis::DeploymentmanagerV2beta::Credential, decorator: Google::Apis::DeploymentmanagerV2beta::Credential::Representation + + property :descriptor_url, as: 'descriptorUrl' + property :options, as: 'options', class: Google::Apis::DeploymentmanagerV2beta::Options, decorator: Google::Apis::DeploymentmanagerV2beta::Options::Representation + + end + end + + class BasicAuth + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :password, as: 'password' + property :user, as: 'user' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::DeploymentmanagerV2beta::Expr, decorator: Google::Apis::DeploymentmanagerV2beta::Expr::Representation + + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class CollectionOverride + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :collection, as: 'collection' + property :options, as: 'options', class: Google::Apis::DeploymentmanagerV2beta::Options, decorator: Google::Apis::DeploymentmanagerV2beta::Options::Representation + + end + end + + class CompositeType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerV2beta::CompositeTypeLabelEntry, decorator: Google::Apis::DeploymentmanagerV2beta::CompositeTypeLabelEntry::Representation + + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerV2beta::Operation, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Representation + + property :self_link, as: 'selfLink' + property :status, as: 'status' + property :template_contents, as: 'templateContents', class: Google::Apis::DeploymentmanagerV2beta::TemplateContents, decorator: Google::Apis::DeploymentmanagerV2beta::TemplateContents::Representation + + end + end + + class CompositeTypeLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class CompositeTypesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :composite_types, as: 'compositeTypes', class: Google::Apis::DeploymentmanagerV2beta::CompositeType, decorator: Google::Apis::DeploymentmanagerV2beta::CompositeType::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class Condition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :iam, as: 'iam' + property :op, as: 'op' + property :svc, as: 'svc' + property :sys, as: 'sys' + property :value, as: 'value' + collection :values, as: 'values' + end + end + + class ConfigFile + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content, as: 'content' + end + end + + class Credential + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :basic_auth, as: 'basicAuth', class: Google::Apis::DeploymentmanagerV2beta::BasicAuth, decorator: Google::Apis::DeploymentmanagerV2beta::BasicAuth::Representation + + end + end + + class Deployment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :fingerprint, :base64 => true, as: 'fingerprint' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerV2beta::DeploymentLabelEntry, decorator: Google::Apis::DeploymentmanagerV2beta::DeploymentLabelEntry::Representation + + property :manifest, as: 'manifest' + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerV2beta::Operation, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Representation + + property :self_link, as: 'selfLink' + property :target, as: 'target', class: Google::Apis::DeploymentmanagerV2beta::TargetConfiguration, decorator: Google::Apis::DeploymentmanagerV2beta::TargetConfiguration::Representation + + property :update, as: 'update', class: Google::Apis::DeploymentmanagerV2beta::DeploymentUpdate, decorator: Google::Apis::DeploymentmanagerV2beta::DeploymentUpdate::Representation + + end + end + + class DeploymentLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class DeploymentUpdate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerV2beta::DeploymentUpdateLabelEntry, decorator: Google::Apis::DeploymentmanagerV2beta::DeploymentUpdateLabelEntry::Representation + + property :manifest, as: 'manifest' + end + end + + class DeploymentUpdateLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class DeploymentsCancelPreviewRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + end + end + + class DeploymentsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :deployments, as: 'deployments', class: Google::Apis::DeploymentmanagerV2beta::Deployment, decorator: Google::Apis::DeploymentmanagerV2beta::Deployment::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class DeploymentsStopRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fingerprint, :base64 => true, as: 'fingerprint' + end + end + + class Expr + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :expression, as: 'expression' + property :location, as: 'location' + property :title, as: 'title' + end + end + + class ImportFile + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content, as: 'content' + property :name, as: 'name' + end + end + + class InputMapping + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field_name, as: 'fieldName' + property :location, as: 'location' + property :method_match, as: 'methodMatch' + property :value, as: 'value' + end + end + + class LogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cloud_audit, as: 'cloudAudit', class: Google::Apis::DeploymentmanagerV2beta::LogConfigCloudAuditOptions, decorator: Google::Apis::DeploymentmanagerV2beta::LogConfigCloudAuditOptions::Representation + + property :counter, as: 'counter', class: Google::Apis::DeploymentmanagerV2beta::LogConfigCounterOptions, decorator: Google::Apis::DeploymentmanagerV2beta::LogConfigCounterOptions::Representation + + property :data_access, as: 'dataAccess', class: Google::Apis::DeploymentmanagerV2beta::LogConfigDataAccessOptions, decorator: Google::Apis::DeploymentmanagerV2beta::LogConfigDataAccessOptions::Representation + + end + end + + class LogConfigCloudAuditOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :authorization_logging_options, as: 'authorizationLoggingOptions', class: Google::Apis::DeploymentmanagerV2beta::AuthorizationLoggingOptions, decorator: Google::Apis::DeploymentmanagerV2beta::AuthorizationLoggingOptions::Representation + + property :log_name, as: 'logName' + end + end + + class LogConfigCounterOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field' + property :metric, as: 'metric' + end + end + + class LogConfigDataAccessOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :log_mode, as: 'logMode' + end + end + + class Manifest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config', class: Google::Apis::DeploymentmanagerV2beta::ConfigFile, decorator: Google::Apis::DeploymentmanagerV2beta::ConfigFile::Representation + + property :expanded_config, as: 'expandedConfig' + property :id, :numeric_string => true, as: 'id' + collection :imports, as: 'imports', class: Google::Apis::DeploymentmanagerV2beta::ImportFile, decorator: Google::Apis::DeploymentmanagerV2beta::ImportFile::Representation + + property :insert_time, as: 'insertTime' + property :layout, as: 'layout' + property :name, as: 'name' + property :self_link, as: 'selfLink' + end + end + + class ManifestsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :manifests, as: 'manifests', class: Google::Apis::DeploymentmanagerV2beta::Manifest, decorator: Google::Apis::DeploymentmanagerV2beta::Manifest::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_operation_id, as: 'clientOperationId' + property :creation_timestamp, as: 'creationTimestamp' + property :description, as: 'description' + property :end_time, as: 'endTime' + property :error, as: 'error', class: Google::Apis::DeploymentmanagerV2beta::Operation::Error, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Error::Representation + + property :http_error_message, as: 'httpErrorMessage' + property :http_error_status_code, as: 'httpErrorStatusCode' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + property :kind, as: 'kind' + property :name, as: 'name' + property :operation_type, as: 'operationType' + property :progress, as: 'progress' + property :region, as: 'region' + property :self_link, as: 'selfLink' + property :start_time, as: 'startTime' + property :status, as: 'status' + property :status_message, as: 'statusMessage' + property :target_id, :numeric_string => true, as: 'targetId' + property :target_link, as: 'targetLink' + property :user, as: 'user' + collection :warnings, as: 'warnings', class: Google::Apis::DeploymentmanagerV2beta::Operation::Warning, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Warning::Representation + + property :zone, as: 'zone' + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::DeploymentmanagerV2beta::Operation::Error::Error, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Error::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::DeploymentmanagerV2beta::Operation::Warning::Datum, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class OperationsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::DeploymentmanagerV2beta::Operation, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Representation + + end + end + + class Options + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :input_mappings, as: 'inputMappings', class: Google::Apis::DeploymentmanagerV2beta::InputMapping, decorator: Google::Apis::DeploymentmanagerV2beta::InputMapping::Representation + + property :validation_options, as: 'validationOptions', class: Google::Apis::DeploymentmanagerV2beta::ValidationOptions, decorator: Google::Apis::DeploymentmanagerV2beta::ValidationOptions::Representation + + property :virtual_properties, as: 'virtualProperties' + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::DeploymentmanagerV2beta::AuditConfig, decorator: Google::Apis::DeploymentmanagerV2beta::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::DeploymentmanagerV2beta::Binding, decorator: Google::Apis::DeploymentmanagerV2beta::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :iam_owned, as: 'iamOwned' + collection :rules, as: 'rules', class: Google::Apis::DeploymentmanagerV2beta::Rule, decorator: Google::Apis::DeploymentmanagerV2beta::Rule::Representation + + property :version, as: 'version' + end + end + + class Resource + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :access_control, as: 'accessControl', class: Google::Apis::DeploymentmanagerV2beta::ResourceAccessControl, decorator: Google::Apis::DeploymentmanagerV2beta::ResourceAccessControl::Representation + + property :final_properties, as: 'finalProperties' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + property :manifest, as: 'manifest' + property :name, as: 'name' + property :properties, as: 'properties' + property :type, as: 'type' + property :update, as: 'update', class: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate, decorator: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Representation + + property :update_time, as: 'updateTime' + property :url, as: 'url' + collection :warnings, as: 'warnings', class: Google::Apis::DeploymentmanagerV2beta::Resource::Warning, decorator: Google::Apis::DeploymentmanagerV2beta::Resource::Warning::Representation + + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::DeploymentmanagerV2beta::Resource::Warning::Datum, decorator: Google::Apis::DeploymentmanagerV2beta::Resource::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ResourceAccessControl + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gcp_iam_policy, as: 'gcpIamPolicy' + end + end + + class ResourceUpdate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :access_control, as: 'accessControl', class: Google::Apis::DeploymentmanagerV2beta::ResourceAccessControl, decorator: Google::Apis::DeploymentmanagerV2beta::ResourceAccessControl::Representation + + property :error, as: 'error', class: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Error, decorator: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Error::Representation + + property :final_properties, as: 'finalProperties' + property :intent, as: 'intent' + property :manifest, as: 'manifest' + property :properties, as: 'properties' + property :state, as: 'state' + collection :warnings, as: 'warnings', class: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Warning, decorator: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Warning::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :errors, as: 'errors', class: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Error::Error, decorator: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Error::Error::Representation + + end + + class Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :location, as: 'location' + property :message, as: 'message' + end + end + end + + class Warning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :data, as: 'data', class: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Warning::Datum, decorator: Google::Apis::DeploymentmanagerV2beta::ResourceUpdate::Warning::Datum::Representation + + property :message, as: 'message' + end + + class Datum + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + end + end + + class ResourcesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resources, as: 'resources', class: Google::Apis::DeploymentmanagerV2beta::Resource, decorator: Google::Apis::DeploymentmanagerV2beta::Resource::Representation + + end + end + + class Rule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + collection :conditions, as: 'conditions', class: Google::Apis::DeploymentmanagerV2beta::Condition, decorator: Google::Apis::DeploymentmanagerV2beta::Condition::Representation + + property :description, as: 'description' + collection :ins, as: 'ins' + collection :log_configs, as: 'logConfigs', class: Google::Apis::DeploymentmanagerV2beta::LogConfig, decorator: Google::Apis::DeploymentmanagerV2beta::LogConfig::Representation + + collection :not_ins, as: 'notIns' + collection :permissions, as: 'permissions' + end + end + + class TargetConfiguration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config', class: Google::Apis::DeploymentmanagerV2beta::ConfigFile, decorator: Google::Apis::DeploymentmanagerV2beta::ConfigFile::Representation + + collection :imports, as: 'imports', class: Google::Apis::DeploymentmanagerV2beta::ImportFile, decorator: Google::Apis::DeploymentmanagerV2beta::ImportFile::Representation + + end + end + + class TemplateContents + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :imports, as: 'imports', class: Google::Apis::DeploymentmanagerV2beta::ImportFile, decorator: Google::Apis::DeploymentmanagerV2beta::ImportFile::Representation + + property :interpreter, as: 'interpreter' + property :schema, as: 'schema' + property :template, as: 'template' + end + end + + class TestPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class Type + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :base, as: 'base', class: Google::Apis::DeploymentmanagerV2beta::BaseType, decorator: Google::Apis::DeploymentmanagerV2beta::BaseType::Representation + + property :description, as: 'description' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerV2beta::TypeLabelEntry, decorator: Google::Apis::DeploymentmanagerV2beta::TypeLabelEntry::Representation + + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerV2beta::Operation, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Representation + + property :self_link, as: 'selfLink' + end + end + + class TypeInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :documentation_link, as: 'documentationLink' + property :kind, as: 'kind' + property :name, as: 'name' + property :schema, as: 'schema', class: Google::Apis::DeploymentmanagerV2beta::TypeInfoSchemaInfo, decorator: Google::Apis::DeploymentmanagerV2beta::TypeInfoSchemaInfo::Representation + + property :self_link, as: 'selfLink' + property :title, as: 'title' + end + end + + class TypeInfoSchemaInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input' + property :output, as: 'output' + end + end + + class TypeLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class TypeProvider + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :collection_overrides, as: 'collectionOverrides', class: Google::Apis::DeploymentmanagerV2beta::CollectionOverride, decorator: Google::Apis::DeploymentmanagerV2beta::CollectionOverride::Representation + + property :credential, as: 'credential', class: Google::Apis::DeploymentmanagerV2beta::Credential, decorator: Google::Apis::DeploymentmanagerV2beta::Credential::Representation + + property :description, as: 'description' + property :descriptor_url, as: 'descriptorUrl' + property :id, :numeric_string => true, as: 'id' + property :insert_time, as: 'insertTime' + collection :labels, as: 'labels', class: Google::Apis::DeploymentmanagerV2beta::TypeProviderLabelEntry, decorator: Google::Apis::DeploymentmanagerV2beta::TypeProviderLabelEntry::Representation + + property :name, as: 'name' + property :operation, as: 'operation', class: Google::Apis::DeploymentmanagerV2beta::Operation, decorator: Google::Apis::DeploymentmanagerV2beta::Operation::Representation + + property :options, as: 'options', class: Google::Apis::DeploymentmanagerV2beta::Options, decorator: Google::Apis::DeploymentmanagerV2beta::Options::Representation + + property :self_link, as: 'selfLink' + end + end + + class TypeProviderLabelEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class TypeProvidersListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :type_providers, as: 'typeProviders', class: Google::Apis::DeploymentmanagerV2beta::TypeProvider, decorator: Google::Apis::DeploymentmanagerV2beta::TypeProvider::Representation + + end + end + + class TypeProvidersListTypesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :types, as: 'types', class: Google::Apis::DeploymentmanagerV2beta::TypeInfo, decorator: Google::Apis::DeploymentmanagerV2beta::TypeInfo::Representation + + end + end + + class TypesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :types, as: 'types', class: Google::Apis::DeploymentmanagerV2beta::Type, decorator: Google::Apis::DeploymentmanagerV2beta::Type::Representation + + end + end + + class ValidationOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :schema_validation, as: 'schemaValidation' + property :undeclared_properties, as: 'undeclaredProperties' + end + end + end + end +end diff --git a/generated/google/apis/deploymentmanager_v2beta/service.rb b/generated/google/apis/deploymentmanager_v2beta/service.rb new file mode 100644 index 000000000..988e507a8 --- /dev/null +++ b/generated/google/apis/deploymentmanager_v2beta/service.rb @@ -0,0 +1,1687 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DeploymentmanagerV2beta + # Google Cloud Deployment Manager API V2Beta Methods + # + # The Deployment Manager API allows users to declaratively configure, deploy and + # run complex solutions on the Google Cloud Platform. + # + # @example + # require 'google/apis/deploymentmanager_v2beta' + # + # Deploymentmanager = Google::Apis::DeploymentmanagerV2beta # Alias the module + # service = Deploymentmanager::DeploymentManagerV2BetaService.new + # + # @see https://developers.google.com/deployment-manager/ + class DeploymentManagerV2BetaService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'deploymentmanager/v2beta/projects/') + @batch_path = 'batch' + end + + # Deletes a composite type. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the type for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_composite_type(project, composite_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/compositeTypes/{compositeType}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific composite type. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the composite type for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::CompositeType] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::CompositeType] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_composite_type(project, composite_type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/compositeTypes/{compositeType}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::CompositeType::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::CompositeType + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a composite type. + # @param [String] project + # The project ID for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::CompositeType] composite_type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_composite_type(project, composite_type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/compositeTypes', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::CompositeType::Representation + command.request_object = composite_type_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all composite types for Deployment Manager. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::CompositeTypesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::CompositeTypesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_composite_types(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/compositeTypes', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::CompositeTypesListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::CompositeTypesListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a composite type. This method supports patch semantics. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the composite type for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::CompositeType] composite_type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_composite_type(project, composite_type, composite_type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/compositeTypes/{compositeType}', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::CompositeType::Representation + command.request_object = composite_type_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a composite type. + # @param [String] project + # The project ID for this request. + # @param [String] composite_type + # The name of the composite type for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::CompositeType] composite_type_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_composite_type(project, composite_type, composite_type_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/compositeTypes/{compositeType}', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::CompositeType::Representation + command.request_object = composite_type_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['compositeType'] = composite_type unless composite_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Cancels and removes the preview currently associated with the deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::DeploymentsCancelPreviewRequest] deployments_cancel_preview_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_deployment_preview(project, deployment, deployments_cancel_preview_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{deployment}/cancelPreview', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::DeploymentsCancelPreviewRequest::Representation + command.request_object = deployments_cancel_preview_request_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a deployment and all of the resources in the deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] delete_policy + # Sets the policy to use for deleting resources. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_deployment(project, deployment, delete_policy: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/deployments/{deployment}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['deletePolicy'] = delete_policy unless delete_policy.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Deployment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Deployment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_deployment(project, deployment, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Deployment::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Deployment + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. May be empty if no such policy + # or resource exists. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_deployment_iam_policy(project, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{resource}/getIamPolicy', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Policy::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a deployment and all of the resources described by the deployment + # manifest. + # @param [String] project + # The project ID for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::Deployment] deployment_object + # @param [Boolean] preview + # If set to true, creates a deployment and creates "shell" resources but does + # not actually instantiate these resources. This allows you to preview what your + # deployment looks like. After previewing a deployment, you can deploy your + # resources by making a request with the update() method or you can use the + # cancelPreview() method to cancel the preview altogether. Note that the + # deployment will still exist after you cancel the preview and you must + # separately delete this deployment if you want to remove it. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_deployment(project, deployment_object = nil, preview: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::Deployment::Representation + command.request_object = deployment_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.query['preview'] = preview unless preview.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all deployments for a given project. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::DeploymentsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::DeploymentsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_deployments(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::DeploymentsListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::DeploymentsListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a deployment and all of the resources described by the deployment + # manifest. This method supports patch semantics. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::Deployment] deployment_object + # @param [String] create_policy + # Sets the policy to use for creating new resources. + # @param [String] delete_policy + # Sets the policy to use for deleting resources. + # @param [Boolean] preview + # If set to true, updates the deployment and creates and updates the "shell" + # resources but does not actually alter or instantiate these resources. This + # allows you to preview what your deployment will look like. You can use this + # intent to preview how an update would affect your deployment. You must provide + # a target.config with a configuration if this is set to true. After previewing + # a deployment, you can deploy your resources by making a request with the + # update() or you can cancelPreview() to remove the preview altogether. Note + # that the deployment will still exist after you cancel the preview and you must + # separately delete this deployment if you want to remove it. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_deployment(project, deployment, deployment_object = nil, create_policy: nil, delete_policy: nil, preview: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/deployments/{deployment}', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::Deployment::Representation + command.request_object = deployment_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['createPolicy'] = create_policy unless create_policy.nil? + command.query['deletePolicy'] = delete_policy unless delete_policy.nil? + command.query['preview'] = preview unless preview.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::Policy] policy_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_deployment_iam_policy(project, resource, policy_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{resource}/setIamPolicy', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::Policy::Representation + command.request_object = policy_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Policy::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Policy + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Stops an ongoing operation. This does not roll back any work that has already + # been completed, but prevents any new work from being started. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::DeploymentsStopRequest] deployments_stop_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def stop_deployment(project, deployment, deployments_stop_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{deployment}/stop', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::DeploymentsStopRequest::Representation + command.request_object = deployments_stop_request_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # @param [String] project + # Project ID for this request. + # @param [String] resource + # Name of the resource for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::TestPermissionsRequest] test_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::TestPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::TestPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_deployment_iam_permissions(project, resource, test_permissions_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/deployments/{resource}/testIamPermissions', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::TestPermissionsRequest::Representation + command.request_object = test_permissions_request_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::TestPermissionsResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::TestPermissionsResponse + command.params['project'] = project unless project.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a deployment and all of the resources described by the deployment + # manifest. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::Deployment] deployment_object + # @param [String] create_policy + # Sets the policy to use for creating new resources. + # @param [String] delete_policy + # Sets the policy to use for deleting resources. + # @param [Boolean] preview + # If set to true, updates the deployment and creates and updates the "shell" + # resources but does not actually alter or instantiate these resources. This + # allows you to preview what your deployment will look like. You can use this + # intent to preview how an update would affect your deployment. You must provide + # a target.config with a configuration if this is set to true. After previewing + # a deployment, you can deploy your resources by making a request with the + # update() or you can cancelPreview() to remove the preview altogether. Note + # that the deployment will still exist after you cancel the preview and you must + # separately delete this deployment if you want to remove it. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_deployment(project, deployment, deployment_object = nil, create_policy: nil, delete_policy: nil, preview: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/deployments/{deployment}', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::Deployment::Representation + command.request_object = deployment_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['createPolicy'] = create_policy unless create_policy.nil? + command.query['deletePolicy'] = delete_policy unless delete_policy.nil? + command.query['preview'] = preview unless preview.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific manifest. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] manifest + # The name of the manifest for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Manifest] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Manifest] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_manifest(project, deployment, manifest, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/manifests/{manifest}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Manifest::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Manifest + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.params['manifest'] = manifest unless manifest.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all manifests for a given deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::ManifestsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::ManifestsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_manifests(project, deployment, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/manifests', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::ManifestsListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::ManifestsListResponse + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific operation. + # @param [String] project + # The project ID for this request. + # @param [String] operation + # The name of the operation for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_operation(project, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations/{operation}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all operations for a project. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::OperationsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::OperationsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_operations(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/operations', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::OperationsListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::OperationsListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a single resource. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] resource + # The name of the resource for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Resource] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Resource] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_resource(project, deployment, resource, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/resources/{resource}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Resource::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Resource + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all resources in a given deployment. + # @param [String] project + # The project ID for this request. + # @param [String] deployment + # The name of the deployment for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::ResourcesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::ResourcesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_resources(project, deployment, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/deployments/{deployment}/resources', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::ResourcesListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::ResourcesListResponse + command.params['project'] = project unless project.nil? + command.params['deployment'] = deployment unless deployment.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a type provider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_type_provider(project, type_provider, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/global/typeProviders/{typeProvider}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific type provider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::TypeProvider] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::TypeProvider] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_type_provider(project, type_provider, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders/{typeProvider}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::TypeProvider::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::TypeProvider + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets a type info for a type provided by a TypeProvider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] type + # The name of the type provider for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::TypeInfo] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::TypeInfo] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_type_provider_type(project, type_provider, type, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders/{typeProvider}/types/{type}', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::TypeInfo::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::TypeInfo + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.params['type'] = type unless type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a type provider. + # @param [String] project + # The project ID for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::TypeProvider] type_provider_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_type_provider(project, type_provider_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/global/typeProviders', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::TypeProvider::Representation + command.request_object = type_provider_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all resource type providers for Deployment Manager. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::TypeProvidersListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::TypeProvidersListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_type_providers(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::TypeProvidersListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::TypeProvidersListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all the type info for a TypeProvider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::TypeProvidersListTypesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::TypeProvidersListTypesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_type_provider_types(project, type_provider, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/typeProviders/{typeProvider}/types', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::TypeProvidersListTypesResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::TypeProvidersListTypesResponse + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a type provider. This method supports patch semantics. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::TypeProvider] type_provider_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_type_provider(project, type_provider, type_provider_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/global/typeProviders/{typeProvider}', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::TypeProvider::Representation + command.request_object = type_provider_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a type provider. + # @param [String] project + # The project ID for this request. + # @param [String] type_provider + # The name of the type provider for this request. + # @param [Google::Apis::DeploymentmanagerV2beta::TypeProvider] type_provider_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_type_provider(project, type_provider, type_provider_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/global/typeProviders/{typeProvider}', options) + command.request_representation = Google::Apis::DeploymentmanagerV2beta::TypeProvider::Representation + command.request_object = type_provider_object + command.response_representation = Google::Apis::DeploymentmanagerV2beta::Operation::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::Operation + command.params['project'] = project unless project.nil? + command.params['typeProvider'] = type_provider unless type_provider.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all resource types for Deployment Manager. + # @param [String] project + # The project ID for this request. + # @param [String] filter + # Sets a filter `expression` for filtering listed resources. Your `expression` + # must be in the format: field_name comparison_string literal_string. + # The field_name is the name of the field you want to compare. Only atomic field + # types are supported (string, number, boolean). The comparison_string must be + # either eq (equals) or ne (not equals). The literal_string is the string value + # to filter to. The literal value must be valid for the type of field you are + # filtering by (string, number, boolean). For string fields, the literal value + # is interpreted as a regular expression using RE2 syntax. The literal value + # must match the entire field. + # For example, to filter for instances that do not have a name of example- + # instance, you would use name ne example-instance. + # You can filter on nested fields. For example, you could filter on instances + # that have set the scheduling.automaticRestart field to true. Use filtering on + # nested fields to take advantage of labels to organize and search for results + # based on label values. + # To filter on multiple expressions, provide each separate expression within + # parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us- + # central1-f). Multiple expressions are treated as AND expressions, meaning that + # resources must match all expressions to pass the filters. + # @param [Fixnum] max_results + # The maximum number of results per page that should be returned. If the number + # of available results is larger than maxResults, Compute Engine returns a + # nextPageToken that can be used to get the next page of results in subsequent + # list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + # @param [String] order_by + # Sorts list results by a certain order. By default, results are returned in + # alphanumerical order based on the resource name. + # You can also sort results in descending order based on the creation timestamp + # using orderBy="creationTimestamp desc". This sorts results based on the + # creationTimestamp field in reverse chronological order (newest result first). + # Use this to sort resources like operations so that the newest operation is + # returned first. + # Currently, only sorting by name or creationTimestamp desc is supported. + # @param [String] page_token + # Specifies a page token to use. Set pageToken to the nextPageToken returned by + # a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DeploymentmanagerV2beta::TypesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DeploymentmanagerV2beta::TypesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_types(project, filter: nil, max_results: nil, order_by: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/global/types', options) + command.response_representation = Google::Apis::DeploymentmanagerV2beta::TypesListResponse::Representation + command.response_class = Google::Apis::DeploymentmanagerV2beta::TypesListResponse + command.params['project'] = project unless project.nil? + command.query['filter'] = filter unless filter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/dfareporting_v2_7.rb b/generated/google/apis/dfareporting_v2_7.rb index e385a09f4..7f62fe574 100644 --- a/generated/google/apis/dfareporting_v2_7.rb +++ b/generated/google/apis/dfareporting_v2_7.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/doubleclick-advertisers/ module DfareportingV2_7 VERSION = 'V2_7' - REVISION = '20170428' + REVISION = '20170818' # Manage DoubleClick Digital Marketing conversions AUTH_DDMCONVERSIONS = 'https://www.googleapis.com/auth/ddmconversions' diff --git a/generated/google/apis/dfareporting_v2_7/classes.rb b/generated/google/apis/dfareporting_v2_7/classes.rb index ab88b0ed5..cefc2a7ad 100644 --- a/generated/google/apis/dfareporting_v2_7/classes.rb +++ b/generated/google/apis/dfareporting_v2_7/classes.rb @@ -2818,7 +2818,7 @@ module Google attr_accessor :fs_command # HTML code for the creative. This is a required field when applicable. This - # field is ignored if htmlCodeLocked is false. Applicable to the following + # field is ignored if htmlCodeLocked is true. Applicable to the following # creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA. # Corresponds to the JSON property `htmlCode` # @return [String] @@ -5097,7 +5097,7 @@ module Google alias_method :verification_tag_opt_out?, :verification_tag_opt_out # Whether this directory site has disabled active view for in-stream video - # creatives. + # creatives. This is a read-only field. # Corresponds to the JSON property `videoActiveViewOptOut` # @return [Boolean] attr_accessor :video_active_view_opt_out @@ -5859,28 +5859,8 @@ module Google attr_accessor :tag_string # 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. - # Acceptable values are: - # - "U1" - # - "U2" - # - "U3" - # - "U4" - # - "U5" - # - "U6" - # - "U7" - # - "U8" - # - "U9" - # - "U10" - # - "U11" - # - "U12" - # - "U13" - # - "U14" - # - "U15" - # - "U16" - # - "U17" - # - "U18" - # - "U19" - # - "U20" + # the "u[1-100]=" in the tags. Each of these can have a user defined type. + # Acceptable values are U1 to U100, inclusive. # Corresponds to the JSON property `userDefinedVariableTypes` # @return [Array] attr_accessor :user_defined_variable_types @@ -8135,6 +8115,8 @@ module Google # VPAID adapter setting for this placement. Controls which VPAID format the # measurement adapter will use for in-stream video creatives assigned to this # placement. + # Note: Flash is no longer supported. This field now defaults to HTML5 when the + # following values are provided: FLASH, BOTH. # Corresponds to the JSON property `vpaidAdapterChoice` # @return [String] attr_accessor :vpaid_adapter_choice @@ -10573,8 +10555,9 @@ module Google # measurement adapter will use for in-stream video creatives assigned to the # placement. The publisher's specifications will typically determine this # setting. For VPAID creatives, the adapter format will match the VPAID format ( - # HTML5 VPAID creatives use the HTML5 adapter, and Flash VPAID creatives use the - # Flash adapter). + # HTML5 VPAID creatives use the HTML5 adapter). + # Note: Flash is no longer supported. This field now defaults to HTML5 when the + # following values are provided: FLASH, BOTH. # Corresponds to the JSON property `vpaidAdapterChoiceTemplate` # @return [String] attr_accessor :vpaid_adapter_choice_template diff --git a/generated/google/apis/dfareporting_v2_7/service.rb b/generated/google/apis/dfareporting_v2_7/service.rb index e6e690123..7e32aaf59 100644 --- a/generated/google/apis/dfareporting_v2_7/service.rb +++ b/generated/google/apis/dfareporting_v2_7/service.rb @@ -6296,6 +6296,7 @@ module Google # Generate tags for these placements. # @param [Array, String] tag_formats # Tag formats to generate for these placements. + # Note: PLACEMENT_TAG_STANDARD can only be generated for 1x1 placements. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user diff --git a/generated/google/apis/dns_v2beta1.rb b/generated/google/apis/dns_v2beta1.rb index afe3d4201..271713e81 100644 --- a/generated/google/apis/dns_v2beta1.rb +++ b/generated/google/apis/dns_v2beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/cloud-dns module DnsV2beta1 VERSION = 'V2beta1' - REVISION = '20170630' + REVISION = '20170419' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/drive_v2.rb b/generated/google/apis/drive_v2.rb index 0d5e4c225..9383f68a1 100644 --- a/generated/google/apis/drive_v2.rb +++ b/generated/google/apis/drive_v2.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/drive/ module DriveV2 VERSION = 'V2' - REVISION = '20170623' + REVISION = '20170616' # View and manage the files in your Google Drive AUTH_DRIVE = 'https://www.googleapis.com/auth/drive' diff --git a/generated/google/apis/fusiontables_v1.rb b/generated/google/apis/fusiontables_v1.rb new file mode 100644 index 000000000..4caf100aa --- /dev/null +++ b/generated/google/apis/fusiontables_v1.rb @@ -0,0 +1,37 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/fusiontables_v1/service.rb' +require 'google/apis/fusiontables_v1/classes.rb' +require 'google/apis/fusiontables_v1/representations.rb' + +module Google + module Apis + # Fusion Tables API + # + # API for working with Fusion Tables data. + # + # @see https://developers.google.com/fusiontables + module FusiontablesV1 + VERSION = 'V1' + REVISION = '20170413' + + # Manage your Fusion Tables + AUTH_FUSIONTABLES = 'https://www.googleapis.com/auth/fusiontables' + + # View your Fusion Tables + AUTH_FUSIONTABLES_READONLY = 'https://www.googleapis.com/auth/fusiontables.readonly' + end + end +end diff --git a/generated/google/apis/fusiontables_v1/classes.rb b/generated/google/apis/fusiontables_v1/classes.rb new file mode 100644 index 000000000..93928ba21 --- /dev/null +++ b/generated/google/apis/fusiontables_v1/classes.rb @@ -0,0 +1,977 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module FusiontablesV1 + + # Specifies the minimum and maximum values, the color, opacity, icon and weight + # of a bucket within a StyleSetting. + class Bucket + include Google::Apis::Core::Hashable + + # Color of line or the interior of a polygon in #RRGGBB format. + # Corresponds to the JSON property `color` + # @return [String] + attr_accessor :color + + # Icon name used for a point. + # Corresponds to the JSON property `icon` + # @return [String] + attr_accessor :icon + + # Maximum value in the selected column for a row to be styled according to the + # bucket color, opacity, icon, or weight. + # Corresponds to the JSON property `max` + # @return [Float] + attr_accessor :max + + # Minimum value in the selected column for a row to be styled according to the + # bucket color, opacity, icon, or weight. + # Corresponds to the JSON property `min` + # @return [Float] + attr_accessor :min + + # Opacity of the color: 0.0 (transparent) to 1.0 (opaque). + # Corresponds to the JSON property `opacity` + # @return [Float] + attr_accessor :opacity + + # Width of a line (in pixels). + # Corresponds to the JSON property `weight` + # @return [Fixnum] + attr_accessor :weight + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @color = args[:color] if args.key?(:color) + @icon = args[:icon] if args.key?(:icon) + @max = args[:max] if args.key?(:max) + @min = args[:min] if args.key?(:min) + @opacity = args[:opacity] if args.key?(:opacity) + @weight = args[:weight] if args.key?(:weight) + end + end + + # Specifies the id, name and type of a column in a table. + class Column + include Google::Apis::Core::Hashable + + # Optional identifier of the base column. If present, this column is derived + # from the specified base column. + # Corresponds to the JSON property `baseColumn` + # @return [Google::Apis::FusiontablesV1::Column::BaseColumn] + attr_accessor :base_column + + # Identifier for the column. + # Corresponds to the JSON property `columnId` + # @return [Fixnum] + attr_accessor :column_id + + # Optional column description. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Optional column predicate. Used to map table to graph data model (subject, + # predicate,object) See http://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/# + # data-model + # Corresponds to the JSON property `graph_predicate` + # @return [String] + attr_accessor :graph_predicate + + # Type name: a template for an individual column. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Required name of the column. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Required type of the column. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @base_column = args[:base_column] if args.key?(:base_column) + @column_id = args[:column_id] if args.key?(:column_id) + @description = args[:description] if args.key?(:description) + @graph_predicate = args[:graph_predicate] if args.key?(:graph_predicate) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @type = args[:type] if args.key?(:type) + end + + # Optional identifier of the base column. If present, this column is derived + # from the specified base column. + class BaseColumn + include Google::Apis::Core::Hashable + + # The id of the column in the base table from which this column is derived. + # Corresponds to the JSON property `columnId` + # @return [Fixnum] + attr_accessor :column_id + + # Offset to the entry in the list of base tables in the table definition. + # Corresponds to the JSON property `tableIndex` + # @return [Fixnum] + attr_accessor :table_index + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @column_id = args[:column_id] if args.key?(:column_id) + @table_index = args[:table_index] if args.key?(:table_index) + end + end + end + + # Represents a list of columns in a table. + class ColumnList + include Google::Apis::Core::Hashable + + # List of all requested columns. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type name: a list of all columns. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Token used to access the next page of this result. No token is displayed if + # there are no more pages left. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Total number of columns for the table. + # Corresponds to the JSON property `totalItems` + # @return [Fixnum] + attr_accessor :total_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @total_items = args[:total_items] if args.key?(:total_items) + end + end + + # Represents a Geometry object. + class Geometry + include Google::Apis::Core::Hashable + + # The list of geometries in this geometry collection. + # Corresponds to the JSON property `geometries` + # @return [Array] + attr_accessor :geometries + + # + # Corresponds to the JSON property `geometry` + # @return [Object] + attr_accessor :geometry + + # Type: A collection of geometries. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @geometries = args[:geometries] if args.key?(:geometries) + @geometry = args[:geometry] if args.key?(:geometry) + @type = args[:type] if args.key?(:type) + end + end + + # Represents an import request. + class Import + include Google::Apis::Core::Hashable + + # Type name: a template for an import request. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The number of rows received from the import request. + # Corresponds to the JSON property `numRowsReceived` + # @return [Fixnum] + attr_accessor :num_rows_received + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @num_rows_received = args[:num_rows_received] if args.key?(:num_rows_received) + end + end + + # Represents a line geometry. + class Line + include Google::Apis::Core::Hashable + + # The coordinates that define the line. + # Corresponds to the JSON property `coordinates` + # @return [Array>] + attr_accessor :coordinates + + # Type: A line geometry. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @coordinates = args[:coordinates] if args.key?(:coordinates) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a LineStyle within a StyleSetting + class LineStyle + include Google::Apis::Core::Hashable + + # Color of the line in #RRGGBB format. + # Corresponds to the JSON property `strokeColor` + # @return [String] + attr_accessor :stroke_color + + # Represents a StyleFunction within a StyleSetting + # Corresponds to the JSON property `strokeColorStyler` + # @return [Google::Apis::FusiontablesV1::StyleFunction] + attr_accessor :stroke_color_styler + + # Opacity of the line : 0.0 (transparent) to 1.0 (opaque). + # Corresponds to the JSON property `strokeOpacity` + # @return [Float] + attr_accessor :stroke_opacity + + # Width of the line in pixels. + # Corresponds to the JSON property `strokeWeight` + # @return [Fixnum] + attr_accessor :stroke_weight + + # Represents a StyleFunction within a StyleSetting + # Corresponds to the JSON property `strokeWeightStyler` + # @return [Google::Apis::FusiontablesV1::StyleFunction] + attr_accessor :stroke_weight_styler + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @stroke_color = args[:stroke_color] if args.key?(:stroke_color) + @stroke_color_styler = args[:stroke_color_styler] if args.key?(:stroke_color_styler) + @stroke_opacity = args[:stroke_opacity] if args.key?(:stroke_opacity) + @stroke_weight = args[:stroke_weight] if args.key?(:stroke_weight) + @stroke_weight_styler = args[:stroke_weight_styler] if args.key?(:stroke_weight_styler) + end + end + + # Represents a point object. + class Point + include Google::Apis::Core::Hashable + + # The coordinates that define the point. + # Corresponds to the JSON property `coordinates` + # @return [Array] + attr_accessor :coordinates + + # Point: A point geometry. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @coordinates = args[:coordinates] if args.key?(:coordinates) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a PointStyle within a StyleSetting + class PointStyle + include Google::Apis::Core::Hashable + + # Name of the icon. Use values defined in http://www.google.com/fusiontables/ + # DataSource?dsrcid=308519 + # Corresponds to the JSON property `iconName` + # @return [String] + attr_accessor :icon_name + + # Represents a StyleFunction within a StyleSetting + # Corresponds to the JSON property `iconStyler` + # @return [Google::Apis::FusiontablesV1::StyleFunction] + attr_accessor :icon_styler + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @icon_name = args[:icon_name] if args.key?(:icon_name) + @icon_styler = args[:icon_styler] if args.key?(:icon_styler) + end + end + + # Represents a polygon object. + class Polygon + include Google::Apis::Core::Hashable + + # The coordinates that define the polygon. + # Corresponds to the JSON property `coordinates` + # @return [Array>>] + attr_accessor :coordinates + + # Type: A polygon geometry. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @coordinates = args[:coordinates] if args.key?(:coordinates) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a PolygonStyle within a StyleSetting + class PolygonStyle + include Google::Apis::Core::Hashable + + # Color of the interior of the polygon in #RRGGBB format. + # Corresponds to the JSON property `fillColor` + # @return [String] + attr_accessor :fill_color + + # Represents a StyleFunction within a StyleSetting + # Corresponds to the JSON property `fillColorStyler` + # @return [Google::Apis::FusiontablesV1::StyleFunction] + attr_accessor :fill_color_styler + + # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque). + # Corresponds to the JSON property `fillOpacity` + # @return [Float] + attr_accessor :fill_opacity + + # Color of the polygon border in #RRGGBB format. + # Corresponds to the JSON property `strokeColor` + # @return [String] + attr_accessor :stroke_color + + # Represents a StyleFunction within a StyleSetting + # Corresponds to the JSON property `strokeColorStyler` + # @return [Google::Apis::FusiontablesV1::StyleFunction] + attr_accessor :stroke_color_styler + + # Opacity of the polygon border: 0.0 (transparent) to 1.0 (opaque). + # Corresponds to the JSON property `strokeOpacity` + # @return [Float] + attr_accessor :stroke_opacity + + # Width of the polyon border in pixels. + # Corresponds to the JSON property `strokeWeight` + # @return [Fixnum] + attr_accessor :stroke_weight + + # Represents a StyleFunction within a StyleSetting + # Corresponds to the JSON property `strokeWeightStyler` + # @return [Google::Apis::FusiontablesV1::StyleFunction] + attr_accessor :stroke_weight_styler + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fill_color = args[:fill_color] if args.key?(:fill_color) + @fill_color_styler = args[:fill_color_styler] if args.key?(:fill_color_styler) + @fill_opacity = args[:fill_opacity] if args.key?(:fill_opacity) + @stroke_color = args[:stroke_color] if args.key?(:stroke_color) + @stroke_color_styler = args[:stroke_color_styler] if args.key?(:stroke_color_styler) + @stroke_opacity = args[:stroke_opacity] if args.key?(:stroke_opacity) + @stroke_weight = args[:stroke_weight] if args.key?(:stroke_weight) + @stroke_weight_styler = args[:stroke_weight_styler] if args.key?(:stroke_weight_styler) + end + end + + # Represents a response to an sql statement. + class Sqlresponse + include Google::Apis::Core::Hashable + + # Columns in the table. + # Corresponds to the JSON property `columns` + # @return [Array] + attr_accessor :columns + + # Type name: a template for an individual table. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The rows in the table. For each cell we print out whatever cell value (e.g., + # numeric, string) exists. Thus it is important that each cell contains only one + # value. + # Corresponds to the JSON property `rows` + # @return [Array>] + attr_accessor :rows + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @columns = args[:columns] if args.key?(:columns) + @kind = args[:kind] if args.key?(:kind) + @rows = args[:rows] if args.key?(:rows) + end + end + + # Represents a StyleFunction within a StyleSetting + class StyleFunction + include Google::Apis::Core::Hashable + + # Bucket function that assigns a style based on the range a column value falls + # into. + # Corresponds to the JSON property `buckets` + # @return [Array] + attr_accessor :buckets + + # Name of the column whose value is used in the style. + # Corresponds to the JSON property `columnName` + # @return [String] + attr_accessor :column_name + + # Gradient function that interpolates a range of colors based on column value. + # Corresponds to the JSON property `gradient` + # @return [Google::Apis::FusiontablesV1::StyleFunction::Gradient] + attr_accessor :gradient + + # Stylers can be one of three kinds: "fusiontables#fromColumn" if the column + # value is to be used as is, i.e., the column values can have colors in # + # RRGGBBAA format or integer line widths or icon names; "fusiontables#gradient" + # if the styling of the row is to be based on applying the gradient function on + # the column value; or "fusiontables#buckets" if the styling is to based on the + # bucket into which the the column value falls. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @buckets = args[:buckets] if args.key?(:buckets) + @column_name = args[:column_name] if args.key?(:column_name) + @gradient = args[:gradient] if args.key?(:gradient) + @kind = args[:kind] if args.key?(:kind) + end + + # Gradient function that interpolates a range of colors based on column value. + class Gradient + include Google::Apis::Core::Hashable + + # Array with two or more colors. + # Corresponds to the JSON property `colors` + # @return [Array] + attr_accessor :colors + + # Higher-end of the interpolation range: rows with this value will be assigned + # to colors[n-1]. + # Corresponds to the JSON property `max` + # @return [Float] + attr_accessor :max + + # Lower-end of the interpolation range: rows with this value will be assigned to + # colors[0]. + # Corresponds to the JSON property `min` + # @return [Float] + attr_accessor :min + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @colors = args[:colors] if args.key?(:colors) + @max = args[:max] if args.key?(:max) + @min = args[:min] if args.key?(:min) + end + + # + class Color + include Google::Apis::Core::Hashable + + # Color in #RRGGBB format. + # Corresponds to the JSON property `color` + # @return [String] + attr_accessor :color + + # Opacity of the color: 0.0 (transparent) to 1.0 (opaque). + # Corresponds to the JSON property `opacity` + # @return [Float] + attr_accessor :opacity + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @color = args[:color] if args.key?(:color) + @opacity = args[:opacity] if args.key?(:opacity) + end + end + end + end + + # Represents a complete StyleSettings object. The primary key is a combination + # of the tableId and a styleId. + class StyleSetting + include Google::Apis::Core::Hashable + + # Type name: an individual style setting. A StyleSetting contains the style + # defintions for points, lines, and polygons in a table. Since a table can have + # any one or all of them, a style definition can have point, line and polygon + # style definitions. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Represents a PointStyle within a StyleSetting + # Corresponds to the JSON property `markerOptions` + # @return [Google::Apis::FusiontablesV1::PointStyle] + attr_accessor :marker_options + + # Optional name for the style setting. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Represents a PolygonStyle within a StyleSetting + # Corresponds to the JSON property `polygonOptions` + # @return [Google::Apis::FusiontablesV1::PolygonStyle] + attr_accessor :polygon_options + + # Represents a LineStyle within a StyleSetting + # Corresponds to the JSON property `polylineOptions` + # @return [Google::Apis::FusiontablesV1::LineStyle] + attr_accessor :polyline_options + + # Identifier for the style setting (unique only within tables). + # Corresponds to the JSON property `styleId` + # @return [Fixnum] + attr_accessor :style_id + + # Identifier for the table. + # Corresponds to the JSON property `tableId` + # @return [String] + attr_accessor :table_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @marker_options = args[:marker_options] if args.key?(:marker_options) + @name = args[:name] if args.key?(:name) + @polygon_options = args[:polygon_options] if args.key?(:polygon_options) + @polyline_options = args[:polyline_options] if args.key?(:polyline_options) + @style_id = args[:style_id] if args.key?(:style_id) + @table_id = args[:table_id] if args.key?(:table_id) + end + end + + # Represents a list of styles for a given table. + class StyleSettingList + include Google::Apis::Core::Hashable + + # All requested style settings. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type name: in this case, a list of style settings. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Token used to access the next page of this result. No token is displayed if + # there are no more pages left. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Total number of styles for the table. + # Corresponds to the JSON property `totalItems` + # @return [Fixnum] + attr_accessor :total_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @total_items = args[:total_items] if args.key?(:total_items) + end + end + + # Represents a table. Specifies the name, whether it is exportable, description, + # attribution, and attribution link. + class Table + include Google::Apis::Core::Hashable + + # Optional attribution assigned to the table. + # Corresponds to the JSON property `attribution` + # @return [String] + attr_accessor :attribution + + # Optional link for attribution. + # Corresponds to the JSON property `attributionLink` + # @return [String] + attr_accessor :attribution_link + + # Optional base table identifier if this table is a view or merged table. + # Corresponds to the JSON property `baseTableIds` + # @return [Array] + attr_accessor :base_table_ids + + # Columns in the table. + # Corresponds to the JSON property `columns` + # @return [Array] + attr_accessor :columns + + # Optional description assigned to the table. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Variable for whether table is exportable. + # Corresponds to the JSON property `isExportable` + # @return [Boolean] + attr_accessor :is_exportable + alias_method :is_exportable?, :is_exportable + + # Type name: a template for an individual table. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name assigned to a table. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Optional sql that encodes the table definition for derived tables. + # Corresponds to the JSON property `sql` + # @return [String] + attr_accessor :sql + + # Encrypted unique alphanumeric identifier for the table. + # Corresponds to the JSON property `tableId` + # @return [String] + attr_accessor :table_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @attribution = args[:attribution] if args.key?(:attribution) + @attribution_link = args[:attribution_link] if args.key?(:attribution_link) + @base_table_ids = args[:base_table_ids] if args.key?(:base_table_ids) + @columns = args[:columns] if args.key?(:columns) + @description = args[:description] if args.key?(:description) + @is_exportable = args[:is_exportable] if args.key?(:is_exportable) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @sql = args[:sql] if args.key?(:sql) + @table_id = args[:table_id] if args.key?(:table_id) + end + end + + # Represents a list of tables. + class TableList + include Google::Apis::Core::Hashable + + # List of all requested tables. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type name: a list of all tables. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Token used to access the next page of this result. No token is displayed if + # there are no more pages left. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Specifies the identifier, name, and type of a task in a table. + class Task + include Google::Apis::Core::Hashable + + # Type of the resource. This is always "fusiontables#task". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An indication of task progress. + # Corresponds to the JSON property `progress` + # @return [String] + attr_accessor :progress + + # false while the table is busy with some other task. true if this background + # task is currently running. + # Corresponds to the JSON property `started` + # @return [Boolean] + attr_accessor :started + alias_method :started?, :started + + # Identifier for the task. + # Corresponds to the JSON property `taskId` + # @return [Fixnum] + attr_accessor :task_id + + # Type of background task. One of DELETE_ROWS Deletes one or more rows from the + # table. ADD_ROWS "Adds one or more rows to a table. Includes importing data + # into a new table and importing more rows into an existing table. ADD_COLUMN + # Adds a new column to the table. CHANGE_TYPE Changes the type of a column. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @progress = args[:progress] if args.key?(:progress) + @started = args[:started] if args.key?(:started) + @task_id = args[:task_id] if args.key?(:task_id) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a list of tasks for a table. + class TaskList + include Google::Apis::Core::Hashable + + # List of all requested tasks. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type of the resource. This is always "fusiontables#taskList". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Token used to access the next page of this result. No token is displayed if + # there are no more pages left. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Total number of tasks for the table. + # Corresponds to the JSON property `totalItems` + # @return [Fixnum] + attr_accessor :total_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @total_items = args[:total_items] if args.key?(:total_items) + end + end + + # Represents the contents of InfoWindow templates. + class Template + include Google::Apis::Core::Hashable + + # List of columns from which the template is to be automatically constructed. + # Only one of body or automaticColumns can be specified. + # Corresponds to the JSON property `automaticColumnNames` + # @return [Array] + attr_accessor :automatic_column_names + + # Body of the template. It contains HTML with `column_name` to insert values + # from a particular column. The body is sanitized to remove certain tags, e.g., + # script. Only one of body or automaticColumns can be specified. + # Corresponds to the JSON property `body` + # @return [String] + attr_accessor :body + + # Type name: a template for the info window contents. The template can either + # include an HTML body or a list of columns from which the template is computed + # automatically. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Optional name assigned to a template. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Identifier for the table for which the template is defined. + # Corresponds to the JSON property `tableId` + # @return [String] + attr_accessor :table_id + + # Identifier for the template, unique within the context of a particular table. + # Corresponds to the JSON property `templateId` + # @return [Fixnum] + attr_accessor :template_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @automatic_column_names = args[:automatic_column_names] if args.key?(:automatic_column_names) + @body = args[:body] if args.key?(:body) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @table_id = args[:table_id] if args.key?(:table_id) + @template_id = args[:template_id] if args.key?(:template_id) + end + end + + # Represents a list of templates for a given table. + class TemplateList + include Google::Apis::Core::Hashable + + # List of all requested templates. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # Type name: a list of all templates. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Token used to access the next page of this result. No token is displayed if + # there are no more pages left. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Total number of templates for the table. + # Corresponds to the JSON property `totalItems` + # @return [Fixnum] + attr_accessor :total_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @total_items = args[:total_items] if args.key?(:total_items) + end + end + end + end +end diff --git a/generated/google/apis/fusiontables_v1/representations.rb b/generated/google/apis/fusiontables_v1/representations.rb new file mode 100644 index 000000000..bbe346a1d --- /dev/null +++ b/generated/google/apis/fusiontables_v1/representations.rb @@ -0,0 +1,449 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module FusiontablesV1 + + class Bucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Column + class Representation < Google::Apis::Core::JsonRepresentation; end + + class BaseColumn + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ColumnList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Geometry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Import + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Line + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LineStyle + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Point + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PointStyle + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Polygon + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PolygonStyle + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Sqlresponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StyleFunction + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Gradient + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Color + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class StyleSetting + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StyleSettingList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Table + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TableList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Task + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TaskList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Template + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TemplateList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Bucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :color, as: 'color' + property :icon, as: 'icon' + property :max, as: 'max' + property :min, as: 'min' + property :opacity, as: 'opacity' + property :weight, as: 'weight' + end + end + + class Column + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :base_column, as: 'baseColumn', class: Google::Apis::FusiontablesV1::Column::BaseColumn, decorator: Google::Apis::FusiontablesV1::Column::BaseColumn::Representation + + property :column_id, as: 'columnId' + property :description, as: 'description' + property :graph_predicate, as: 'graph_predicate' + property :kind, as: 'kind' + property :name, as: 'name' + property :type, as: 'type' + end + + class BaseColumn + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :column_id, as: 'columnId' + property :table_index, as: 'tableIndex' + end + end + end + + class ColumnList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::FusiontablesV1::Column, decorator: Google::Apis::FusiontablesV1::Column::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :total_items, as: 'totalItems' + end + end + + class Geometry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :geometries, as: 'geometries' + property :geometry, as: 'geometry' + property :type, as: 'type' + end + end + + class Import + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :num_rows_received, :numeric_string => true, as: 'numRowsReceived' + end + end + + class Line + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :coordinates, as: 'coordinates', :class => Array do + include Representable::JSON::Collection + items + end + + property :type, as: 'type' + end + end + + class LineStyle + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :stroke_color, as: 'strokeColor' + property :stroke_color_styler, as: 'strokeColorStyler', class: Google::Apis::FusiontablesV1::StyleFunction, decorator: Google::Apis::FusiontablesV1::StyleFunction::Representation + + property :stroke_opacity, as: 'strokeOpacity' + property :stroke_weight, as: 'strokeWeight' + property :stroke_weight_styler, as: 'strokeWeightStyler', class: Google::Apis::FusiontablesV1::StyleFunction, decorator: Google::Apis::FusiontablesV1::StyleFunction::Representation + + end + end + + class Point + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :coordinates, as: 'coordinates' + property :type, as: 'type' + end + end + + class PointStyle + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :icon_name, as: 'iconName' + property :icon_styler, as: 'iconStyler', class: Google::Apis::FusiontablesV1::StyleFunction, decorator: Google::Apis::FusiontablesV1::StyleFunction::Representation + + end + end + + class Polygon + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :coordinates, as: 'coordinates', :class => Array do + include Representable::JSON::Collection + items :class => Array do + include Representable::JSON::Collection + items + end + + end + + property :type, as: 'type' + end + end + + class PolygonStyle + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fill_color, as: 'fillColor' + property :fill_color_styler, as: 'fillColorStyler', class: Google::Apis::FusiontablesV1::StyleFunction, decorator: Google::Apis::FusiontablesV1::StyleFunction::Representation + + property :fill_opacity, as: 'fillOpacity' + property :stroke_color, as: 'strokeColor' + property :stroke_color_styler, as: 'strokeColorStyler', class: Google::Apis::FusiontablesV1::StyleFunction, decorator: Google::Apis::FusiontablesV1::StyleFunction::Representation + + property :stroke_opacity, as: 'strokeOpacity' + property :stroke_weight, as: 'strokeWeight' + property :stroke_weight_styler, as: 'strokeWeightStyler', class: Google::Apis::FusiontablesV1::StyleFunction, decorator: Google::Apis::FusiontablesV1::StyleFunction::Representation + + end + end + + class Sqlresponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :columns, as: 'columns' + property :kind, as: 'kind' + collection :rows, as: 'rows', :class => Array do + include Representable::JSON::Collection + items + end + + end + end + + class StyleFunction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :buckets, as: 'buckets', class: Google::Apis::FusiontablesV1::Bucket, decorator: Google::Apis::FusiontablesV1::Bucket::Representation + + property :column_name, as: 'columnName' + property :gradient, as: 'gradient', class: Google::Apis::FusiontablesV1::StyleFunction::Gradient, decorator: Google::Apis::FusiontablesV1::StyleFunction::Gradient::Representation + + property :kind, as: 'kind' + end + + class Gradient + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :colors, as: 'colors', class: Google::Apis::FusiontablesV1::StyleFunction::Gradient::Color, decorator: Google::Apis::FusiontablesV1::StyleFunction::Gradient::Color::Representation + + property :max, as: 'max' + property :min, as: 'min' + end + + class Color + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :color, as: 'color' + property :opacity, as: 'opacity' + end + end + end + end + + class StyleSetting + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :marker_options, as: 'markerOptions', class: Google::Apis::FusiontablesV1::PointStyle, decorator: Google::Apis::FusiontablesV1::PointStyle::Representation + + property :name, as: 'name' + property :polygon_options, as: 'polygonOptions', class: Google::Apis::FusiontablesV1::PolygonStyle, decorator: Google::Apis::FusiontablesV1::PolygonStyle::Representation + + property :polyline_options, as: 'polylineOptions', class: Google::Apis::FusiontablesV1::LineStyle, decorator: Google::Apis::FusiontablesV1::LineStyle::Representation + + property :style_id, as: 'styleId' + property :table_id, as: 'tableId' + end + end + + class StyleSettingList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::FusiontablesV1::StyleSetting, decorator: Google::Apis::FusiontablesV1::StyleSetting::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :total_items, as: 'totalItems' + end + end + + class Table + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :attribution, as: 'attribution' + property :attribution_link, as: 'attributionLink' + collection :base_table_ids, as: 'baseTableIds' + collection :columns, as: 'columns', class: Google::Apis::FusiontablesV1::Column, decorator: Google::Apis::FusiontablesV1::Column::Representation + + property :description, as: 'description' + property :is_exportable, as: 'isExportable' + property :kind, as: 'kind' + property :name, as: 'name' + property :sql, as: 'sql' + property :table_id, as: 'tableId' + end + end + + class TableList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::FusiontablesV1::Table, decorator: Google::Apis::FusiontablesV1::Table::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class Task + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :progress, as: 'progress' + property :started, as: 'started' + property :task_id, :numeric_string => true, as: 'taskId' + property :type, as: 'type' + end + end + + class TaskList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::FusiontablesV1::Task, decorator: Google::Apis::FusiontablesV1::Task::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :total_items, as: 'totalItems' + end + end + + class Template + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :automatic_column_names, as: 'automaticColumnNames' + property :body, as: 'body' + property :kind, as: 'kind' + property :name, as: 'name' + property :table_id, as: 'tableId' + property :template_id, as: 'templateId' + end + end + + class TemplateList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::FusiontablesV1::Template, decorator: Google::Apis::FusiontablesV1::Template::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :total_items, as: 'totalItems' + end + end + end + end +end diff --git a/generated/google/apis/fusiontables_v1/service.rb b/generated/google/apis/fusiontables_v1/service.rb new file mode 100644 index 000000000..632c4f1ed --- /dev/null +++ b/generated/google/apis/fusiontables_v1/service.rb @@ -0,0 +1,1373 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module FusiontablesV1 + # Fusion Tables API + # + # API for working with Fusion Tables data. + # + # @example + # require 'google/apis/fusiontables_v1' + # + # Fusiontables = Google::Apis::FusiontablesV1 # Alias the module + # service = Fusiontables::FusiontablesService.new + # + # @see https://developers.google.com/fusiontables + class FusiontablesService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'fusiontables/v1/') + @batch_path = 'batch' + end + + # Deletes the column. + # @param [String] table_id + # Table from which the column is being deleted. + # @param [String] column_id + # Name or identifier for the column being deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_column(table_id, column_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'tables/{tableId}/columns/{columnId}', options) + command.params['tableId'] = table_id unless table_id.nil? + command.params['columnId'] = column_id unless column_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a specific column by its id. + # @param [String] table_id + # Table to which the column belongs. + # @param [String] column_id + # Name or identifier for the column that is being requested. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Column] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Column] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_column(table_id, column_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/columns/{columnId}', options) + command.response_representation = Google::Apis::FusiontablesV1::Column::Representation + command.response_class = Google::Apis::FusiontablesV1::Column + command.params['tableId'] = table_id unless table_id.nil? + command.params['columnId'] = column_id unless column_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds a new column to the table. + # @param [String] table_id + # Table for which a new column is being added. + # @param [Google::Apis::FusiontablesV1::Column] column_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Column] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Column] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_column(table_id, column_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'tables/{tableId}/columns', options) + command.request_representation = Google::Apis::FusiontablesV1::Column::Representation + command.request_object = column_object + command.response_representation = Google::Apis::FusiontablesV1::Column::Representation + command.response_class = Google::Apis::FusiontablesV1::Column + command.params['tableId'] = table_id unless table_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of columns. + # @param [String] table_id + # Table whose columns are being listed. + # @param [Fixnum] max_results + # Maximum number of columns to return. Optional. Default is 5. + # @param [String] page_token + # Continuation token specifying which result page to return. Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::ColumnList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::ColumnList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_columns(table_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/columns', options) + command.response_representation = Google::Apis::FusiontablesV1::ColumnList::Representation + command.response_class = Google::Apis::FusiontablesV1::ColumnList + command.params['tableId'] = table_id unless table_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the name or type of an existing column. This method supports patch + # semantics. + # @param [String] table_id + # Table for which the column is being updated. + # @param [String] column_id + # Name or identifier for the column that is being updated. + # @param [Google::Apis::FusiontablesV1::Column] column_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Column] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Column] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_column(table_id, column_id, column_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'tables/{tableId}/columns/{columnId}', options) + command.request_representation = Google::Apis::FusiontablesV1::Column::Representation + command.request_object = column_object + command.response_representation = Google::Apis::FusiontablesV1::Column::Representation + command.response_class = Google::Apis::FusiontablesV1::Column + command.params['tableId'] = table_id unless table_id.nil? + command.params['columnId'] = column_id unless column_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the name or type of an existing column. + # @param [String] table_id + # Table for which the column is being updated. + # @param [String] column_id + # Name or identifier for the column that is being updated. + # @param [Google::Apis::FusiontablesV1::Column] column_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Column] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Column] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_column(table_id, column_id, column_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'tables/{tableId}/columns/{columnId}', options) + command.request_representation = Google::Apis::FusiontablesV1::Column::Representation + command.request_object = column_object + command.response_representation = Google::Apis::FusiontablesV1::Column::Representation + command.response_class = Google::Apis::FusiontablesV1::Column + command.params['tableId'] = table_id unless table_id.nil? + command.params['columnId'] = column_id unless column_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Executes an SQL SELECT/INSERT/UPDATE/DELETE/SHOW/DESCRIBE/CREATE statement. + # @param [String] sql + # An SQL SELECT/SHOW/DESCRIBE/INSERT/UPDATE/DELETE/CREATE statement. + # @param [Boolean] hdrs + # Should column names be included (in the first row)?. Default is true. + # @param [Boolean] typed + # Should typed values be returned in the (JSON) response -- numbers for numeric + # values and parsed geometries for KML values? Default is true. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Sqlresponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Sqlresponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def sql_query(sql, hdrs: nil, typed: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:post, 'query', options) + else + command = make_download_command(:post, 'query', options) + command.download_dest = download_dest + end + command.response_representation = Google::Apis::FusiontablesV1::Sqlresponse::Representation + command.response_class = Google::Apis::FusiontablesV1::Sqlresponse + command.query['hdrs'] = hdrs unless hdrs.nil? + command.query['sql'] = sql unless sql.nil? + command.query['typed'] = typed unless typed.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Executes an SQL SELECT/SHOW/DESCRIBE statement. + # @param [String] sql + # An SQL SELECT/SHOW/DESCRIBE statement. + # @param [Boolean] hdrs + # Should column names be included (in the first row)?. Default is true. + # @param [Boolean] typed + # Should typed values be returned in the (JSON) response -- numbers for numeric + # values and parsed geometries for KML values? Default is true. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Sqlresponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Sqlresponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def sql_query_get(sql, hdrs: nil, typed: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:get, 'query', options) + else + command = make_download_command(:get, 'query', options) + command.download_dest = download_dest + end + command.response_representation = Google::Apis::FusiontablesV1::Sqlresponse::Representation + command.response_class = Google::Apis::FusiontablesV1::Sqlresponse + command.query['hdrs'] = hdrs unless hdrs.nil? + command.query['sql'] = sql unless sql.nil? + command.query['typed'] = typed unless typed.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a style. + # @param [String] table_id + # Table from which the style is being deleted + # @param [Fixnum] style_id + # Identifier (within a table) for the style being deleted + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_style(table_id, style_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'tables/{tableId}/styles/{styleId}', options) + command.params['tableId'] = table_id unless table_id.nil? + command.params['styleId'] = style_id unless style_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets a specific style. + # @param [String] table_id + # Table to which the requested style belongs + # @param [Fixnum] style_id + # Identifier (integer) for a specific style in a table + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::StyleSetting] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::StyleSetting] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_style(table_id, style_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/styles/{styleId}', options) + command.response_representation = Google::Apis::FusiontablesV1::StyleSetting::Representation + command.response_class = Google::Apis::FusiontablesV1::StyleSetting + command.params['tableId'] = table_id unless table_id.nil? + command.params['styleId'] = style_id unless style_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Adds a new style for the table. + # @param [String] table_id + # Table for which a new style is being added + # @param [Google::Apis::FusiontablesV1::StyleSetting] style_setting_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::StyleSetting] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::StyleSetting] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_style(table_id, style_setting_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'tables/{tableId}/styles', options) + command.request_representation = Google::Apis::FusiontablesV1::StyleSetting::Representation + command.request_object = style_setting_object + command.response_representation = Google::Apis::FusiontablesV1::StyleSetting::Representation + command.response_class = Google::Apis::FusiontablesV1::StyleSetting + command.params['tableId'] = table_id unless table_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of styles. + # @param [String] table_id + # Table whose styles are being listed + # @param [Fixnum] max_results + # Maximum number of styles to return. Optional. Default is 5. + # @param [String] page_token + # Continuation token specifying which result page to return. Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::StyleSettingList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::StyleSettingList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_styles(table_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/styles', options) + command.response_representation = Google::Apis::FusiontablesV1::StyleSettingList::Representation + command.response_class = Google::Apis::FusiontablesV1::StyleSettingList + command.params['tableId'] = table_id unless table_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing style. This method supports patch semantics. + # @param [String] table_id + # Table whose style is being updated. + # @param [Fixnum] style_id + # Identifier (within a table) for the style being updated. + # @param [Google::Apis::FusiontablesV1::StyleSetting] style_setting_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::StyleSetting] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::StyleSetting] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_style(table_id, style_id, style_setting_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'tables/{tableId}/styles/{styleId}', options) + command.request_representation = Google::Apis::FusiontablesV1::StyleSetting::Representation + command.request_object = style_setting_object + command.response_representation = Google::Apis::FusiontablesV1::StyleSetting::Representation + command.response_class = Google::Apis::FusiontablesV1::StyleSetting + command.params['tableId'] = table_id unless table_id.nil? + command.params['styleId'] = style_id unless style_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing style. + # @param [String] table_id + # Table whose style is being updated. + # @param [Fixnum] style_id + # Identifier (within a table) for the style being updated. + # @param [Google::Apis::FusiontablesV1::StyleSetting] style_setting_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::StyleSetting] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::StyleSetting] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_style(table_id, style_id, style_setting_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'tables/{tableId}/styles/{styleId}', options) + command.request_representation = Google::Apis::FusiontablesV1::StyleSetting::Representation + command.request_object = style_setting_object + command.response_representation = Google::Apis::FusiontablesV1::StyleSetting::Representation + command.response_class = Google::Apis::FusiontablesV1::StyleSetting + command.params['tableId'] = table_id unless table_id.nil? + command.params['styleId'] = style_id unless style_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Copies a table. + # @param [String] table_id + # ID of the table that is being copied. + # @param [Boolean] copy_presentation + # Whether to also copy tabs, styles, and templates. Default is false. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Table] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Table] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def copy_table(table_id, copy_presentation: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'tables/{tableId}/copy', options) + command.response_representation = Google::Apis::FusiontablesV1::Table::Representation + command.response_class = Google::Apis::FusiontablesV1::Table + command.params['tableId'] = table_id unless table_id.nil? + command.query['copyPresentation'] = copy_presentation unless copy_presentation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a table. + # @param [String] table_id + # ID of the table that is being deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_table(table_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'tables/{tableId}', options) + command.params['tableId'] = table_id unless table_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a specific table by its id. + # @param [String] table_id + # Identifier(ID) for the table being requested. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Table] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Table] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_table(table_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}', options) + command.response_representation = Google::Apis::FusiontablesV1::Table::Representation + command.response_class = Google::Apis::FusiontablesV1::Table + command.params['tableId'] = table_id unless table_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Import more rows into a table. + # @param [String] table_id + # The table into which new rows are being imported. + # @param [String] delimiter + # The delimiter used to separate cell values. This can only consist of a single + # character. Default is ','. + # @param [String] encoding + # The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are + # unsure of the encoding. + # @param [Fixnum] end_line + # The index of the last line from which to start importing, exclusive. Thus, the + # number of imported lines is endLine - startLine. If this parameter is not + # provided, the file will be imported until the last line of the file. If + # endLine is negative, then the imported content will exclude the last endLine + # lines. That is, if endline is negative, no line will be imported whose index + # is greater than N + endLine where N is the number of lines in the file, and + # the number of imported lines will be N + endLine - startLine. + # @param [Boolean] is_strict + # Whether the CSV must have the same number of values for each row. If false, + # rows with fewer values will be padded with empty values. Default is true. + # @param [Fixnum] start_line + # The index of the first line from which to start importing, inclusive. Default + # is 0. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] upload_source + # IO stream or filename containing content to upload + # @param [String] content_type + # Content type of the uploaded content. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Import] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Import] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def import_table_rows(table_id, delimiter: nil, encoding: nil, end_line: nil, is_strict: nil, start_line: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) + if upload_source.nil? + command = make_simple_command(:post, 'tables/{tableId}/import', options) + else + command = make_upload_command(:post, 'tables/{tableId}/import', options) + command.upload_source = upload_source + command.upload_content_type = content_type + end + command.response_representation = Google::Apis::FusiontablesV1::Import::Representation + command.response_class = Google::Apis::FusiontablesV1::Import + command.params['tableId'] = table_id unless table_id.nil? + command.query['delimiter'] = delimiter unless delimiter.nil? + command.query['encoding'] = encoding unless encoding.nil? + command.query['endLine'] = end_line unless end_line.nil? + command.query['isStrict'] = is_strict unless is_strict.nil? + command.query['startLine'] = start_line unless start_line.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Import a new table. + # @param [String] name + # The name to be assigned to the new table. + # @param [String] delimiter + # The delimiter used to separate cell values. This can only consist of a single + # character. Default is ','. + # @param [String] encoding + # The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are + # unsure of the encoding. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] upload_source + # IO stream or filename containing content to upload + # @param [String] content_type + # Content type of the uploaded content. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Table] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Table] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def import_table_table(name, delimiter: nil, encoding: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) + if upload_source.nil? + command = make_simple_command(:post, 'tables/import', options) + else + command = make_upload_command(:post, 'tables/import', options) + command.upload_source = upload_source + command.upload_content_type = content_type + end + command.response_representation = Google::Apis::FusiontablesV1::Table::Representation + command.response_class = Google::Apis::FusiontablesV1::Table + command.query['delimiter'] = delimiter unless delimiter.nil? + command.query['encoding'] = encoding unless encoding.nil? + command.query['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new table. + # @param [Google::Apis::FusiontablesV1::Table] table_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Table] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Table] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_table(table_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'tables', options) + command.request_representation = Google::Apis::FusiontablesV1::Table::Representation + command.request_object = table_object + command.response_representation = Google::Apis::FusiontablesV1::Table::Representation + command.response_class = Google::Apis::FusiontablesV1::Table + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of tables a user owns. + # @param [Fixnum] max_results + # Maximum number of styles to return. Optional. Default is 5. + # @param [String] page_token + # Continuation token specifying which result page to return. Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::TableList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::TableList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_tables(max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables', options) + command.response_representation = Google::Apis::FusiontablesV1::TableList::Representation + command.response_class = Google::Apis::FusiontablesV1::TableList + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing table. Unless explicitly requested, only the name, + # description, and attribution will be updated. This method supports patch + # semantics. + # @param [String] table_id + # ID of the table that is being updated. + # @param [Google::Apis::FusiontablesV1::Table] table_object + # @param [Boolean] replace_view_definition + # Should the view definition also be updated? The specified view definition + # replaces the existing one. Only a view can be updated with a new definition. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Table] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Table] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_table(table_id, table_object = nil, replace_view_definition: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'tables/{tableId}', options) + command.request_representation = Google::Apis::FusiontablesV1::Table::Representation + command.request_object = table_object + command.response_representation = Google::Apis::FusiontablesV1::Table::Representation + command.response_class = Google::Apis::FusiontablesV1::Table + command.params['tableId'] = table_id unless table_id.nil? + command.query['replaceViewDefinition'] = replace_view_definition unless replace_view_definition.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing table. Unless explicitly requested, only the name, + # description, and attribution will be updated. + # @param [String] table_id + # ID of the table that is being updated. + # @param [Google::Apis::FusiontablesV1::Table] table_object + # @param [Boolean] replace_view_definition + # Should the view definition also be updated? The specified view definition + # replaces the existing one. Only a view can be updated with a new definition. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Table] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Table] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_table(table_id, table_object = nil, replace_view_definition: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'tables/{tableId}', options) + command.request_representation = Google::Apis::FusiontablesV1::Table::Representation + command.request_object = table_object + command.response_representation = Google::Apis::FusiontablesV1::Table::Representation + command.response_class = Google::Apis::FusiontablesV1::Table + command.params['tableId'] = table_id unless table_id.nil? + command.query['replaceViewDefinition'] = replace_view_definition unless replace_view_definition.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the task, unless already started. + # @param [String] table_id + # Table from which the task is being deleted. + # @param [String] task_id + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_task(table_id, task_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'tables/{tableId}/tasks/{taskId}', options) + command.params['tableId'] = table_id unless table_id.nil? + command.params['taskId'] = task_id unless task_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a specific task by its id. + # @param [String] table_id + # Table to which the task belongs. + # @param [String] task_id + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Task] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Task] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_task(table_id, task_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/tasks/{taskId}', options) + command.response_representation = Google::Apis::FusiontablesV1::Task::Representation + command.response_class = Google::Apis::FusiontablesV1::Task + command.params['tableId'] = table_id unless table_id.nil? + command.params['taskId'] = task_id unless task_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of tasks. + # @param [String] table_id + # Table whose tasks are being listed. + # @param [Fixnum] max_results + # Maximum number of columns to return. Optional. Default is 5. + # @param [String] page_token + # @param [Fixnum] start_index + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::TaskList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::TaskList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_tasks(table_id, max_results: nil, page_token: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/tasks', options) + command.response_representation = Google::Apis::FusiontablesV1::TaskList::Representation + command.response_class = Google::Apis::FusiontablesV1::TaskList + command.params['tableId'] = table_id unless table_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['startIndex'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a template + # @param [String] table_id + # Table from which the template is being deleted + # @param [Fixnum] template_id + # Identifier for the template which is being deleted + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_template(table_id, template_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'tables/{tableId}/templates/{templateId}', options) + command.params['tableId'] = table_id unless table_id.nil? + command.params['templateId'] = template_id unless template_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a specific template by its id + # @param [String] table_id + # Table to which the template belongs + # @param [Fixnum] template_id + # Identifier for the template that is being requested + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Template] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Template] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_template(table_id, template_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/templates/{templateId}', options) + command.response_representation = Google::Apis::FusiontablesV1::Template::Representation + command.response_class = Google::Apis::FusiontablesV1::Template + command.params['tableId'] = table_id unless table_id.nil? + command.params['templateId'] = template_id unless template_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new template for the table. + # @param [String] table_id + # Table for which a new template is being created + # @param [Google::Apis::FusiontablesV1::Template] template_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Template] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Template] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_template(table_id, template_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'tables/{tableId}/templates', options) + command.request_representation = Google::Apis::FusiontablesV1::Template::Representation + command.request_object = template_object + command.response_representation = Google::Apis::FusiontablesV1::Template::Representation + command.response_class = Google::Apis::FusiontablesV1::Template + command.params['tableId'] = table_id unless table_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of templates. + # @param [String] table_id + # Identifier for the table whose templates are being requested + # @param [Fixnum] max_results + # Maximum number of templates to return. Optional. Default is 5. + # @param [String] page_token + # Continuation token specifying which results page to return. Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::TemplateList] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::TemplateList] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_templates(table_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'tables/{tableId}/templates', options) + command.response_representation = Google::Apis::FusiontablesV1::TemplateList::Representation + command.response_class = Google::Apis::FusiontablesV1::TemplateList + command.params['tableId'] = table_id unless table_id.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing template. This method supports patch semantics. + # @param [String] table_id + # Table to which the updated template belongs + # @param [Fixnum] template_id + # Identifier for the template that is being updated + # @param [Google::Apis::FusiontablesV1::Template] template_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Template] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Template] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_template(table_id, template_id, template_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'tables/{tableId}/templates/{templateId}', options) + command.request_representation = Google::Apis::FusiontablesV1::Template::Representation + command.request_object = template_object + command.response_representation = Google::Apis::FusiontablesV1::Template::Representation + command.response_class = Google::Apis::FusiontablesV1::Template + command.params['tableId'] = table_id unless table_id.nil? + command.params['templateId'] = template_id unless template_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing template + # @param [String] table_id + # Table to which the updated template belongs + # @param [Fixnum] template_id + # Identifier for the template that is being updated + # @param [Google::Apis::FusiontablesV1::Template] template_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FusiontablesV1::Template] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FusiontablesV1::Template] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_template(table_id, template_id, template_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'tables/{tableId}/templates/{templateId}', options) + command.request_representation = Google::Apis::FusiontablesV1::Template::Representation + command.request_object = template_object + command.response_representation = Google::Apis::FusiontablesV1::Template::Representation + command.response_class = Google::Apis::FusiontablesV1::Template + command.params['tableId'] = table_id unless table_id.nil? + command.params['templateId'] = template_id unless template_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/genomics_v1alpha2.rb b/generated/google/apis/genomics_v1alpha2.rb new file mode 100644 index 000000000..9086d6ef0 --- /dev/null +++ b/generated/google/apis/genomics_v1alpha2.rb @@ -0,0 +1,40 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/genomics_v1alpha2/service.rb' +require 'google/apis/genomics_v1alpha2/classes.rb' +require 'google/apis/genomics_v1alpha2/representations.rb' + +module Google + module Apis + # Genomics API + # + # Upload, process, query, and search Genomics data in the cloud. + # + # @see https://cloud.google.com/genomics + module GenomicsV1alpha2 + VERSION = 'V1alpha2' + REVISION = '20170824' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View and manage your Google Compute Engine resources + AUTH_COMPUTE = 'https://www.googleapis.com/auth/compute' + + # View and manage Genomics data + AUTH_GENOMICS = 'https://www.googleapis.com/auth/genomics' + end + end +end diff --git a/generated/google/apis/genomics_v1alpha2/classes.rb b/generated/google/apis/genomics_v1alpha2/classes.rb new file mode 100644 index 000000000..88c428b81 --- /dev/null +++ b/generated/google/apis/genomics_v1alpha2/classes.rb @@ -0,0 +1,1207 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module GenomicsV1alpha2 + + # The request message for Operations.CancelOperation. + class CancelOperationRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Describes a Compute Engine resource that is being managed by a running + # pipeline. + class ComputeEngine + include Google::Apis::Core::Hashable + + # The names of the disks that were created for this pipeline. + # Corresponds to the JSON property `diskNames` + # @return [Array] + attr_accessor :disk_names + + # The instance on which the operation is running. + # Corresponds to the JSON property `instanceName` + # @return [String] + attr_accessor :instance_name + + # The machine type of the instance. + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + # The availability zone in which the instance resides. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disk_names = args[:disk_names] if args.key?(:disk_names) + @instance_name = args[:instance_name] if args.key?(:instance_name) + @machine_type = args[:machine_type] if args.key?(:machine_type) + @zone = args[:zone] if args.key?(:zone) + end + end + + # Stores the information that the controller will fetch from the + # server in order to run. Should only be used by VMs created by the + # Pipelines Service and not by end users. + class ControllerConfig + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `cmd` + # @return [String] + attr_accessor :cmd + + # + # Corresponds to the JSON property `disks` + # @return [Hash] + attr_accessor :disks + + # + # Corresponds to the JSON property `gcsLogPath` + # @return [String] + attr_accessor :gcs_log_path + + # + # Corresponds to the JSON property `gcsSinks` + # @return [Hash] + attr_accessor :gcs_sinks + + # + # Corresponds to the JSON property `gcsSources` + # @return [Hash] + attr_accessor :gcs_sources + + # + # Corresponds to the JSON property `image` + # @return [String] + attr_accessor :image + + # + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + # + # Corresponds to the JSON property `vars` + # @return [Hash] + attr_accessor :vars + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cmd = args[:cmd] if args.key?(:cmd) + @disks = args[:disks] if args.key?(:disks) + @gcs_log_path = args[:gcs_log_path] if args.key?(:gcs_log_path) + @gcs_sinks = args[:gcs_sinks] if args.key?(:gcs_sinks) + @gcs_sources = args[:gcs_sources] if args.key?(:gcs_sources) + @image = args[:image] if args.key?(:image) + @machine_type = args[:machine_type] if args.key?(:machine_type) + @vars = args[:vars] if args.key?(:vars) + end + end + + # A Google Compute Engine disk resource specification. + class Disk + include Google::Apis::Core::Hashable + + # Deprecated. Disks created by the Pipelines API will be deleted at the end + # of the pipeline run, regardless of what this field is set to. + # Corresponds to the JSON property `autoDelete` + # @return [Boolean] + attr_accessor :auto_delete + alias_method :auto_delete?, :auto_delete + + # Required at create time and cannot be overridden at run time. + # Specifies the path in the docker container where files on + # this disk should be located. For example, if `mountPoint` + # is `/mnt/disk`, and the parameter has `localPath` + # `inputs/file.txt`, the docker container can access the data at + # `/mnt/disk/inputs/file.txt`. + # Corresponds to the JSON property `mountPoint` + # @return [String] + attr_accessor :mount_point + + # Required. The name of the disk that can be used in the pipeline + # parameters. Must be 1 - 63 characters. + # The name "boot" is reserved for system use. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Specifies how a sourced-base persistent disk will be mounted. See + # https://cloud.google.com/compute/docs/disks/persistent-disks# + # use_multi_instances + # for more details. + # Can only be set at create time. + # Corresponds to the JSON property `readOnly` + # @return [Boolean] + attr_accessor :read_only + alias_method :read_only?, :read_only + + # The size of the disk. Defaults to 500 (GB). + # This field is not applicable for local SSD. + # Corresponds to the JSON property `sizeGb` + # @return [Fixnum] + attr_accessor :size_gb + + # The full or partial URL of the persistent disk to attach. See + # https://cloud.google.com/compute/docs/reference/latest/instances#resource + # and + # https://cloud.google.com/compute/docs/disks/persistent-disks#snapshots + # for more details. + # Corresponds to the JSON property `source` + # @return [String] + attr_accessor :source + + # Required. The type of the disk to create. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_delete = args[:auto_delete] if args.key?(:auto_delete) + @mount_point = args[:mount_point] if args.key?(:mount_point) + @name = args[:name] if args.key?(:name) + @read_only = args[:read_only] if args.key?(:read_only) + @size_gb = args[:size_gb] if args.key?(:size_gb) + @source = args[:source] if args.key?(:source) + @type = args[:type] if args.key?(:type) + end + end + + # The Docker execuctor specification. + class DockerExecutor + include Google::Apis::Core::Hashable + + # Required. The command or newline delimited script to run. The command + # string will be executed within a bash shell. + # If the command exits with a non-zero exit code, output parameter + # de-localization will be skipped and the pipeline operation's + # `error` field will be populated. + # Maximum command string length is 16384. + # Corresponds to the JSON property `cmd` + # @return [String] + attr_accessor :cmd + + # Required. Image name from either Docker Hub or Google Container Registry. + # Users that run pipelines must have READ access to the image. + # Corresponds to the JSON property `imageName` + # @return [String] + attr_accessor :image_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cmd = args[:cmd] if args.key?(:cmd) + @image_name = args[:image_name] if args.key?(:image_name) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The read group set import response. + class ImportReadGroupSetsResponse + include Google::Apis::Core::Hashable + + # IDs of the read group sets that were created. + # Corresponds to the JSON property `readGroupSetIds` + # @return [Array] + attr_accessor :read_group_set_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @read_group_set_ids = args[:read_group_set_ids] if args.key?(:read_group_set_ids) + end + end + + # The variant data import response. + class ImportVariantsResponse + include Google::Apis::Core::Hashable + + # IDs of the call sets created during the import. + # Corresponds to the JSON property `callSetIds` + # @return [Array] + attr_accessor :call_set_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @call_set_ids = args[:call_set_ids] if args.key?(:call_set_ids) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # The response of ListPipelines. Contains at most `pageSize` + # pipelines. If it contains `pageSize` pipelines, and more pipelines + # exist, then `nextPageToken` will be populated and should be + # used as the `pageToken` argument to a subsequent ListPipelines + # request. + class ListPipelinesResponse + include Google::Apis::Core::Hashable + + # The token to use to get the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The matched pipelines. + # Corresponds to the JSON property `pipelines` + # @return [Array] + attr_accessor :pipelines + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @pipelines = args[:pipelines] if args.key?(:pipelines) + end + end + + # LocalCopy defines how a remote file should be copied to and from the VM. + class LocalCopy + include Google::Apis::Core::Hashable + + # Required. The name of the disk where this parameter is + # located. Can be the name of one of the disks specified in the + # Resources field, or "boot", which represents the Docker + # instance's boot disk and has a mount point of `/`. + # Corresponds to the JSON property `disk` + # @return [String] + attr_accessor :disk + + # Required. The path within the user's docker container where + # this input should be localized to and from, relative to the specified + # disk's mount point. For example: file.txt, + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disk = args[:disk] if args.key?(:disk) + @path = args[:path] if args.key?(:path) + end + end + + # The logging options for the pipeline run. + class LoggingOptions + include Google::Apis::Core::Hashable + + # The location in Google Cloud Storage to which the pipeline logs + # will be copied. Can be specified as a fully qualified directory + # path, in which case logs will be output with a unique identifier + # as the filename in that directory, or as a fully specified path, + # which must end in `.log`, in which case that path will be + # used, and the user must ensure that logs are not + # overwritten. Stdout and stderr logs from the run are also + # generated and output as `-stdout.log` and `-stderr.log`. + # Corresponds to the JSON property `gcsPath` + # @return [String] + attr_accessor :gcs_path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gcs_path = args[:gcs_path] if args.key?(:gcs_path) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::GenomicsV1alpha2::Status] + attr_accessor :error + + # An OperationMetadata object. This will always be returned with the Operation. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The server-assigned name, which is only unique within the same service that + # originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL- + # qzoWAgEw` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If + # importing Variants, an ImportVariantsResponse is returned. For pipelines and + # exports, an empty response is returned. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # An event that occurred during an Operation. + class OperationEvent + include Google::Apis::Core::Hashable + + # Required description of event. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Optional time of when event started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @end_time = args[:end_time] if args.key?(:end_time) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + + # Metadata describing an Operation. + class OperationMetadata + include Google::Apis::Core::Hashable + + # This field is deprecated. Use `labels` instead. Optionally provided by the + # caller when submitting the request that creates the operation. + # Corresponds to the JSON property `clientId` + # @return [String] + attr_accessor :client_id + + # The time at which the job was submitted to the Genomics service. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The time at which the job stopped running. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Optional event messages that were generated during the job's execution. + # This also contains any warnings that were generated during import + # or export. + # Corresponds to the JSON property `events` + # @return [Array] + attr_accessor :events + + # Optionally provided by the caller when submitting the request that creates + # the operation. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The Google Cloud Project in which the job is scoped. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # 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. + # Corresponds to the JSON property `request` + # @return [Hash] + attr_accessor :request + + # Runtime metadata on this Operation. + # Corresponds to the JSON property `runtimeMetadata` + # @return [Hash] + attr_accessor :runtime_metadata + + # The time at which the job began to run. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_id = args[:client_id] if args.key?(:client_id) + @create_time = args[:create_time] if args.key?(:create_time) + @end_time = args[:end_time] if args.key?(:end_time) + @events = args[:events] if args.key?(:events) + @labels = args[:labels] if args.key?(:labels) + @project_id = args[:project_id] if args.key?(:project_id) + @request = args[:request] if args.key?(:request) + @runtime_metadata = args[:runtime_metadata] if args.key?(:runtime_metadata) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + + # The pipeline object. Represents a transformation from a set of input + # parameters to a set of output parameters. The transformation is defined + # as a docker image and command to run within that image. Each pipeline + # is run on a Google Compute Engine VM. A pipeline can be created with the + # `create` method and then later run with the `run` method, or a pipeline can + # be defined and run all at once with the `run` method. + class Pipeline + include Google::Apis::Core::Hashable + + # User-specified description. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The Docker execuctor specification. + # Corresponds to the JSON property `docker` + # @return [Google::Apis::GenomicsV1alpha2::DockerExecutor] + attr_accessor :docker + + # Input parameters of the pipeline. + # Corresponds to the JSON property `inputParameters` + # @return [Array] + attr_accessor :input_parameters + + # Required. A user specified pipeline name that does not have to be unique. + # This name can be used for filtering Pipelines in ListPipelines. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Output parameters of the pipeline. + # Corresponds to the JSON property `outputParameters` + # @return [Array] + attr_accessor :output_parameters + + # Unique pipeline id that is generated by the service when CreatePipeline + # is called. Cannot be specified in the Pipeline used in the + # CreatePipelineRequest, and will be populated in the response to + # CreatePipeline and all subsequent Get and List calls. Indicates that the + # service has registered this pipeline. + # Corresponds to the JSON property `pipelineId` + # @return [String] + attr_accessor :pipeline_id + + # Required. The project in which to create the pipeline. The caller must have + # WRITE access. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The system resources for the pipeline run. + # Corresponds to the JSON property `resources` + # @return [Google::Apis::GenomicsV1alpha2::PipelineResources] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @docker = args[:docker] if args.key?(:docker) + @input_parameters = args[:input_parameters] if args.key?(:input_parameters) + @name = args[:name] if args.key?(:name) + @output_parameters = args[:output_parameters] if args.key?(:output_parameters) + @pipeline_id = args[:pipeline_id] if args.key?(:pipeline_id) + @project_id = args[:project_id] if args.key?(:project_id) + @resources = args[:resources] if args.key?(:resources) + end + end + + # 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
filedirectory - directory must already exist
globdirectory - 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. + class PipelineParameter + include Google::Apis::Core::Hashable + + # The default value for this parameter. Can be overridden at runtime. + # If `localCopy` is present, then this must be a Google Cloud Storage path + # beginning with `gs://`. + # Corresponds to the JSON property `defaultValue` + # @return [String] + attr_accessor :default_value + + # Human-readable description. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # LocalCopy defines how a remote file should be copied to and from the VM. + # Corresponds to the JSON property `localCopy` + # @return [Google::Apis::GenomicsV1alpha2::LocalCopy] + attr_accessor :local_copy + + # Required. Name of the parameter - the pipeline runner uses this string + # as the key to the input and output maps in RunPipeline. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @default_value = args[:default_value] if args.key?(:default_value) + @description = args[:description] if args.key?(:description) + @local_copy = args[:local_copy] if args.key?(:local_copy) + @name = args[:name] if args.key?(:name) + end + end + + # The system resources for the pipeline run. + class PipelineResources + include Google::Apis::Core::Hashable + + # The size of the boot disk. Defaults to 10 (GB). + # Corresponds to the JSON property `bootDiskSizeGb` + # @return [Fixnum] + attr_accessor :boot_disk_size_gb + + # Disks to attach. + # Corresponds to the JSON property `disks` + # @return [Array] + attr_accessor :disks + + # The minimum number of cores to use. Defaults to 1. + # Corresponds to the JSON property `minimumCpuCores` + # @return [Fixnum] + attr_accessor :minimum_cpu_cores + + # The minimum amount of RAM to use. Defaults to 3.75 (GB) + # Corresponds to the JSON property `minimumRamGb` + # @return [Float] + attr_accessor :minimum_ram_gb + + # Whether to assign an external IP to the instance. This is an experimental + # feature that may go away. 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. If you need to ssh into + # a private IP VM for debugging, you can ssh to a public VM and then ssh into + # the private VM's Internal IP. If noAddress is set, this pipeline run may + # only load docker images from Google Container Registry and not Docker Hub. + # Before using this, you must + # [configure access to Google services from internal IPs](https://cloud.google. + # com/compute/docs/configure-private-google-access# + # configuring_access_to_google_services_from_internal_ips). + # Corresponds to the JSON property `noAddress` + # @return [Boolean] + attr_accessor :no_address + alias_method :no_address?, :no_address + + # 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. + # Corresponds to the JSON property `preemptible` + # @return [Boolean] + attr_accessor :preemptible + alias_method :preemptible?, :preemptible + + # List of Google Compute Engine availability zones to which resource + # creation will restricted. If empty, any zone may be chosen. + # Corresponds to the JSON property `zones` + # @return [Array] + attr_accessor :zones + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb) + @disks = args[:disks] if args.key?(:disks) + @minimum_cpu_cores = args[:minimum_cpu_cores] if args.key?(:minimum_cpu_cores) + @minimum_ram_gb = args[:minimum_ram_gb] if args.key?(:minimum_ram_gb) + @no_address = args[:no_address] if args.key?(:no_address) + @preemptible = args[:preemptible] if args.key?(:preemptible) + @zones = args[:zones] if args.key?(:zones) + end + end + + # + class RepeatedString + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @values = args[:values] if args.key?(:values) + end + end + + # The pipeline run arguments. + class RunPipelineArgs + include Google::Apis::Core::Hashable + + # This field is deprecated. Use `labels` instead. Client-specified pipeline + # operation identifier. + # Corresponds to the JSON property `clientId` + # @return [String] + attr_accessor :client_id + + # Pipeline input arguments; keys are defined in the pipeline documentation. + # All input parameters that do not have default values must be specified. + # If parameters with defaults are specified here, the defaults will be + # overridden. + # Corresponds to the JSON property `inputs` + # @return [Hash] + attr_accessor :inputs + + # 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. + # Corresponds to the JSON property `keepVmAliveOnFailureDuration` + # @return [String] + attr_accessor :keep_vm_alive_on_failure_duration + + # Labels to apply to this pipeline run. Labels will also be applied to + # compute resources (VM, disks) created by this pipeline run. When listing + # operations, operations can filtered by labels. + # Label keys may not be empty; label values may be empty. Non-empty labels + # must be 1-63 characters long, and comply with [RFC1035] + # (https://www.ietf.org/rfc/rfc1035.txt). + # Specifically, the name must be 1-63 characters long and match the regular + # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first + # character must be a lowercase letter, and all following characters must be + # a dash, lowercase letter, or digit, except the last character, which cannot + # be a dash. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The logging options for the pipeline run. + # Corresponds to the JSON property `logging` + # @return [Google::Apis::GenomicsV1alpha2::LoggingOptions] + attr_accessor :logging + + # Pipeline output arguments; keys are defined in the pipeline + # documentation. All output parameters of without default values + # must be specified. If parameters with defaults are specified + # here, the defaults will be overridden. + # Corresponds to the JSON property `outputs` + # @return [Hash] + attr_accessor :outputs + + # Required. The project in which to run the pipeline. The caller must have + # WRITER access to all Google Cloud services and resources (e.g. Google + # Compute Engine) will be used. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The system resources for the pipeline run. + # Corresponds to the JSON property `resources` + # @return [Google::Apis::GenomicsV1alpha2::PipelineResources] + attr_accessor :resources + + # A Google Cloud Service Account. + # Corresponds to the JSON property `serviceAccount` + # @return [Google::Apis::GenomicsV1alpha2::ServiceAccount] + attr_accessor :service_account + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_id = args[:client_id] if args.key?(:client_id) + @inputs = args[:inputs] if args.key?(:inputs) + @keep_vm_alive_on_failure_duration = args[:keep_vm_alive_on_failure_duration] if args.key?(:keep_vm_alive_on_failure_duration) + @labels = args[:labels] if args.key?(:labels) + @logging = args[:logging] if args.key?(:logging) + @outputs = args[:outputs] if args.key?(:outputs) + @project_id = args[:project_id] if args.key?(:project_id) + @resources = args[:resources] if args.key?(:resources) + @service_account = args[:service_account] if args.key?(:service_account) + end + end + + # The request to run a pipeline. If `pipelineId` is specified, it + # refers to a saved pipeline created with CreatePipeline and set as + # the `pipelineId` of the returned Pipeline object. If + # `ephemeralPipeline` is specified, that pipeline is run once + # with the given args and not saved. It is an error to specify both + # `pipelineId` and `ephemeralPipeline`. `pipelineArgs` + # must be specified. + class RunPipelineRequest + include Google::Apis::Core::Hashable + + # The pipeline object. Represents a transformation from a set of input + # parameters to a set of output parameters. The transformation is defined + # as a docker image and command to run within that image. Each pipeline + # is run on a Google Compute Engine VM. A pipeline can be created with the + # `create` method and then later run with the `run` method, or a pipeline can + # be defined and run all at once with the `run` method. + # Corresponds to the JSON property `ephemeralPipeline` + # @return [Google::Apis::GenomicsV1alpha2::Pipeline] + attr_accessor :ephemeral_pipeline + + # The pipeline run arguments. + # Corresponds to the JSON property `pipelineArgs` + # @return [Google::Apis::GenomicsV1alpha2::RunPipelineArgs] + attr_accessor :pipeline_args + + # The already created pipeline to run. + # Corresponds to the JSON property `pipelineId` + # @return [String] + attr_accessor :pipeline_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ephemeral_pipeline = args[:ephemeral_pipeline] if args.key?(:ephemeral_pipeline) + @pipeline_args = args[:pipeline_args] if args.key?(:pipeline_args) + @pipeline_id = args[:pipeline_id] if args.key?(:pipeline_id) + end + end + + # Runtime metadata that will be populated in the + # runtimeMetadata + # field of the Operation associated with a RunPipeline execution. + class RuntimeMetadata + include Google::Apis::Core::Hashable + + # Describes a Compute Engine resource that is being managed by a running + # pipeline. + # Corresponds to the JSON property `computeEngine` + # @return [Google::Apis::GenomicsV1alpha2::ComputeEngine] + attr_accessor :compute_engine + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @compute_engine = args[:compute_engine] if args.key?(:compute_engine) + end + end + + # A Google Cloud Service Account. + class ServiceAccount + include Google::Apis::Core::Hashable + + # Email address of the service account. Defaults to `default`, + # which uses the compute service account associated with the project. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # List of scopes to be enabled for this service account on the VM. + # The following scopes are automatically included: + # * https://www.googleapis.com/auth/compute + # * https://www.googleapis.com/auth/devstorage.full_control + # * https://www.googleapis.com/auth/genomics + # * https://www.googleapis.com/auth/logging.write + # * https://www.googleapis.com/auth/monitoring.write + # Corresponds to the JSON property `scopes` + # @return [Array] + attr_accessor :scopes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + @scopes = args[:scopes] if args.key?(:scopes) + end + end + + # Request to set operation status. Should only be used by VMs + # created by the Pipelines Service and not by end users. + class SetOperationStatusRequest + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `errorCode` + # @return [String] + attr_accessor :error_code + + # + # Corresponds to the JSON property `errorMessage` + # @return [String] + attr_accessor :error_message + + # + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + # + # Corresponds to the JSON property `timestampEvents` + # @return [Array] + attr_accessor :timestamp_events + + # + # Corresponds to the JSON property `validationToken` + # @return [Fixnum] + attr_accessor :validation_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_code = args[:error_code] if args.key?(:error_code) + @error_message = args[:error_message] if args.key?(:error_message) + @operation_id = args[:operation_id] if args.key?(:operation_id) + @timestamp_events = args[:timestamp_events] if args.key?(:timestamp_events) + @validation_token = args[:validation_token] if args.key?(:validation_token) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Stores the list of events and times they occured for major events in job + # execution. + class TimestampEvent + include Google::Apis::Core::Hashable + + # String indicating the type of event + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The time this event occured. + # Corresponds to the JSON property `timestamp` + # @return [String] + attr_accessor :timestamp + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @timestamp = args[:timestamp] if args.key?(:timestamp) + end + end + end + end +end diff --git a/generated/google/apis/genomics_v1alpha2/representations.rb b/generated/google/apis/genomics_v1alpha2/representations.rb new file mode 100644 index 000000000..fa792a12b --- /dev/null +++ b/generated/google/apis/genomics_v1alpha2/representations.rb @@ -0,0 +1,449 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module GenomicsV1alpha2 + + class CancelOperationRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ComputeEngine + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ControllerConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Disk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DockerExecutor + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ImportReadGroupSetsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ImportVariantsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListPipelinesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LocalCopy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LoggingOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationEvent + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Pipeline + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PipelineParameter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PipelineResources + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RepeatedString + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RunPipelineArgs + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RunPipelineRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RuntimeMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ServiceAccount + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetOperationStatusRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TimestampEvent + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CancelOperationRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ComputeEngine + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :disk_names, as: 'diskNames' + property :instance_name, as: 'instanceName' + property :machine_type, as: 'machineType' + property :zone, as: 'zone' + end + end + + class ControllerConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cmd, as: 'cmd' + hash :disks, as: 'disks' + property :gcs_log_path, as: 'gcsLogPath' + hash :gcs_sinks, as: 'gcsSinks', class: Google::Apis::GenomicsV1alpha2::RepeatedString, decorator: Google::Apis::GenomicsV1alpha2::RepeatedString::Representation + + hash :gcs_sources, as: 'gcsSources', class: Google::Apis::GenomicsV1alpha2::RepeatedString, decorator: Google::Apis::GenomicsV1alpha2::RepeatedString::Representation + + property :image, as: 'image' + property :machine_type, as: 'machineType' + hash :vars, as: 'vars' + end + end + + class Disk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_delete, as: 'autoDelete' + property :mount_point, as: 'mountPoint' + property :name, as: 'name' + property :read_only, as: 'readOnly' + property :size_gb, as: 'sizeGb' + property :source, as: 'source' + property :type, as: 'type' + end + end + + class DockerExecutor + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cmd, as: 'cmd' + property :image_name, as: 'imageName' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ImportReadGroupSetsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :read_group_set_ids, as: 'readGroupSetIds' + end + end + + class ImportVariantsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :call_set_ids, as: 'callSetIds' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::GenomicsV1alpha2::Operation, decorator: Google::Apis::GenomicsV1alpha2::Operation::Representation + + end + end + + class ListPipelinesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :pipelines, as: 'pipelines', class: Google::Apis::GenomicsV1alpha2::Pipeline, decorator: Google::Apis::GenomicsV1alpha2::Pipeline::Representation + + end + end + + class LocalCopy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disk, as: 'disk' + property :path, as: 'path' + end + end + + class LoggingOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gcs_path, as: 'gcsPath' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::GenomicsV1alpha2::Status, decorator: Google::Apis::GenomicsV1alpha2::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class OperationEvent + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :end_time, as: 'endTime' + property :start_time, as: 'startTime' + end + end + + class OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_id, as: 'clientId' + property :create_time, as: 'createTime' + property :end_time, as: 'endTime' + collection :events, as: 'events', class: Google::Apis::GenomicsV1alpha2::OperationEvent, decorator: Google::Apis::GenomicsV1alpha2::OperationEvent::Representation + + hash :labels, as: 'labels' + property :project_id, as: 'projectId' + hash :request, as: 'request' + hash :runtime_metadata, as: 'runtimeMetadata' + property :start_time, as: 'startTime' + end + end + + class Pipeline + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :docker, as: 'docker', class: Google::Apis::GenomicsV1alpha2::DockerExecutor, decorator: Google::Apis::GenomicsV1alpha2::DockerExecutor::Representation + + collection :input_parameters, as: 'inputParameters', class: Google::Apis::GenomicsV1alpha2::PipelineParameter, decorator: Google::Apis::GenomicsV1alpha2::PipelineParameter::Representation + + property :name, as: 'name' + collection :output_parameters, as: 'outputParameters', class: Google::Apis::GenomicsV1alpha2::PipelineParameter, decorator: Google::Apis::GenomicsV1alpha2::PipelineParameter::Representation + + property :pipeline_id, as: 'pipelineId' + property :project_id, as: 'projectId' + property :resources, as: 'resources', class: Google::Apis::GenomicsV1alpha2::PipelineResources, decorator: Google::Apis::GenomicsV1alpha2::PipelineResources::Representation + + end + end + + class PipelineParameter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :default_value, as: 'defaultValue' + property :description, as: 'description' + property :local_copy, as: 'localCopy', class: Google::Apis::GenomicsV1alpha2::LocalCopy, decorator: Google::Apis::GenomicsV1alpha2::LocalCopy::Representation + + property :name, as: 'name' + end + end + + class PipelineResources + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :boot_disk_size_gb, as: 'bootDiskSizeGb' + collection :disks, as: 'disks', class: Google::Apis::GenomicsV1alpha2::Disk, decorator: Google::Apis::GenomicsV1alpha2::Disk::Representation + + property :minimum_cpu_cores, as: 'minimumCpuCores' + property :minimum_ram_gb, as: 'minimumRamGb' + property :no_address, as: 'noAddress' + property :preemptible, as: 'preemptible' + collection :zones, as: 'zones' + end + end + + class RepeatedString + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :values, as: 'values' + end + end + + class RunPipelineArgs + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_id, as: 'clientId' + hash :inputs, as: 'inputs' + property :keep_vm_alive_on_failure_duration, as: 'keepVmAliveOnFailureDuration' + hash :labels, as: 'labels' + property :logging, as: 'logging', class: Google::Apis::GenomicsV1alpha2::LoggingOptions, decorator: Google::Apis::GenomicsV1alpha2::LoggingOptions::Representation + + hash :outputs, as: 'outputs' + property :project_id, as: 'projectId' + property :resources, as: 'resources', class: Google::Apis::GenomicsV1alpha2::PipelineResources, decorator: Google::Apis::GenomicsV1alpha2::PipelineResources::Representation + + property :service_account, as: 'serviceAccount', class: Google::Apis::GenomicsV1alpha2::ServiceAccount, decorator: Google::Apis::GenomicsV1alpha2::ServiceAccount::Representation + + end + end + + class RunPipelineRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ephemeral_pipeline, as: 'ephemeralPipeline', class: Google::Apis::GenomicsV1alpha2::Pipeline, decorator: Google::Apis::GenomicsV1alpha2::Pipeline::Representation + + property :pipeline_args, as: 'pipelineArgs', class: Google::Apis::GenomicsV1alpha2::RunPipelineArgs, decorator: Google::Apis::GenomicsV1alpha2::RunPipelineArgs::Representation + + property :pipeline_id, as: 'pipelineId' + end + end + + class RuntimeMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :compute_engine, as: 'computeEngine', class: Google::Apis::GenomicsV1alpha2::ComputeEngine, decorator: Google::Apis::GenomicsV1alpha2::ComputeEngine::Representation + + end + end + + class ServiceAccount + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + collection :scopes, as: 'scopes' + end + end + + class SetOperationStatusRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_code, as: 'errorCode' + property :error_message, as: 'errorMessage' + property :operation_id, as: 'operationId' + collection :timestamp_events, as: 'timestampEvents', class: Google::Apis::GenomicsV1alpha2::TimestampEvent, decorator: Google::Apis::GenomicsV1alpha2::TimestampEvent::Representation + + property :validation_token, :numeric_string => true, as: 'validationToken' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TimestampEvent + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :timestamp, as: 'timestamp' + end + end + end + end +end diff --git a/generated/google/apis/genomics_v1alpha2/service.rb b/generated/google/apis/genomics_v1alpha2/service.rb new file mode 100644 index 000000000..077c41578 --- /dev/null +++ b/generated/google/apis/genomics_v1alpha2/service.rb @@ -0,0 +1,426 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module GenomicsV1alpha2 + # Genomics API + # + # Upload, process, query, and search Genomics data in the cloud. + # + # @example + # require 'google/apis/genomics_v1alpha2' + # + # Genomics = Google::Apis::GenomicsV1alpha2 # Alias the module + # service = Genomics::GenomicsService.new + # + # @see https://cloud.google.com/genomics + class GenomicsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://genomics.googleapis.com/', '') + @batch_path = 'batch' + end + + # Starts asynchronous cancellation on a long-running operation. The server makes + # a best effort to cancel the operation, but success is not guaranteed. Clients + # may use Operations.GetOperation or Operations.ListOperations to check whether + # the cancellation succeeded or the operation completed despite cancellation. + # @param [String] name + # The name of the operation resource to be cancelled. + # @param [Google::Apis::GenomicsV1alpha2::CancelOperationRequest] cancel_operation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_operation(name, cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1alpha2/{+name}:cancel', options) + command.request_representation = Google::Apis::GenomicsV1alpha2::CancelOperationRequest::Representation + command.request_object = cancel_operation_request_object + command.response_representation = Google::Apis::GenomicsV1alpha2::Empty::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] name + # The name of the operation resource. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha2/{+name}', options) + command.response_representation = Google::Apis::GenomicsV1alpha2::Operation::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. + # @param [String] name + # The name of the operation's parent resource. + # @param [String] filter + # A string for filtering Operations. + # The following filter fields are supported: + # * projectId: Required. Corresponds to + # OperationMetadata.projectId. + # * createTime: The time this job was created, in seconds from the + # [epoch](http://en.wikipedia.org/wiki/Unix_time). Can use `>=` and/or `<=` + # operators. + # * status: Can be `RUNNING`, `SUCCESS`, `FAILURE`, or `CANCELED`. Only + # one status may be specified. + # * labels.key where key is a label key. + # Examples: + # * `projectId = my-project AND createTime >= 1432140000` + # * `projectId = my-project AND createTime >= 1432140000 AND createTime <= + # 1432150000 AND status = RUNNING` + # * `projectId = my-project AND labels.color = *` + # * `projectId = my-project AND labels.color = red` + # @param [Fixnum] page_size + # The maximum number of results to return. If unspecified, defaults to + # 256. The maximum value is 2048. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha2/{+name}', options) + command.response_representation = Google::Apis::GenomicsV1alpha2::ListOperationsResponse::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::ListOperationsResponse + command.params['name'] = name unless name.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a pipeline that can be run later. Create takes a Pipeline that + # has all fields other than `pipelineId` populated, and then returns + # the same pipeline with `pipelineId` populated. This id can be used + # to run the pipeline. + # Caller must have WRITE permission to the project. + # @param [Google::Apis::GenomicsV1alpha2::Pipeline] pipeline_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::Pipeline] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::Pipeline] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_pipeline(pipeline_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1alpha2/pipelines', options) + command.request_representation = Google::Apis::GenomicsV1alpha2::Pipeline::Representation + command.request_object = pipeline_object + command.response_representation = Google::Apis::GenomicsV1alpha2::Pipeline::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::Pipeline + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a pipeline based on ID. + # Caller must have WRITE permission to the project. + # @param [String] pipeline_id + # Caller must have WRITE access to the project in which this pipeline + # is defined. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_pipeline(pipeline_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1alpha2/pipelines/{pipelineId}', options) + command.response_representation = Google::Apis::GenomicsV1alpha2::Empty::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::Empty + command.params['pipelineId'] = pipeline_id unless pipeline_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a pipeline based on ID. + # Caller must have READ permission to the project. + # @param [String] pipeline_id + # Caller must have READ access to the project in which this pipeline + # is defined. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::Pipeline] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::Pipeline] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_pipeline(pipeline_id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha2/pipelines/{pipelineId}', options) + command.response_representation = Google::Apis::GenomicsV1alpha2::Pipeline::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::Pipeline + command.params['pipelineId'] = pipeline_id unless pipeline_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets controller configuration information. Should only be called + # by VMs created by the Pipelines Service and not by end users. + # @param [String] operation_id + # The operation to retrieve controller configuration for. + # @param [Fixnum] validation_token + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::ControllerConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::ControllerConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_pipeline_controller_config(operation_id: nil, validation_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha2/pipelines:getControllerConfig', options) + command.response_representation = Google::Apis::GenomicsV1alpha2::ControllerConfig::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::ControllerConfig + command.query['operationId'] = operation_id unless operation_id.nil? + command.query['validationToken'] = validation_token unless validation_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists pipelines. + # Caller must have READ permission to the project. + # @param [String] name_prefix + # Pipelines with names that match this prefix should be + # returned. If unspecified, all pipelines in the project, up to + # `pageSize`, will be returned. + # @param [Fixnum] page_size + # Number of pipelines to return at once. Defaults to 256, and max + # is 2048. + # @param [String] page_token + # Token to use to indicate where to start getting results. + # If unspecified, returns the first page of results. + # @param [String] project_id + # Required. The name of the project to search for pipelines. Caller + # must have READ access to this project. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::ListPipelinesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::ListPipelinesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_pipelines(name_prefix: nil, page_size: nil, page_token: nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1alpha2/pipelines', options) + command.response_representation = Google::Apis::GenomicsV1alpha2::ListPipelinesResponse::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::ListPipelinesResponse + command.query['namePrefix'] = name_prefix unless name_prefix.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Runs a pipeline. If `pipelineId` is specified in the request, then + # run a saved pipeline. If `ephemeralPipeline` is specified, then run + # that pipeline once without saving a copy. + # The caller must have READ permission to the project where the pipeline + # is stored and WRITE permission to the project where the pipeline will be + # run, as VMs will be created and storage will be used. + # If a pipeline operation is still running after 6 days, it will be canceled. + # @param [Google::Apis::GenomicsV1alpha2::RunPipelineRequest] run_pipeline_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def run_pipeline(run_pipeline_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1alpha2/pipelines:run', options) + command.request_representation = Google::Apis::GenomicsV1alpha2::RunPipelineRequest::Representation + command.request_object = run_pipeline_request_object + command.response_representation = Google::Apis::GenomicsV1alpha2::Operation::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::Operation + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [Google::Apis::GenomicsV1alpha2::SetOperationStatusRequest] set_operation_status_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::GenomicsV1alpha2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::GenomicsV1alpha2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_pipeline_operation_status(set_operation_status_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1alpha2/pipelines:setOperationStatus', options) + command.request_representation = Google::Apis::GenomicsV1alpha2::SetOperationStatusRequest::Representation + command.request_object = set_operation_status_request_object + command.response_representation = Google::Apis::GenomicsV1alpha2::Empty::Representation + command.response_class = Google::Apis::GenomicsV1alpha2::Empty + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/language_v1beta1.rb b/generated/google/apis/language_v1beta1.rb index e4cfa44a0..28ebecc69 100644 --- a/generated/google/apis/language_v1beta1.rb +++ b/generated/google/apis/language_v1beta1.rb @@ -27,7 +27,10 @@ module Google # @see https://cloud.google.com/natural-language/ module LanguageV1beta1 VERSION = 'V1beta1' - REVISION = '20170619' + REVISION = '20170809' + + # Apply machine learning models to reveal the structure and meaning of text + AUTH_CLOUD_LANGUAGE = 'https://www.googleapis.com/auth/cloud-language' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/language_v1beta1/classes.rb b/generated/google/apis/language_v1beta1/classes.rb index 0d06a37ae..9a61b7165 100644 --- a/generated/google/apis/language_v1beta1/classes.rb +++ b/generated/google/apis/language_v1beta1/classes.rb @@ -22,20 +22,20 @@ module Google module Apis module LanguageV1beta1 - # Represents an output piece of text. - class TextSpan + # The entity analysis request message. + class AnalyzeEntitiesRequest include Google::Apis::Core::Hashable - # The API calculates the beginning offset of the content in the original - # document according to the EncodingType specified in the API request. - # Corresponds to the JSON property `beginOffset` - # @return [Fixnum] - attr_accessor :begin_offset + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta1::Document] + attr_accessor :document - # The content of the output text. - # Corresponds to the JSON property `content` + # The encoding type used by the API to calculate offsets. + # Corresponds to the JSON property `encodingType` # @return [String] - attr_accessor :content + attr_accessor :encoding_type def initialize(**args) update!(**args) @@ -43,34 +43,387 @@ module Google # Update properties of this object def update!(**args) - @begin_offset = args[:begin_offset] if args.key?(:begin_offset) - @content = args[:content] if args.key?(:content) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) end end - # Represents the smallest syntactic building block of the text. - class Token + # The entity analysis response message. + class AnalyzeEntitiesResponse include Google::Apis::Core::Hashable - # Represents dependency parse tree information for a token. - # Corresponds to the JSON property `dependencyEdge` - # @return [Google::Apis::LanguageV1beta1::DependencyEdge] - attr_accessor :dependency_edge + # The recognized entities in the input document. + # Corresponds to the JSON property `entities` + # @return [Array] + attr_accessor :entities + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entities = args[:entities] if args.key?(:entities) + @language = args[:language] if args.key?(:language) + end + end + + # The sentiment analysis request message. + class AnalyzeSentimentRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta1::Document] + attr_accessor :document + + # The encoding type used by the API to calculate sentence offsets for the + # sentence sentiment. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + end + end + + # The sentiment analysis response message. + class AnalyzeSentimentResponse + include Google::Apis::Core::Hashable + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `documentSentiment` + # @return [Google::Apis::LanguageV1beta1::Sentiment] + attr_accessor :document_sentiment + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # The sentiment for all the sentences in the document. + # Corresponds to the JSON property `sentences` + # @return [Array] + attr_accessor :sentences + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment) + @language = args[:language] if args.key?(:language) + @sentences = args[:sentences] if args.key?(:sentences) + end + end + + # The syntax analysis request message. + class AnalyzeSyntaxRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta1::Document] + attr_accessor :document + + # The encoding type used by the API to calculate offsets. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + end + end + + # The syntax analysis response message. + class AnalyzeSyntaxResponse + include Google::Apis::Core::Hashable + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # Sentences in the input document. + # Corresponds to the JSON property `sentences` + # @return [Array] + attr_accessor :sentences + + # Tokens, along with their syntactic information, in the input document. + # Corresponds to the JSON property `tokens` + # @return [Array] + attr_accessor :tokens + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @language = args[:language] if args.key?(:language) + @sentences = args[:sentences] if args.key?(:sentences) + @tokens = args[:tokens] if args.key?(:tokens) + end + end + + # The request message for the text annotation API, which can perform multiple + # analysis types (sentiment, entities, and syntax) in one call. + class AnnotateTextRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta1::Document] + attr_accessor :document + + # The encoding type used by the API to calculate offsets. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + # All available features for sentiment, syntax, and semantic analysis. + # Setting each one to true will enable that specific analysis for the input. + # Corresponds to the JSON property `features` + # @return [Google::Apis::LanguageV1beta1::Features] + attr_accessor :features + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + @features = args[:features] if args.key?(:features) + end + end + + # The text annotations response message. + class AnnotateTextResponse + include Google::Apis::Core::Hashable + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `documentSentiment` + # @return [Google::Apis::LanguageV1beta1::Sentiment] + attr_accessor :document_sentiment + + # Entities, along with their semantic information, in the input document. + # Populated if the user enables + # AnnotateTextRequest.Features.extract_entities. + # Corresponds to the JSON property `entities` + # @return [Array] + attr_accessor :entities + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # Sentences in the input document. Populated if the user enables + # AnnotateTextRequest.Features.extract_syntax. + # Corresponds to the JSON property `sentences` + # @return [Array] + attr_accessor :sentences + + # Tokens, along with their syntactic information, in the input document. + # Populated if the user enables + # AnnotateTextRequest.Features.extract_syntax. + # Corresponds to the JSON property `tokens` + # @return [Array] + attr_accessor :tokens + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment) + @entities = args[:entities] if args.key?(:entities) + @language = args[:language] if args.key?(:language) + @sentences = args[:sentences] if args.key?(:sentences) + @tokens = args[:tokens] if args.key?(:tokens) + end + end + + # Represents dependency parse tree information for a token. + class DependencyEdge + include Google::Apis::Core::Hashable + + # Represents the head of this token in the dependency tree. + # This is the index of the token which has an arc going to this token. + # The index is the position of the token in the array of tokens returned + # by the API method. If this token is a root token, then the + # `head_token_index` is its own index. + # Corresponds to the JSON property `headTokenIndex` + # @return [Fixnum] + attr_accessor :head_token_index + + # The parse label for the token. + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @head_token_index = args[:head_token_index] if args.key?(:head_token_index) + @label = args[:label] if args.key?(:label) + end + end + + # ################################################################ # + # Represents the input to API methods. + class Document + include Google::Apis::Core::Hashable + + # The content of the input in string format. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + # The Google Cloud Storage URI where the file content is located. + # This URI must be of the form: gs://bucket_name/object_name. For more + # details, see https://cloud.google.com/storage/docs/reference-uris. + # NOTE: Cloud Storage object versioning is not supported. + # Corresponds to the JSON property `gcsContentUri` + # @return [String] + attr_accessor :gcs_content_uri + + # The language of the document (if not specified, the language is + # automatically detected). Both ISO and BCP-47 language codes are + # accepted.
+ # [Language Support](/natural-language/docs/languages) + # lists currently supported languages for each API method. + # If the language (either specified by the caller or automatically detected) + # is not supported by the called API method, an `INVALID_ARGUMENT` error + # is returned. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # Required. If the type is not set or is `TYPE_UNSPECIFIED`, + # returns an `INVALID_ARGUMENT` error. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + @gcs_content_uri = args[:gcs_content_uri] if args.key?(:gcs_content_uri) + @language = args[:language] if args.key?(:language) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a phrase in the text that is a known entity, such as + # a person, an organization, or location. The API associates information, such + # as salience and mentions, with entities. + class Entity + include Google::Apis::Core::Hashable + + # The mentions of this entity in the input document. The API currently + # supports proper noun mentions. + # Corresponds to the JSON property `mentions` + # @return [Array] + attr_accessor :mentions + + # Metadata associated with the entity. + # Currently, Wikipedia URLs and Knowledge Graph MIDs are provided, if + # available. The associated keys are "wikipedia_url" and "mid", respectively. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The representative name for the entity. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The salience score associated with the entity in the [0, 1.0] range. + # The salience score for an entity provides information about the + # importance or centrality of that entity to the entire document text. + # Scores closer to 0 are less salient, while scores closer to 1.0 are highly + # salient. + # Corresponds to the JSON property `salience` + # @return [Float] + attr_accessor :salience + + # The entity type. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @mentions = args[:mentions] if args.key?(:mentions) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @salience = args[:salience] if args.key?(:salience) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a mention for an entity in the text. Currently, proper noun + # mentions are supported. + class EntityMention + include Google::Apis::Core::Hashable # Represents an output piece of text. # Corresponds to the JSON property `text` # @return [Google::Apis::LanguageV1beta1::TextSpan] attr_accessor :text - # [Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token. - # Corresponds to the JSON property `lemma` + # The type of the entity mention. + # Corresponds to the JSON property `type` # @return [String] - attr_accessor :lemma - - # Represents part of speech information for a token. - # Corresponds to the JSON property `partOfSpeech` - # @return [Google::Apis::LanguageV1beta1::PartOfSpeech] - attr_accessor :part_of_speech + attr_accessor :type def initialize(**args) update!(**args) @@ -78,10 +431,191 @@ module Google # Update properties of this object def update!(**args) - @dependency_edge = args[:dependency_edge] if args.key?(:dependency_edge) @text = args[:text] if args.key?(:text) - @lemma = args[:lemma] if args.key?(:lemma) - @part_of_speech = args[:part_of_speech] if args.key?(:part_of_speech) + @type = args[:type] if args.key?(:type) + end + end + + # All available features for sentiment, syntax, and semantic analysis. + # Setting each one to true will enable that specific analysis for the input. + class Features + include Google::Apis::Core::Hashable + + # Extract document-level sentiment. + # Corresponds to the JSON property `extractDocumentSentiment` + # @return [Boolean] + attr_accessor :extract_document_sentiment + alias_method :extract_document_sentiment?, :extract_document_sentiment + + # Extract entities. + # Corresponds to the JSON property `extractEntities` + # @return [Boolean] + attr_accessor :extract_entities + alias_method :extract_entities?, :extract_entities + + # Extract syntax information. + # Corresponds to the JSON property `extractSyntax` + # @return [Boolean] + attr_accessor :extract_syntax + alias_method :extract_syntax?, :extract_syntax + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @extract_document_sentiment = args[:extract_document_sentiment] if args.key?(:extract_document_sentiment) + @extract_entities = args[:extract_entities] if args.key?(:extract_entities) + @extract_syntax = args[:extract_syntax] if args.key?(:extract_syntax) + end + end + + # Represents part of speech information for a token. + class PartOfSpeech + include Google::Apis::Core::Hashable + + # The grammatical aspect. + # Corresponds to the JSON property `aspect` + # @return [String] + attr_accessor :aspect + + # The grammatical case. + # Corresponds to the JSON property `case` + # @return [String] + attr_accessor :case + + # The grammatical form. + # Corresponds to the JSON property `form` + # @return [String] + attr_accessor :form + + # The grammatical gender. + # Corresponds to the JSON property `gender` + # @return [String] + attr_accessor :gender + + # The grammatical mood. + # Corresponds to the JSON property `mood` + # @return [String] + attr_accessor :mood + + # The grammatical number. + # Corresponds to the JSON property `number` + # @return [String] + attr_accessor :number + + # The grammatical person. + # Corresponds to the JSON property `person` + # @return [String] + attr_accessor :person + + # The grammatical properness. + # Corresponds to the JSON property `proper` + # @return [String] + attr_accessor :proper + + # The grammatical reciprocity. + # Corresponds to the JSON property `reciprocity` + # @return [String] + attr_accessor :reciprocity + + # The part of speech tag. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + # The grammatical tense. + # Corresponds to the JSON property `tense` + # @return [String] + attr_accessor :tense + + # The grammatical voice. + # Corresponds to the JSON property `voice` + # @return [String] + attr_accessor :voice + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @aspect = args[:aspect] if args.key?(:aspect) + @case = args[:case] if args.key?(:case) + @form = args[:form] if args.key?(:form) + @gender = args[:gender] if args.key?(:gender) + @mood = args[:mood] if args.key?(:mood) + @number = args[:number] if args.key?(:number) + @person = args[:person] if args.key?(:person) + @proper = args[:proper] if args.key?(:proper) + @reciprocity = args[:reciprocity] if args.key?(:reciprocity) + @tag = args[:tag] if args.key?(:tag) + @tense = args[:tense] if args.key?(:tense) + @voice = args[:voice] if args.key?(:voice) + end + end + + # Represents a sentence in the input document. + class Sentence + include Google::Apis::Core::Hashable + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `sentiment` + # @return [Google::Apis::LanguageV1beta1::Sentiment] + attr_accessor :sentiment + + # Represents an output piece of text. + # Corresponds to the JSON property `text` + # @return [Google::Apis::LanguageV1beta1::TextSpan] + attr_accessor :text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sentiment = args[:sentiment] if args.key?(:sentiment) + @text = args[:text] if args.key?(:text) + end + end + + # Represents the feeling associated with the entire text or entities in + # the text. + class Sentiment + include Google::Apis::Core::Hashable + + # A non-negative number in the [0, +inf) range, which represents + # the absolute magnitude of sentiment regardless of score (positive or + # negative). + # Corresponds to the JSON property `magnitude` + # @return [Float] + attr_accessor :magnitude + + # DEPRECATED FIELD - This field is being deprecated in + # favor of score. Please refer to our documentation at + # https://cloud.google.com/natural-language/docs for more information. + # Corresponds to the JSON property `polarity` + # @return [Float] + attr_accessor :polarity + + # Sentiment score between -1.0 (negative sentiment) and 1.0 + # (positive sentiment). + # Corresponds to the JSON property `score` + # @return [Float] + attr_accessor :score + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @magnitude = args[:magnitude] if args.key?(:magnitude) + @polarity = args[:polarity] if args.key?(:polarity) + @score = args[:score] if args.key?(:score) end end @@ -127,17 +661,17 @@ module Google class Status include Google::Apis::Core::Hashable - # A list of messages that carry the error details. There will be a - # common set of message types for APIs to use. - # Corresponds to the JSON property `details` - # @return [Array>] - attr_accessor :details - # The status code, which should be an enum value of google.rpc.Code. # Corresponds to the JSON property `code` # @return [Fixnum] attr_accessor :code + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + # 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. @@ -151,606 +685,72 @@ module Google # Update properties of this object def update!(**args) - @details = args[:details] if args.key?(:details) @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) @message = args[:message] if args.key?(:message) end end - # Represents a mention for an entity in the text. Currently, proper noun - # mentions are supported. - class EntityMention + # Represents an output piece of text. + class TextSpan include Google::Apis::Core::Hashable - # The type of the entity mention. - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type + # The API calculates the beginning offset of the content in the original + # document according to the EncodingType specified in the API request. + # Corresponds to the JSON property `beginOffset` + # @return [Fixnum] + attr_accessor :begin_offset - # Represents an output piece of text. - # Corresponds to the JSON property `text` - # @return [Google::Apis::LanguageV1beta1::TextSpan] - attr_accessor :text - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @type = args[:type] if args.key?(:type) - @text = args[:text] if args.key?(:text) - end - end - - # All available features for sentiment, syntax, and semantic analysis. - # Setting each one to true will enable that specific analysis for the input. - class Features - include Google::Apis::Core::Hashable - - # Extract entities. - # Corresponds to the JSON property `extractEntities` - # @return [Boolean] - attr_accessor :extract_entities - alias_method :extract_entities?, :extract_entities - - # Extract document-level sentiment. - # Corresponds to the JSON property `extractDocumentSentiment` - # @return [Boolean] - attr_accessor :extract_document_sentiment - alias_method :extract_document_sentiment?, :extract_document_sentiment - - # Extract syntax information. - # Corresponds to the JSON property `extractSyntax` - # @return [Boolean] - attr_accessor :extract_syntax - alias_method :extract_syntax?, :extract_syntax - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @extract_entities = args[:extract_entities] if args.key?(:extract_entities) - @extract_document_sentiment = args[:extract_document_sentiment] if args.key?(:extract_document_sentiment) - @extract_syntax = args[:extract_syntax] if args.key?(:extract_syntax) - end - end - - # ################################################################ # - # Represents the input to API methods. - class Document - include Google::Apis::Core::Hashable - - # The Google Cloud Storage URI where the file content is located. - # This URI must be of the form: gs://bucket_name/object_name. For more - # details, see https://cloud.google.com/storage/docs/reference-uris. - # NOTE: Cloud Storage object versioning is not supported. - # Corresponds to the JSON property `gcsContentUri` - # @return [String] - attr_accessor :gcs_content_uri - - # The language of the document (if not specified, the language is - # automatically detected). Both ISO and BCP-47 language codes are - # accepted.
- # [Language Support](/natural-language/docs/languages) - # lists currently supported languages for each API method. - # If the language (either specified by the caller or automatically detected) - # is not supported by the called API method, an `INVALID_ARGUMENT` error - # is returned. - # Corresponds to the JSON property `language` - # @return [String] - attr_accessor :language - - # The content of the input in string format. + # The content of the output text. # Corresponds to the JSON property `content` # @return [String] attr_accessor :content - # Required. If the type is not set or is `TYPE_UNSPECIFIED`, - # returns an `INVALID_ARGUMENT` error. - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @gcs_content_uri = args[:gcs_content_uri] if args.key?(:gcs_content_uri) - @language = args[:language] if args.key?(:language) + @begin_offset = args[:begin_offset] if args.key?(:begin_offset) @content = args[:content] if args.key?(:content) - @type = args[:type] if args.key?(:type) end end - # Represents a sentence in the input document. - class Sentence + # Represents the smallest syntactic building block of the text. + class Token include Google::Apis::Core::Hashable + # Represents dependency parse tree information for a token. + # Corresponds to the JSON property `dependencyEdge` + # @return [Google::Apis::LanguageV1beta1::DependencyEdge] + attr_accessor :dependency_edge + + # [Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token. + # Corresponds to the JSON property `lemma` + # @return [String] + attr_accessor :lemma + + # Represents part of speech information for a token. + # Corresponds to the JSON property `partOfSpeech` + # @return [Google::Apis::LanguageV1beta1::PartOfSpeech] + attr_accessor :part_of_speech + # Represents an output piece of text. # Corresponds to the JSON property `text` # @return [Google::Apis::LanguageV1beta1::TextSpan] attr_accessor :text - # Represents the feeling associated with the entire text or entities in - # the text. - # Corresponds to the JSON property `sentiment` - # @return [Google::Apis::LanguageV1beta1::Sentiment] - attr_accessor :sentiment - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @dependency_edge = args[:dependency_edge] if args.key?(:dependency_edge) + @lemma = args[:lemma] if args.key?(:lemma) + @part_of_speech = args[:part_of_speech] if args.key?(:part_of_speech) @text = args[:text] if args.key?(:text) - @sentiment = args[:sentiment] if args.key?(:sentiment) - end - end - - # The entity analysis request message. - class AnalyzeEntitiesRequest - include Google::Apis::Core::Hashable - - # ################################################################ # - # Represents the input to API methods. - # Corresponds to the JSON property `document` - # @return [Google::Apis::LanguageV1beta1::Document] - attr_accessor :document - - # The encoding type used by the API to calculate offsets. - # Corresponds to the JSON property `encodingType` - # @return [String] - attr_accessor :encoding_type - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @document = args[:document] if args.key?(:document) - @encoding_type = args[:encoding_type] if args.key?(:encoding_type) - end - end - - # Represents the feeling associated with the entire text or entities in - # the text. - class Sentiment - include Google::Apis::Core::Hashable - - # Sentiment score between -1.0 (negative sentiment) and 1.0 - # (positive sentiment). - # Corresponds to the JSON property `score` - # @return [Float] - attr_accessor :score - - # DEPRECATED FIELD - This field is being deprecated in - # favor of score. Please refer to our documentation at - # https://cloud.google.com/natural-language/docs for more information. - # Corresponds to the JSON property `polarity` - # @return [Float] - attr_accessor :polarity - - # A non-negative number in the [0, +inf) range, which represents - # the absolute magnitude of sentiment regardless of score (positive or - # negative). - # Corresponds to the JSON property `magnitude` - # @return [Float] - attr_accessor :magnitude - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @score = args[:score] if args.key?(:score) - @polarity = args[:polarity] if args.key?(:polarity) - @magnitude = args[:magnitude] if args.key?(:magnitude) - end - end - - # Represents part of speech information for a token. - class PartOfSpeech - include Google::Apis::Core::Hashable - - # The grammatical form. - # Corresponds to the JSON property `form` - # @return [String] - attr_accessor :form - - # The grammatical number. - # Corresponds to the JSON property `number` - # @return [String] - attr_accessor :number - - # The grammatical voice. - # Corresponds to the JSON property `voice` - # @return [String] - attr_accessor :voice - - # The grammatical aspect. - # Corresponds to the JSON property `aspect` - # @return [String] - attr_accessor :aspect - - # The grammatical mood. - # Corresponds to the JSON property `mood` - # @return [String] - attr_accessor :mood - - # The part of speech tag. - # Corresponds to the JSON property `tag` - # @return [String] - attr_accessor :tag - - # The grammatical gender. - # Corresponds to the JSON property `gender` - # @return [String] - attr_accessor :gender - - # The grammatical person. - # Corresponds to the JSON property `person` - # @return [String] - attr_accessor :person - - # The grammatical properness. - # Corresponds to the JSON property `proper` - # @return [String] - attr_accessor :proper - - # The grammatical case. - # Corresponds to the JSON property `case` - # @return [String] - attr_accessor :case - - # The grammatical tense. - # Corresponds to the JSON property `tense` - # @return [String] - attr_accessor :tense - - # The grammatical reciprocity. - # Corresponds to the JSON property `reciprocity` - # @return [String] - attr_accessor :reciprocity - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @form = args[:form] if args.key?(:form) - @number = args[:number] if args.key?(:number) - @voice = args[:voice] if args.key?(:voice) - @aspect = args[:aspect] if args.key?(:aspect) - @mood = args[:mood] if args.key?(:mood) - @tag = args[:tag] if args.key?(:tag) - @gender = args[:gender] if args.key?(:gender) - @person = args[:person] if args.key?(:person) - @proper = args[:proper] if args.key?(:proper) - @case = args[:case] if args.key?(:case) - @tense = args[:tense] if args.key?(:tense) - @reciprocity = args[:reciprocity] if args.key?(:reciprocity) - end - end - - # The syntax analysis request message. - class AnalyzeSyntaxRequest - include Google::Apis::Core::Hashable - - # ################################################################ # - # Represents the input to API methods. - # Corresponds to the JSON property `document` - # @return [Google::Apis::LanguageV1beta1::Document] - attr_accessor :document - - # The encoding type used by the API to calculate offsets. - # Corresponds to the JSON property `encodingType` - # @return [String] - attr_accessor :encoding_type - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @document = args[:document] if args.key?(:document) - @encoding_type = args[:encoding_type] if args.key?(:encoding_type) - end - end - - # The sentiment analysis response message. - class AnalyzeSentimentResponse - include Google::Apis::Core::Hashable - - # The language of the text, which will be the same as the language specified - # in the request or, if not specified, the automatically-detected language. - # See Document.language field for more details. - # Corresponds to the JSON property `language` - # @return [String] - attr_accessor :language - - # The sentiment for all the sentences in the document. - # Corresponds to the JSON property `sentences` - # @return [Array] - attr_accessor :sentences - - # Represents the feeling associated with the entire text or entities in - # the text. - # Corresponds to the JSON property `documentSentiment` - # @return [Google::Apis::LanguageV1beta1::Sentiment] - attr_accessor :document_sentiment - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @language = args[:language] if args.key?(:language) - @sentences = args[:sentences] if args.key?(:sentences) - @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment) - end - end - - # The entity analysis response message. - class AnalyzeEntitiesResponse - include Google::Apis::Core::Hashable - - # The language of the text, which will be the same as the language specified - # in the request or, if not specified, the automatically-detected language. - # See Document.language field for more details. - # Corresponds to the JSON property `language` - # @return [String] - attr_accessor :language - - # The recognized entities in the input document. - # Corresponds to the JSON property `entities` - # @return [Array] - attr_accessor :entities - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @language = args[:language] if args.key?(:language) - @entities = args[:entities] if args.key?(:entities) - end - end - - # The syntax analysis response message. - class AnalyzeSyntaxResponse - include Google::Apis::Core::Hashable - - # The language of the text, which will be the same as the language specified - # in the request or, if not specified, the automatically-detected language. - # See Document.language field for more details. - # Corresponds to the JSON property `language` - # @return [String] - attr_accessor :language - - # Sentences in the input document. - # Corresponds to the JSON property `sentences` - # @return [Array] - attr_accessor :sentences - - # Tokens, along with their syntactic information, in the input document. - # Corresponds to the JSON property `tokens` - # @return [Array] - attr_accessor :tokens - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @language = args[:language] if args.key?(:language) - @sentences = args[:sentences] if args.key?(:sentences) - @tokens = args[:tokens] if args.key?(:tokens) - end - end - - # Represents a phrase in the text that is a known entity, such as - # a person, an organization, or location. The API associates information, such - # as salience and mentions, with entities. - class Entity - include Google::Apis::Core::Hashable - - # The representative name for the entity. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # The salience score associated with the entity in the [0, 1.0] range. - # The salience score for an entity provides information about the - # importance or centrality of that entity to the entire document text. - # Scores closer to 0 are less salient, while scores closer to 1.0 are highly - # salient. - # Corresponds to the JSON property `salience` - # @return [Float] - attr_accessor :salience - - # Metadata associated with the entity. - # Currently, Wikipedia URLs and Knowledge Graph MIDs are provided, if - # available. The associated keys are "wikipedia_url" and "mid", respectively. - # Corresponds to the JSON property `metadata` - # @return [Hash] - attr_accessor :metadata - - # The entity type. - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type - - # The mentions of this entity in the input document. The API currently - # supports proper noun mentions. - # Corresponds to the JSON property `mentions` - # @return [Array] - attr_accessor :mentions - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @name = args[:name] if args.key?(:name) - @salience = args[:salience] if args.key?(:salience) - @metadata = args[:metadata] if args.key?(:metadata) - @type = args[:type] if args.key?(:type) - @mentions = args[:mentions] if args.key?(:mentions) - end - end - - # The request message for the text annotation API, which can perform multiple - # analysis types (sentiment, entities, and syntax) in one call. - class AnnotateTextRequest - include Google::Apis::Core::Hashable - - # All available features for sentiment, syntax, and semantic analysis. - # Setting each one to true will enable that specific analysis for the input. - # Corresponds to the JSON property `features` - # @return [Google::Apis::LanguageV1beta1::Features] - attr_accessor :features - - # The encoding type used by the API to calculate offsets. - # Corresponds to the JSON property `encodingType` - # @return [String] - attr_accessor :encoding_type - - # ################################################################ # - # Represents the input to API methods. - # Corresponds to the JSON property `document` - # @return [Google::Apis::LanguageV1beta1::Document] - attr_accessor :document - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @features = args[:features] if args.key?(:features) - @encoding_type = args[:encoding_type] if args.key?(:encoding_type) - @document = args[:document] if args.key?(:document) - end - end - - # The text annotations response message. - class AnnotateTextResponse - include Google::Apis::Core::Hashable - - # Entities, along with their semantic information, in the input document. - # Populated if the user enables - # AnnotateTextRequest.Features.extract_entities. - # Corresponds to the JSON property `entities` - # @return [Array] - attr_accessor :entities - - # Represents the feeling associated with the entire text or entities in - # the text. - # Corresponds to the JSON property `documentSentiment` - # @return [Google::Apis::LanguageV1beta1::Sentiment] - attr_accessor :document_sentiment - - # The language of the text, which will be the same as the language specified - # in the request or, if not specified, the automatically-detected language. - # See Document.language field for more details. - # Corresponds to the JSON property `language` - # @return [String] - attr_accessor :language - - # Sentences in the input document. Populated if the user enables - # AnnotateTextRequest.Features.extract_syntax. - # Corresponds to the JSON property `sentences` - # @return [Array] - attr_accessor :sentences - - # Tokens, along with their syntactic information, in the input document. - # Populated if the user enables - # AnnotateTextRequest.Features.extract_syntax. - # Corresponds to the JSON property `tokens` - # @return [Array] - attr_accessor :tokens - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @entities = args[:entities] if args.key?(:entities) - @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment) - @language = args[:language] if args.key?(:language) - @sentences = args[:sentences] if args.key?(:sentences) - @tokens = args[:tokens] if args.key?(:tokens) - end - end - - # The sentiment analysis request message. - class AnalyzeSentimentRequest - include Google::Apis::Core::Hashable - - # ################################################################ # - # Represents the input to API methods. - # Corresponds to the JSON property `document` - # @return [Google::Apis::LanguageV1beta1::Document] - attr_accessor :document - - # The encoding type used by the API to calculate sentence offsets for the - # sentence sentiment. - # Corresponds to the JSON property `encodingType` - # @return [String] - attr_accessor :encoding_type - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @document = args[:document] if args.key?(:document) - @encoding_type = args[:encoding_type] if args.key?(:encoding_type) - end - end - - # Represents dependency parse tree information for a token. - class DependencyEdge - include Google::Apis::Core::Hashable - - # The parse label for the token. - # Corresponds to the JSON property `label` - # @return [String] - attr_accessor :label - - # Represents the head of this token in the dependency tree. - # This is the index of the token which has an arc going to this token. - # The index is the position of the token in the array of tokens returned - # by the API method. If this token is a root token, then the - # `head_token_index` is its own index. - # Corresponds to the JSON property `headTokenIndex` - # @return [Fixnum] - attr_accessor :head_token_index - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @label = args[:label] if args.key?(:label) - @head_token_index = args[:head_token_index] if args.key?(:head_token_index) end end end diff --git a/generated/google/apis/language_v1beta1/representations.rb b/generated/google/apis/language_v1beta1/representations.rb index ed7e40d7a..820091b0b 100644 --- a/generated/google/apis/language_v1beta1/representations.rb +++ b/generated/google/apis/language_v1beta1/representations.rb @@ -22,91 +22,37 @@ module Google module Apis module LanguageV1beta1 - class TextSpan - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Token - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Status - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class EntityMention - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Features - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Document - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Sentence - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class AnalyzeEntitiesRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class Sentiment - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class PartOfSpeech - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class AnalyzeSyntaxRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class AnalyzeSentimentResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class AnalyzeEntitiesResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class AnalyzeSyntaxResponse + class AnalyzeSentimentRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class Entity + class AnalyzeSentimentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeSyntaxRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeSyntaxResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -124,18 +70,250 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class AnalyzeSentimentRequest + class DependencyEdge class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class DependencyEdge + class Document class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Entity + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EntityMention + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Features + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PartOfSpeech + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Sentence + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Sentiment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TextSpan + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Token + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeEntitiesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation + + property :encoding_type, as: 'encodingType' + end + end + + class AnalyzeEntitiesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :entities, as: 'entities', class: Google::Apis::LanguageV1beta1::Entity, decorator: Google::Apis::LanguageV1beta1::Entity::Representation + + property :language, as: 'language' + end + end + + class AnalyzeSentimentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation + + property :encoding_type, as: 'encodingType' + end + end + + class AnalyzeSentimentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document_sentiment, as: 'documentSentiment', class: Google::Apis::LanguageV1beta1::Sentiment, decorator: Google::Apis::LanguageV1beta1::Sentiment::Representation + + property :language, as: 'language' + collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta1::Sentence, decorator: Google::Apis::LanguageV1beta1::Sentence::Representation + + end + end + + class AnalyzeSyntaxRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation + + property :encoding_type, as: 'encodingType' + end + end + + class AnalyzeSyntaxResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :language, as: 'language' + collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta1::Sentence, decorator: Google::Apis::LanguageV1beta1::Sentence::Representation + + collection :tokens, as: 'tokens', class: Google::Apis::LanguageV1beta1::Token, decorator: Google::Apis::LanguageV1beta1::Token::Representation + + end + end + + class AnnotateTextRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation + + property :encoding_type, as: 'encodingType' + property :features, as: 'features', class: Google::Apis::LanguageV1beta1::Features, decorator: Google::Apis::LanguageV1beta1::Features::Representation + + end + end + + class AnnotateTextResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document_sentiment, as: 'documentSentiment', class: Google::Apis::LanguageV1beta1::Sentiment, decorator: Google::Apis::LanguageV1beta1::Sentiment::Representation + + collection :entities, as: 'entities', class: Google::Apis::LanguageV1beta1::Entity, decorator: Google::Apis::LanguageV1beta1::Entity::Representation + + property :language, as: 'language' + collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta1::Sentence, decorator: Google::Apis::LanguageV1beta1::Sentence::Representation + + collection :tokens, as: 'tokens', class: Google::Apis::LanguageV1beta1::Token, decorator: Google::Apis::LanguageV1beta1::Token::Representation + + end + end + + class DependencyEdge + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :head_token_index, as: 'headTokenIndex' + property :label, as: 'label' + end + end + + class Document + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content, as: 'content' + property :gcs_content_uri, as: 'gcsContentUri' + property :language, as: 'language' + property :type, as: 'type' + end + end + + class Entity + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :mentions, as: 'mentions', class: Google::Apis::LanguageV1beta1::EntityMention, decorator: Google::Apis::LanguageV1beta1::EntityMention::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + property :salience, as: 'salience' + property :type, as: 'type' + end + end + + class EntityMention + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :text, as: 'text', class: Google::Apis::LanguageV1beta1::TextSpan, decorator: Google::Apis::LanguageV1beta1::TextSpan::Representation + + property :type, as: 'type' + end + end + + class Features + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :extract_document_sentiment, as: 'extractDocumentSentiment' + property :extract_entities, as: 'extractEntities' + property :extract_syntax, as: 'extractSyntax' + end + end + + class PartOfSpeech + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :aspect, as: 'aspect' + property :case, as: 'case' + property :form, as: 'form' + property :gender, as: 'gender' + property :mood, as: 'mood' + property :number, as: 'number' + property :person, as: 'person' + property :proper, as: 'proper' + property :reciprocity, as: 'reciprocity' + property :tag, as: 'tag' + property :tense, as: 'tense' + property :voice, as: 'voice' + end + end + + class Sentence + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :sentiment, as: 'sentiment', class: Google::Apis::LanguageV1beta1::Sentiment, decorator: Google::Apis::LanguageV1beta1::Sentiment::Representation + + property :text, as: 'text', class: Google::Apis::LanguageV1beta1::TextSpan, decorator: Google::Apis::LanguageV1beta1::TextSpan::Representation + + end + end + + class Sentiment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :magnitude, as: 'magnitude' + property :polarity, as: 'polarity' + property :score, as: 'score' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + class TextSpan # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -149,191 +327,13 @@ module Google class Representation < Google::Apis::Core::JsonRepresentation property :dependency_edge, as: 'dependencyEdge', class: Google::Apis::LanguageV1beta1::DependencyEdge, decorator: Google::Apis::LanguageV1beta1::DependencyEdge::Representation - property :text, as: 'text', class: Google::Apis::LanguageV1beta1::TextSpan, decorator: Google::Apis::LanguageV1beta1::TextSpan::Representation - property :lemma, as: 'lemma' property :part_of_speech, as: 'partOfSpeech', class: Google::Apis::LanguageV1beta1::PartOfSpeech, decorator: Google::Apis::LanguageV1beta1::PartOfSpeech::Representation - end - end - - class Status - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :details, as: 'details' - property :code, as: 'code' - property :message, as: 'message' - end - end - - class EntityMention - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :type, as: 'type' property :text, as: 'text', class: Google::Apis::LanguageV1beta1::TextSpan, decorator: Google::Apis::LanguageV1beta1::TextSpan::Representation end end - - class Features - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :extract_entities, as: 'extractEntities' - property :extract_document_sentiment, as: 'extractDocumentSentiment' - property :extract_syntax, as: 'extractSyntax' - end - end - - class Document - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :gcs_content_uri, as: 'gcsContentUri' - property :language, as: 'language' - property :content, as: 'content' - property :type, as: 'type' - end - end - - class Sentence - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :text, as: 'text', class: Google::Apis::LanguageV1beta1::TextSpan, decorator: Google::Apis::LanguageV1beta1::TextSpan::Representation - - property :sentiment, as: 'sentiment', class: Google::Apis::LanguageV1beta1::Sentiment, decorator: Google::Apis::LanguageV1beta1::Sentiment::Representation - - end - end - - class AnalyzeEntitiesRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation - - property :encoding_type, as: 'encodingType' - end - end - - class Sentiment - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :score, as: 'score' - property :polarity, as: 'polarity' - property :magnitude, as: 'magnitude' - end - end - - class PartOfSpeech - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :form, as: 'form' - property :number, as: 'number' - property :voice, as: 'voice' - property :aspect, as: 'aspect' - property :mood, as: 'mood' - property :tag, as: 'tag' - property :gender, as: 'gender' - property :person, as: 'person' - property :proper, as: 'proper' - property :case, as: 'case' - property :tense, as: 'tense' - property :reciprocity, as: 'reciprocity' - end - end - - class AnalyzeSyntaxRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation - - property :encoding_type, as: 'encodingType' - end - end - - class AnalyzeSentimentResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :language, as: 'language' - collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta1::Sentence, decorator: Google::Apis::LanguageV1beta1::Sentence::Representation - - property :document_sentiment, as: 'documentSentiment', class: Google::Apis::LanguageV1beta1::Sentiment, decorator: Google::Apis::LanguageV1beta1::Sentiment::Representation - - end - end - - class AnalyzeEntitiesResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :language, as: 'language' - collection :entities, as: 'entities', class: Google::Apis::LanguageV1beta1::Entity, decorator: Google::Apis::LanguageV1beta1::Entity::Representation - - end - end - - class AnalyzeSyntaxResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :language, as: 'language' - collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta1::Sentence, decorator: Google::Apis::LanguageV1beta1::Sentence::Representation - - collection :tokens, as: 'tokens', class: Google::Apis::LanguageV1beta1::Token, decorator: Google::Apis::LanguageV1beta1::Token::Representation - - end - end - - class Entity - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :name, as: 'name' - property :salience, as: 'salience' - hash :metadata, as: 'metadata' - property :type, as: 'type' - collection :mentions, as: 'mentions', class: Google::Apis::LanguageV1beta1::EntityMention, decorator: Google::Apis::LanguageV1beta1::EntityMention::Representation - - end - end - - class AnnotateTextRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :features, as: 'features', class: Google::Apis::LanguageV1beta1::Features, decorator: Google::Apis::LanguageV1beta1::Features::Representation - - property :encoding_type, as: 'encodingType' - property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation - - end - end - - class AnnotateTextResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :entities, as: 'entities', class: Google::Apis::LanguageV1beta1::Entity, decorator: Google::Apis::LanguageV1beta1::Entity::Representation - - property :document_sentiment, as: 'documentSentiment', class: Google::Apis::LanguageV1beta1::Sentiment, decorator: Google::Apis::LanguageV1beta1::Sentiment::Representation - - property :language, as: 'language' - collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta1::Sentence, decorator: Google::Apis::LanguageV1beta1::Sentence::Representation - - collection :tokens, as: 'tokens', class: Google::Apis::LanguageV1beta1::Token, decorator: Google::Apis::LanguageV1beta1::Token::Representation - - end - end - - class AnalyzeSentimentRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :document, as: 'document', class: Google::Apis::LanguageV1beta1::Document, decorator: Google::Apis::LanguageV1beta1::Document::Representation - - property :encoding_type, as: 'encodingType' - end - end - - class DependencyEdge - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :label, as: 'label' - property :head_token_index, as: 'headTokenIndex' - end - end end end end diff --git a/generated/google/apis/language_v1beta1/service.rb b/generated/google/apis/language_v1beta1/service.rb index 36f91796e..29690890b 100644 --- a/generated/google/apis/language_v1beta1/service.rb +++ b/generated/google/apis/language_v1beta1/service.rb @@ -49,108 +49,15 @@ module Google @batch_path = 'batch' end - # Analyzes the syntax of the text and provides sentence boundaries and - # tokenization along with part of speech tags, dependency trees, and other - # properties. - # @param [Google::Apis::LanguageV1beta1::AnalyzeSyntaxRequest] analyze_syntax_request_object - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def analyze_document_syntax(analyze_syntax_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/documents:analyzeSyntax', options) - command.request_representation = Google::Apis::LanguageV1beta1::AnalyzeSyntaxRequest::Representation - command.request_object = analyze_syntax_request_object - command.response_representation = Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse::Representation - command.response_class = Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # Analyzes the sentiment of the provided text. - # @param [Google::Apis::LanguageV1beta1::AnalyzeSentimentRequest] analyze_sentiment_request_object - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def analyze_document_sentiment(analyze_sentiment_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/documents:analyzeSentiment', options) - command.request_representation = Google::Apis::LanguageV1beta1::AnalyzeSentimentRequest::Representation - command.request_object = analyze_sentiment_request_object - command.response_representation = Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse::Representation - command.response_class = Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - - # A convenience method that provides all the features that analyzeSentiment, - # analyzeEntities, and analyzeSyntax provide in one call. - # @param [Google::Apis::LanguageV1beta1::AnnotateTextRequest] annotate_text_request_object - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LanguageV1beta1::AnnotateTextResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LanguageV1beta1::AnnotateTextResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def annotate_document_text(annotate_text_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/documents:annotateText', options) - command.request_representation = Google::Apis::LanguageV1beta1::AnnotateTextRequest::Representation - command.request_object = annotate_text_request_object - command.response_representation = Google::Apis::LanguageV1beta1::AnnotateTextResponse::Representation - command.response_class = Google::Apis::LanguageV1beta1::AnnotateTextResponse - command.query['quotaUser'] = quota_user unless quota_user.nil? - command.query['fields'] = fields unless fields.nil? - execute_or_queue_command(command, &block) - end - # Finds named entities (currently proper names and common nouns) in the text # along with entity types, salience, mentions for each entity, and # other properties. # @param [Google::Apis::LanguageV1beta1::AnalyzeEntitiesRequest] analyze_entities_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [String] fields - # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -163,14 +70,107 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def analyze_document_entities(analyze_entities_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) + def analyze_document_entities(analyze_entities_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/documents:analyzeEntities', options) command.request_representation = Google::Apis::LanguageV1beta1::AnalyzeEntitiesRequest::Representation command.request_object = analyze_entities_request_object command.response_representation = Google::Apis::LanguageV1beta1::AnalyzeEntitiesResponse::Representation command.response_class = Google::Apis::LanguageV1beta1::AnalyzeEntitiesResponse - command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Analyzes the sentiment of the provided text. + # @param [Google::Apis::LanguageV1beta1::AnalyzeSentimentRequest] analyze_sentiment_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def analyze_document_sentiment(analyze_sentiment_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/documents:analyzeSentiment', options) + command.request_representation = Google::Apis::LanguageV1beta1::AnalyzeSentimentRequest::Representation + command.request_object = analyze_sentiment_request_object + command.response_representation = Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse::Representation + command.response_class = Google::Apis::LanguageV1beta1::AnalyzeSentimentResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Analyzes the syntax of the text and provides sentence boundaries and + # tokenization along with part of speech tags, dependency trees, and other + # properties. + # @param [Google::Apis::LanguageV1beta1::AnalyzeSyntaxRequest] analyze_syntax_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def analyze_document_syntax(analyze_syntax_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/documents:analyzeSyntax', options) + command.request_representation = Google::Apis::LanguageV1beta1::AnalyzeSyntaxRequest::Representation + command.request_object = analyze_syntax_request_object + command.response_representation = Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse::Representation + command.response_class = Google::Apis::LanguageV1beta1::AnalyzeSyntaxResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # A convenience method that provides all the features that analyzeSentiment, + # analyzeEntities, and analyzeSyntax provide in one call. + # @param [Google::Apis::LanguageV1beta1::AnnotateTextRequest] annotate_text_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta1::AnnotateTextResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta1::AnnotateTextResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def annotate_document_text(annotate_text_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/documents:annotateText', options) + command.request_representation = Google::Apis::LanguageV1beta1::AnnotateTextRequest::Representation + command.request_object = annotate_text_request_object + command.response_representation = Google::Apis::LanguageV1beta1::AnnotateTextResponse::Representation + command.response_class = Google::Apis::LanguageV1beta1::AnnotateTextResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end diff --git a/generated/google/apis/language_v1beta2.rb b/generated/google/apis/language_v1beta2.rb new file mode 100644 index 000000000..f5fa97ace --- /dev/null +++ b/generated/google/apis/language_v1beta2.rb @@ -0,0 +1,39 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/language_v1beta2/service.rb' +require 'google/apis/language_v1beta2/classes.rb' +require 'google/apis/language_v1beta2/representations.rb' + +module Google + module Apis + # Google Cloud Natural Language API + # + # Provides natural language understanding technologies to developers. Examples + # include sentiment analysis, entity recognition, entity sentiment analysis, and + # text annotations. + # + # @see https://cloud.google.com/natural-language/ + module LanguageV1beta2 + VERSION = 'V1beta2' + REVISION = '20170809' + + # Apply machine learning models to reveal the structure and meaning of text + AUTH_CLOUD_LANGUAGE = 'https://www.googleapis.com/auth/cloud-language' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + end + end +end diff --git a/generated/google/apis/language_v1beta2/classes.rb b/generated/google/apis/language_v1beta2/classes.rb new file mode 100644 index 000000000..fda933213 --- /dev/null +++ b/generated/google/apis/language_v1beta2/classes.rb @@ -0,0 +1,824 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module LanguageV1beta2 + + # The entity analysis request message. + class AnalyzeEntitiesRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta2::Document] + attr_accessor :document + + # The encoding type used by the API to calculate offsets. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + end + end + + # The entity analysis response message. + class AnalyzeEntitiesResponse + include Google::Apis::Core::Hashable + + # The recognized entities in the input document. + # Corresponds to the JSON property `entities` + # @return [Array] + attr_accessor :entities + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entities = args[:entities] if args.key?(:entities) + @language = args[:language] if args.key?(:language) + end + end + + # The entity-level sentiment analysis request message. + class AnalyzeEntitySentimentRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta2::Document] + attr_accessor :document + + # The encoding type used by the API to calculate offsets. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + end + end + + # The entity-level sentiment analysis response message. + class AnalyzeEntitySentimentResponse + include Google::Apis::Core::Hashable + + # The recognized entities in the input document with associated sentiments. + # Corresponds to the JSON property `entities` + # @return [Array] + attr_accessor :entities + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entities = args[:entities] if args.key?(:entities) + @language = args[:language] if args.key?(:language) + end + end + + # The sentiment analysis request message. + class AnalyzeSentimentRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta2::Document] + attr_accessor :document + + # The encoding type used by the API to calculate sentence offsets for the + # sentence sentiment. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + end + end + + # The sentiment analysis response message. + class AnalyzeSentimentResponse + include Google::Apis::Core::Hashable + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `documentSentiment` + # @return [Google::Apis::LanguageV1beta2::Sentiment] + attr_accessor :document_sentiment + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # The sentiment for all the sentences in the document. + # Corresponds to the JSON property `sentences` + # @return [Array] + attr_accessor :sentences + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment) + @language = args[:language] if args.key?(:language) + @sentences = args[:sentences] if args.key?(:sentences) + end + end + + # The syntax analysis request message. + class AnalyzeSyntaxRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta2::Document] + attr_accessor :document + + # The encoding type used by the API to calculate offsets. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + end + end + + # The syntax analysis response message. + class AnalyzeSyntaxResponse + include Google::Apis::Core::Hashable + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # Sentences in the input document. + # Corresponds to the JSON property `sentences` + # @return [Array] + attr_accessor :sentences + + # Tokens, along with their syntactic information, in the input document. + # Corresponds to the JSON property `tokens` + # @return [Array] + attr_accessor :tokens + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @language = args[:language] if args.key?(:language) + @sentences = args[:sentences] if args.key?(:sentences) + @tokens = args[:tokens] if args.key?(:tokens) + end + end + + # The request message for the text annotation API, which can perform multiple + # analysis types (sentiment, entities, and syntax) in one call. + class AnnotateTextRequest + include Google::Apis::Core::Hashable + + # ################################################################ # + # Represents the input to API methods. + # Corresponds to the JSON property `document` + # @return [Google::Apis::LanguageV1beta2::Document] + attr_accessor :document + + # The encoding type used by the API to calculate offsets. + # Corresponds to the JSON property `encodingType` + # @return [String] + attr_accessor :encoding_type + + # All available features for sentiment, syntax, and semantic analysis. + # Setting each one to true will enable that specific analysis for the input. + # Corresponds to the JSON property `features` + # @return [Google::Apis::LanguageV1beta2::Features] + attr_accessor :features + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document = args[:document] if args.key?(:document) + @encoding_type = args[:encoding_type] if args.key?(:encoding_type) + @features = args[:features] if args.key?(:features) + end + end + + # The text annotations response message. + class AnnotateTextResponse + include Google::Apis::Core::Hashable + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `documentSentiment` + # @return [Google::Apis::LanguageV1beta2::Sentiment] + attr_accessor :document_sentiment + + # Entities, along with their semantic information, in the input document. + # Populated if the user enables + # AnnotateTextRequest.Features.extract_entities. + # Corresponds to the JSON property `entities` + # @return [Array] + attr_accessor :entities + + # The language of the text, which will be the same as the language specified + # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # Sentences in the input document. Populated if the user enables + # AnnotateTextRequest.Features.extract_syntax. + # Corresponds to the JSON property `sentences` + # @return [Array] + attr_accessor :sentences + + # Tokens, along with their syntactic information, in the input document. + # Populated if the user enables + # AnnotateTextRequest.Features.extract_syntax. + # Corresponds to the JSON property `tokens` + # @return [Array] + attr_accessor :tokens + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @document_sentiment = args[:document_sentiment] if args.key?(:document_sentiment) + @entities = args[:entities] if args.key?(:entities) + @language = args[:language] if args.key?(:language) + @sentences = args[:sentences] if args.key?(:sentences) + @tokens = args[:tokens] if args.key?(:tokens) + end + end + + # Represents dependency parse tree information for a token. + class DependencyEdge + include Google::Apis::Core::Hashable + + # Represents the head of this token in the dependency tree. + # This is the index of the token which has an arc going to this token. + # The index is the position of the token in the array of tokens returned + # by the API method. If this token is a root token, then the + # `head_token_index` is its own index. + # Corresponds to the JSON property `headTokenIndex` + # @return [Fixnum] + attr_accessor :head_token_index + + # The parse label for the token. + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @head_token_index = args[:head_token_index] if args.key?(:head_token_index) + @label = args[:label] if args.key?(:label) + end + end + + # ################################################################ # + # Represents the input to API methods. + class Document + include Google::Apis::Core::Hashable + + # The content of the input in string format. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + # The Google Cloud Storage URI where the file content is located. + # This URI must be of the form: gs://bucket_name/object_name. For more + # details, see https://cloud.google.com/storage/docs/reference-uris. + # NOTE: Cloud Storage object versioning is not supported. + # Corresponds to the JSON property `gcsContentUri` + # @return [String] + attr_accessor :gcs_content_uri + + # The language of the document (if not specified, the language is + # automatically detected). Both ISO and BCP-47 language codes are + # accepted.
+ # [Language Support](/natural-language/docs/languages) + # lists currently supported languages for each API method. + # If the language (either specified by the caller or automatically detected) + # is not supported by the called API method, an `INVALID_ARGUMENT` error + # is returned. + # Corresponds to the JSON property `language` + # @return [String] + attr_accessor :language + + # Required. If the type is not set or is `TYPE_UNSPECIFIED`, + # returns an `INVALID_ARGUMENT` error. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + @gcs_content_uri = args[:gcs_content_uri] if args.key?(:gcs_content_uri) + @language = args[:language] if args.key?(:language) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a phrase in the text that is a known entity, such as + # a person, an organization, or location. The API associates information, such + # as salience and mentions, with entities. + class Entity + include Google::Apis::Core::Hashable + + # The mentions of this entity in the input document. The API currently + # supports proper noun mentions. + # Corresponds to the JSON property `mentions` + # @return [Array] + attr_accessor :mentions + + # Metadata associated with the entity. + # Currently, Wikipedia URLs and Knowledge Graph MIDs are provided, if + # available. The associated keys are "wikipedia_url" and "mid", respectively. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The representative name for the entity. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The salience score associated with the entity in the [0, 1.0] range. + # The salience score for an entity provides information about the + # importance or centrality of that entity to the entire document text. + # Scores closer to 0 are less salient, while scores closer to 1.0 are highly + # salient. + # Corresponds to the JSON property `salience` + # @return [Float] + attr_accessor :salience + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `sentiment` + # @return [Google::Apis::LanguageV1beta2::Sentiment] + attr_accessor :sentiment + + # The entity type. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @mentions = args[:mentions] if args.key?(:mentions) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @salience = args[:salience] if args.key?(:salience) + @sentiment = args[:sentiment] if args.key?(:sentiment) + @type = args[:type] if args.key?(:type) + end + end + + # Represents a mention for an entity in the text. Currently, proper noun + # mentions are supported. + class EntityMention + include Google::Apis::Core::Hashable + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `sentiment` + # @return [Google::Apis::LanguageV1beta2::Sentiment] + attr_accessor :sentiment + + # Represents an output piece of text. + # Corresponds to the JSON property `text` + # @return [Google::Apis::LanguageV1beta2::TextSpan] + attr_accessor :text + + # The type of the entity mention. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sentiment = args[:sentiment] if args.key?(:sentiment) + @text = args[:text] if args.key?(:text) + @type = args[:type] if args.key?(:type) + end + end + + # All available features for sentiment, syntax, and semantic analysis. + # Setting each one to true will enable that specific analysis for the input. + class Features + include Google::Apis::Core::Hashable + + # Extract document-level sentiment. + # Corresponds to the JSON property `extractDocumentSentiment` + # @return [Boolean] + attr_accessor :extract_document_sentiment + alias_method :extract_document_sentiment?, :extract_document_sentiment + + # Extract entities. + # Corresponds to the JSON property `extractEntities` + # @return [Boolean] + attr_accessor :extract_entities + alias_method :extract_entities?, :extract_entities + + # Extract entities and their associated sentiment. + # Corresponds to the JSON property `extractEntitySentiment` + # @return [Boolean] + attr_accessor :extract_entity_sentiment + alias_method :extract_entity_sentiment?, :extract_entity_sentiment + + # Extract syntax information. + # Corresponds to the JSON property `extractSyntax` + # @return [Boolean] + attr_accessor :extract_syntax + alias_method :extract_syntax?, :extract_syntax + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @extract_document_sentiment = args[:extract_document_sentiment] if args.key?(:extract_document_sentiment) + @extract_entities = args[:extract_entities] if args.key?(:extract_entities) + @extract_entity_sentiment = args[:extract_entity_sentiment] if args.key?(:extract_entity_sentiment) + @extract_syntax = args[:extract_syntax] if args.key?(:extract_syntax) + end + end + + # Represents part of speech information for a token. + class PartOfSpeech + include Google::Apis::Core::Hashable + + # The grammatical aspect. + # Corresponds to the JSON property `aspect` + # @return [String] + attr_accessor :aspect + + # The grammatical case. + # Corresponds to the JSON property `case` + # @return [String] + attr_accessor :case + + # The grammatical form. + # Corresponds to the JSON property `form` + # @return [String] + attr_accessor :form + + # The grammatical gender. + # Corresponds to the JSON property `gender` + # @return [String] + attr_accessor :gender + + # The grammatical mood. + # Corresponds to the JSON property `mood` + # @return [String] + attr_accessor :mood + + # The grammatical number. + # Corresponds to the JSON property `number` + # @return [String] + attr_accessor :number + + # The grammatical person. + # Corresponds to the JSON property `person` + # @return [String] + attr_accessor :person + + # The grammatical properness. + # Corresponds to the JSON property `proper` + # @return [String] + attr_accessor :proper + + # The grammatical reciprocity. + # Corresponds to the JSON property `reciprocity` + # @return [String] + attr_accessor :reciprocity + + # The part of speech tag. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + # The grammatical tense. + # Corresponds to the JSON property `tense` + # @return [String] + attr_accessor :tense + + # The grammatical voice. + # Corresponds to the JSON property `voice` + # @return [String] + attr_accessor :voice + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @aspect = args[:aspect] if args.key?(:aspect) + @case = args[:case] if args.key?(:case) + @form = args[:form] if args.key?(:form) + @gender = args[:gender] if args.key?(:gender) + @mood = args[:mood] if args.key?(:mood) + @number = args[:number] if args.key?(:number) + @person = args[:person] if args.key?(:person) + @proper = args[:proper] if args.key?(:proper) + @reciprocity = args[:reciprocity] if args.key?(:reciprocity) + @tag = args[:tag] if args.key?(:tag) + @tense = args[:tense] if args.key?(:tense) + @voice = args[:voice] if args.key?(:voice) + end + end + + # Represents a sentence in the input document. + class Sentence + include Google::Apis::Core::Hashable + + # Represents the feeling associated with the entire text or entities in + # the text. + # Corresponds to the JSON property `sentiment` + # @return [Google::Apis::LanguageV1beta2::Sentiment] + attr_accessor :sentiment + + # Represents an output piece of text. + # Corresponds to the JSON property `text` + # @return [Google::Apis::LanguageV1beta2::TextSpan] + attr_accessor :text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sentiment = args[:sentiment] if args.key?(:sentiment) + @text = args[:text] if args.key?(:text) + end + end + + # Represents the feeling associated with the entire text or entities in + # the text. + class Sentiment + include Google::Apis::Core::Hashable + + # A non-negative number in the [0, +inf) range, which represents + # the absolute magnitude of sentiment regardless of score (positive or + # negative). + # Corresponds to the JSON property `magnitude` + # @return [Float] + attr_accessor :magnitude + + # Sentiment score between -1.0 (negative sentiment) and 1.0 + # (positive sentiment). + # Corresponds to the JSON property `score` + # @return [Float] + attr_accessor :score + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @magnitude = args[:magnitude] if args.key?(:magnitude) + @score = args[:score] if args.key?(:score) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Represents an output piece of text. + class TextSpan + include Google::Apis::Core::Hashable + + # The API calculates the beginning offset of the content in the original + # document according to the EncodingType specified in the API request. + # Corresponds to the JSON property `beginOffset` + # @return [Fixnum] + attr_accessor :begin_offset + + # The content of the output text. + # Corresponds to the JSON property `content` + # @return [String] + attr_accessor :content + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @begin_offset = args[:begin_offset] if args.key?(:begin_offset) + @content = args[:content] if args.key?(:content) + end + end + + # Represents the smallest syntactic building block of the text. + class Token + include Google::Apis::Core::Hashable + + # Represents dependency parse tree information for a token. + # Corresponds to the JSON property `dependencyEdge` + # @return [Google::Apis::LanguageV1beta2::DependencyEdge] + attr_accessor :dependency_edge + + # [Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token. + # Corresponds to the JSON property `lemma` + # @return [String] + attr_accessor :lemma + + # Represents part of speech information for a token. + # Corresponds to the JSON property `partOfSpeech` + # @return [Google::Apis::LanguageV1beta2::PartOfSpeech] + attr_accessor :part_of_speech + + # Represents an output piece of text. + # Corresponds to the JSON property `text` + # @return [Google::Apis::LanguageV1beta2::TextSpan] + attr_accessor :text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dependency_edge = args[:dependency_edge] if args.key?(:dependency_edge) + @lemma = args[:lemma] if args.key?(:lemma) + @part_of_speech = args[:part_of_speech] if args.key?(:part_of_speech) + @text = args[:text] if args.key?(:text) + end + end + end + end +end diff --git a/generated/google/apis/language_v1beta2/representations.rb b/generated/google/apis/language_v1beta2/representations.rb new file mode 100644 index 000000000..c6ce614f1 --- /dev/null +++ b/generated/google/apis/language_v1beta2/representations.rb @@ -0,0 +1,373 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module LanguageV1beta2 + + class AnalyzeEntitiesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeEntitiesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeEntitySentimentRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeEntitySentimentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeSentimentRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeSentimentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeSyntaxRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeSyntaxResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnnotateTextRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnnotateTextResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DependencyEdge + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Document + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Entity + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EntityMention + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Features + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PartOfSpeech + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Sentence + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Sentiment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TextSpan + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Token + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AnalyzeEntitiesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta2::Document, decorator: Google::Apis::LanguageV1beta2::Document::Representation + + property :encoding_type, as: 'encodingType' + end + end + + class AnalyzeEntitiesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :entities, as: 'entities', class: Google::Apis::LanguageV1beta2::Entity, decorator: Google::Apis::LanguageV1beta2::Entity::Representation + + property :language, as: 'language' + end + end + + class AnalyzeEntitySentimentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta2::Document, decorator: Google::Apis::LanguageV1beta2::Document::Representation + + property :encoding_type, as: 'encodingType' + end + end + + class AnalyzeEntitySentimentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :entities, as: 'entities', class: Google::Apis::LanguageV1beta2::Entity, decorator: Google::Apis::LanguageV1beta2::Entity::Representation + + property :language, as: 'language' + end + end + + class AnalyzeSentimentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta2::Document, decorator: Google::Apis::LanguageV1beta2::Document::Representation + + property :encoding_type, as: 'encodingType' + end + end + + class AnalyzeSentimentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document_sentiment, as: 'documentSentiment', class: Google::Apis::LanguageV1beta2::Sentiment, decorator: Google::Apis::LanguageV1beta2::Sentiment::Representation + + property :language, as: 'language' + collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta2::Sentence, decorator: Google::Apis::LanguageV1beta2::Sentence::Representation + + end + end + + class AnalyzeSyntaxRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta2::Document, decorator: Google::Apis::LanguageV1beta2::Document::Representation + + property :encoding_type, as: 'encodingType' + end + end + + class AnalyzeSyntaxResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :language, as: 'language' + collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta2::Sentence, decorator: Google::Apis::LanguageV1beta2::Sentence::Representation + + collection :tokens, as: 'tokens', class: Google::Apis::LanguageV1beta2::Token, decorator: Google::Apis::LanguageV1beta2::Token::Representation + + end + end + + class AnnotateTextRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document, as: 'document', class: Google::Apis::LanguageV1beta2::Document, decorator: Google::Apis::LanguageV1beta2::Document::Representation + + property :encoding_type, as: 'encodingType' + property :features, as: 'features', class: Google::Apis::LanguageV1beta2::Features, decorator: Google::Apis::LanguageV1beta2::Features::Representation + + end + end + + class AnnotateTextResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :document_sentiment, as: 'documentSentiment', class: Google::Apis::LanguageV1beta2::Sentiment, decorator: Google::Apis::LanguageV1beta2::Sentiment::Representation + + collection :entities, as: 'entities', class: Google::Apis::LanguageV1beta2::Entity, decorator: Google::Apis::LanguageV1beta2::Entity::Representation + + property :language, as: 'language' + collection :sentences, as: 'sentences', class: Google::Apis::LanguageV1beta2::Sentence, decorator: Google::Apis::LanguageV1beta2::Sentence::Representation + + collection :tokens, as: 'tokens', class: Google::Apis::LanguageV1beta2::Token, decorator: Google::Apis::LanguageV1beta2::Token::Representation + + end + end + + class DependencyEdge + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :head_token_index, as: 'headTokenIndex' + property :label, as: 'label' + end + end + + class Document + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content, as: 'content' + property :gcs_content_uri, as: 'gcsContentUri' + property :language, as: 'language' + property :type, as: 'type' + end + end + + class Entity + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :mentions, as: 'mentions', class: Google::Apis::LanguageV1beta2::EntityMention, decorator: Google::Apis::LanguageV1beta2::EntityMention::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + property :salience, as: 'salience' + property :sentiment, as: 'sentiment', class: Google::Apis::LanguageV1beta2::Sentiment, decorator: Google::Apis::LanguageV1beta2::Sentiment::Representation + + property :type, as: 'type' + end + end + + class EntityMention + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :sentiment, as: 'sentiment', class: Google::Apis::LanguageV1beta2::Sentiment, decorator: Google::Apis::LanguageV1beta2::Sentiment::Representation + + property :text, as: 'text', class: Google::Apis::LanguageV1beta2::TextSpan, decorator: Google::Apis::LanguageV1beta2::TextSpan::Representation + + property :type, as: 'type' + end + end + + class Features + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :extract_document_sentiment, as: 'extractDocumentSentiment' + property :extract_entities, as: 'extractEntities' + property :extract_entity_sentiment, as: 'extractEntitySentiment' + property :extract_syntax, as: 'extractSyntax' + end + end + + class PartOfSpeech + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :aspect, as: 'aspect' + property :case, as: 'case' + property :form, as: 'form' + property :gender, as: 'gender' + property :mood, as: 'mood' + property :number, as: 'number' + property :person, as: 'person' + property :proper, as: 'proper' + property :reciprocity, as: 'reciprocity' + property :tag, as: 'tag' + property :tense, as: 'tense' + property :voice, as: 'voice' + end + end + + class Sentence + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :sentiment, as: 'sentiment', class: Google::Apis::LanguageV1beta2::Sentiment, decorator: Google::Apis::LanguageV1beta2::Sentiment::Representation + + property :text, as: 'text', class: Google::Apis::LanguageV1beta2::TextSpan, decorator: Google::Apis::LanguageV1beta2::TextSpan::Representation + + end + end + + class Sentiment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :magnitude, as: 'magnitude' + property :score, as: 'score' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TextSpan + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :begin_offset, as: 'beginOffset' + property :content, as: 'content' + end + end + + class Token + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dependency_edge, as: 'dependencyEdge', class: Google::Apis::LanguageV1beta2::DependencyEdge, decorator: Google::Apis::LanguageV1beta2::DependencyEdge::Representation + + property :lemma, as: 'lemma' + property :part_of_speech, as: 'partOfSpeech', class: Google::Apis::LanguageV1beta2::PartOfSpeech, decorator: Google::Apis::LanguageV1beta2::PartOfSpeech::Representation + + property :text, as: 'text', class: Google::Apis::LanguageV1beta2::TextSpan, decorator: Google::Apis::LanguageV1beta2::TextSpan::Representation + + end + end + end + end +end diff --git a/generated/google/apis/language_v1beta2/service.rb b/generated/google/apis/language_v1beta2/service.rb new file mode 100644 index 000000000..1e225e056 --- /dev/null +++ b/generated/google/apis/language_v1beta2/service.rb @@ -0,0 +1,217 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module LanguageV1beta2 + # Google Cloud Natural Language API + # + # Provides natural language understanding technologies to developers. Examples + # include sentiment analysis, entity recognition, entity sentiment analysis, and + # text annotations. + # + # @example + # require 'google/apis/language_v1beta2' + # + # Language = Google::Apis::LanguageV1beta2 # Alias the module + # service = Language::CloudNaturalLanguageService.new + # + # @see https://cloud.google.com/natural-language/ + class CloudNaturalLanguageService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://language.googleapis.com/', '') + @batch_path = 'batch' + end + + # Finds named entities (currently proper names and common nouns) in the text + # along with entity types, salience, mentions for each entity, and + # other properties. + # @param [Google::Apis::LanguageV1beta2::AnalyzeEntitiesRequest] analyze_entities_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta2::AnalyzeEntitiesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta2::AnalyzeEntitiesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def analyze_document_entities(analyze_entities_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/documents:analyzeEntities', options) + command.request_representation = Google::Apis::LanguageV1beta2::AnalyzeEntitiesRequest::Representation + command.request_object = analyze_entities_request_object + command.response_representation = Google::Apis::LanguageV1beta2::AnalyzeEntitiesResponse::Representation + command.response_class = Google::Apis::LanguageV1beta2::AnalyzeEntitiesResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Finds entities, similar to AnalyzeEntities in the text and analyzes + # sentiment associated with each entity and its mentions. + # @param [Google::Apis::LanguageV1beta2::AnalyzeEntitySentimentRequest] analyze_entity_sentiment_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta2::AnalyzeEntitySentimentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta2::AnalyzeEntitySentimentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def analyze_document_entity_sentiment(analyze_entity_sentiment_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/documents:analyzeEntitySentiment', options) + command.request_representation = Google::Apis::LanguageV1beta2::AnalyzeEntitySentimentRequest::Representation + command.request_object = analyze_entity_sentiment_request_object + command.response_representation = Google::Apis::LanguageV1beta2::AnalyzeEntitySentimentResponse::Representation + command.response_class = Google::Apis::LanguageV1beta2::AnalyzeEntitySentimentResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Analyzes the sentiment of the provided text. + # @param [Google::Apis::LanguageV1beta2::AnalyzeSentimentRequest] analyze_sentiment_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta2::AnalyzeSentimentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta2::AnalyzeSentimentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def analyze_document_sentiment(analyze_sentiment_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/documents:analyzeSentiment', options) + command.request_representation = Google::Apis::LanguageV1beta2::AnalyzeSentimentRequest::Representation + command.request_object = analyze_sentiment_request_object + command.response_representation = Google::Apis::LanguageV1beta2::AnalyzeSentimentResponse::Representation + command.response_class = Google::Apis::LanguageV1beta2::AnalyzeSentimentResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Analyzes the syntax of the text and provides sentence boundaries and + # tokenization along with part of speech tags, dependency trees, and other + # properties. + # @param [Google::Apis::LanguageV1beta2::AnalyzeSyntaxRequest] analyze_syntax_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta2::AnalyzeSyntaxResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta2::AnalyzeSyntaxResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def analyze_document_syntax(analyze_syntax_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/documents:analyzeSyntax', options) + command.request_representation = Google::Apis::LanguageV1beta2::AnalyzeSyntaxRequest::Representation + command.request_object = analyze_syntax_request_object + command.response_representation = Google::Apis::LanguageV1beta2::AnalyzeSyntaxResponse::Representation + command.response_class = Google::Apis::LanguageV1beta2::AnalyzeSyntaxResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # A convenience method that provides all syntax, sentiment, entity, and + # classification features in one call. + # @param [Google::Apis::LanguageV1beta2::AnnotateTextRequest] annotate_text_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LanguageV1beta2::AnnotateTextResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LanguageV1beta2::AnnotateTextResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def annotate_document_text(annotate_text_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/documents:annotateText', options) + command.request_representation = Google::Apis::LanguageV1beta2::AnnotateTextRequest::Representation + command.request_object = annotate_text_request_object + command.response_representation = Google::Apis::LanguageV1beta2::AnnotateTextResponse::Representation + command.response_class = Google::Apis::LanguageV1beta2::AnnotateTextResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/logging_v2beta1.rb b/generated/google/apis/logging_v2beta1.rb index 02960f8a2..50cf850ea 100644 --- a/generated/google/apis/logging_v2beta1.rb +++ b/generated/google/apis/logging_v2beta1.rb @@ -25,22 +25,22 @@ module Google # @see https://cloud.google.com/logging/docs/ module LoggingV2beta1 VERSION = 'V2beta1' - REVISION = '20170710' + REVISION = '20170821' - # Submit log data for your projects - AUTH_LOGGING_WRITE = 'https://www.googleapis.com/auth/logging.write' - - # View log data for your projects - AUTH_LOGGING_READ = 'https://www.googleapis.com/auth/logging.read' - - # Administrate log data for your projects - AUTH_LOGGING_ADMIN = 'https://www.googleapis.com/auth/logging.admin' + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' # View your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' - # View and manage your data across Google Cloud Platform services - AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + # Administrate log data for your projects + AUTH_LOGGING_ADMIN = 'https://www.googleapis.com/auth/logging.admin' + + # View log data for your projects + AUTH_LOGGING_READ = 'https://www.googleapis.com/auth/logging.read' + + # Submit log data for your projects + AUTH_LOGGING_WRITE = 'https://www.googleapis.com/auth/logging.write' end end end diff --git a/generated/google/apis/logging_v2beta1/classes.rb b/generated/google/apis/logging_v2beta1/classes.rb index b5979dd99..44cdd3c61 100644 --- a/generated/google/apis/logging_v2beta1/classes.rb +++ b/generated/google/apis/logging_v2beta1/classes.rb @@ -22,10 +22,187 @@ module Google module Apis module LoggingV2beta1 + # A generic empty message that you can re-use to avoid defining duplicated empty + # messages in your APIs. A typical example is to use it as the request or the + # response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for Empty is empty JSON object ``. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # A common proto for logging HTTP requests. Only contains semantics defined by + # the HTTP specification. Product-specific logging information MUST be defined + # in a separate message. + class HttpRequest + include Google::Apis::Core::Hashable + + # The number of HTTP response bytes inserted into cache. Set only when a cache + # fill was attempted. + # Corresponds to the JSON property `cacheFillBytes` + # @return [Fixnum] + attr_accessor :cache_fill_bytes + + # Whether or not an entity was served from cache (with or without validation). + # Corresponds to the JSON property `cacheHit` + # @return [Boolean] + attr_accessor :cache_hit + alias_method :cache_hit?, :cache_hit + + # Whether or not a cache lookup was attempted. + # Corresponds to the JSON property `cacheLookup` + # @return [Boolean] + attr_accessor :cache_lookup + alias_method :cache_lookup?, :cache_lookup + + # Whether or not the response was validated with the origin server before being + # served from cache. This field is only meaningful if cache_hit is True. + # Corresponds to the JSON property `cacheValidatedWithOriginServer` + # @return [Boolean] + attr_accessor :cache_validated_with_origin_server + alias_method :cache_validated_with_origin_server?, :cache_validated_with_origin_server + + # The request processing latency on the server, from the time the request was + # received until the response was sent. + # Corresponds to the JSON property `latency` + # @return [String] + attr_accessor :latency + + # Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket" + # Corresponds to the JSON property `protocol` + # @return [String] + attr_accessor :protocol + + # The referer URL of the request, as defined in HTTP/1.1 Header Field + # Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). + # Corresponds to the JSON property `referer` + # @return [String] + attr_accessor :referer + + # The IP address (IPv4 or IPv6) of the client that issued the HTTP request. + # Examples: "192.168.1.1", "FE80::0202:B3FF:FE1E:8329". + # Corresponds to the JSON property `remoteIp` + # @return [String] + attr_accessor :remote_ip + + # The request method. Examples: "GET", "HEAD", "PUT", "POST". + # Corresponds to the JSON property `requestMethod` + # @return [String] + attr_accessor :request_method + + # The size of the HTTP request message in bytes, including the request headers + # and the request body. + # Corresponds to the JSON property `requestSize` + # @return [Fixnum] + attr_accessor :request_size + + # The scheme (http, https), the host name, the path and the query portion of the + # URL that was requested. Example: "http://example.com/some/info?color=red". + # Corresponds to the JSON property `requestUrl` + # @return [String] + attr_accessor :request_url + + # The size of the HTTP response message sent back to the client, in bytes, + # including the response headers and the response body. + # Corresponds to the JSON property `responseSize` + # @return [Fixnum] + attr_accessor :response_size + + # The IP address (IPv4 or IPv6) of the origin server that the request was sent + # to. + # Corresponds to the JSON property `serverIp` + # @return [String] + attr_accessor :server_ip + + # The response code indicating the status of response. Examples: 200, 404. + # Corresponds to the JSON property `status` + # @return [Fixnum] + attr_accessor :status + + # The user agent sent by the client. Example: "Mozilla/4.0 (compatible; MSIE 6.0; + # Windows 98; Q312461; .NET CLR 1.0.3705)". + # Corresponds to the JSON property `userAgent` + # @return [String] + attr_accessor :user_agent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cache_fill_bytes = args[:cache_fill_bytes] if args.key?(:cache_fill_bytes) + @cache_hit = args[:cache_hit] if args.key?(:cache_hit) + @cache_lookup = args[:cache_lookup] if args.key?(:cache_lookup) + @cache_validated_with_origin_server = args[:cache_validated_with_origin_server] if args.key?(:cache_validated_with_origin_server) + @latency = args[:latency] if args.key?(:latency) + @protocol = args[:protocol] if args.key?(:protocol) + @referer = args[:referer] if args.key?(:referer) + @remote_ip = args[:remote_ip] if args.key?(:remote_ip) + @request_method = args[:request_method] if args.key?(:request_method) + @request_size = args[:request_size] if args.key?(:request_size) + @request_url = args[:request_url] if args.key?(:request_url) + @response_size = args[:response_size] if args.key?(:response_size) + @server_ip = args[:server_ip] if args.key?(:server_ip) + @status = args[:status] if args.key?(:status) + @user_agent = args[:user_agent] if args.key?(:user_agent) + end + end + + # A description of a label. + class LabelDescriptor + include Google::Apis::Core::Hashable + + # A human-readable description for the label. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The label key. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # The type of data that can be assigned to the label. + # Corresponds to the JSON property `valueType` + # @return [String] + attr_accessor :value_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @key = args[:key] if args.key?(:key) + @value_type = args[:value_type] if args.key?(:value_type) + end + end + # The parameters to ListLogEntries. class ListLogEntriesRequest include Google::Apis::Core::Hashable + # Optional. A filter that chooses which log entries to return. See Advanced Logs + # Filters. Only log entries that match the filter are returned. An empty filter + # matches all log entries in the resources listed in resource_names. Referencing + # a parent resource that is not listed in resource_names will cause the filter + # to return no results. The maximum length of the filter is 20000 characters. + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + # Optional. How the results should be sorted. Presently, the only permitted # values are "timestamp asc" (default) and "timestamp desc". The first option # returns entries in order of increasing values of LogEntry.timestamp (oldest @@ -36,6 +213,29 @@ module Google # @return [String] attr_accessor :order_by + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of next_page_token in the response + # indicates that more results might be available. + # Corresponds to the JSON property `pageSize` + # @return [Fixnum] + attr_accessor :page_size + + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. page_token must be the value of next_page_token + # from the previous response. The values of other method parameters should be + # identical to those in the previous call. + # Corresponds to the JSON property `pageToken` + # @return [String] + attr_accessor :page_token + + # Deprecated. Use resource_names instead. One or more project identifiers or + # project numbers from which to retrieve log entries. Example: "my-project-1A". + # If present, these project identifiers are converted to resource name format + # and added to the list of resources in resource_names. + # Corresponds to the JSON property `projectIds` + # @return [Array] + attr_accessor :project_ids + # Required. Names of one or more parent resources from which to retrieve log # entries: # "projects/[PROJECT_ID]" @@ -47,234 +247,44 @@ module Google # @return [Array] attr_accessor :resource_names - # Deprecated. Use resource_names instead. One or more project identifiers or - # project numbers from which to retrieve log entries. Example: "my-project-1A". - # If present, these project identifiers are converted to resource name format - # and added to the list of resources in resource_names. - # Corresponds to the JSON property `projectIds` - # @return [Array] - attr_accessor :project_ids - - # Optional. A filter that chooses which log entries to return. See Advanced Logs - # Filters. Only log entries that match the filter are returned. An empty filter - # matches all log entries in the resources listed in resource_names. Referencing - # a parent resource that is not listed in resource_names will cause the filter - # to return no results. The maximum length of the filter is 20000 characters. - # Corresponds to the JSON property `filter` - # @return [String] - attr_accessor :filter - - # Optional. If present, then retrieve the next batch of results from the - # preceding call to this method. page_token must be the value of next_page_token - # from the previous response. The values of other method parameters should be - # identical to those in the previous call. - # Corresponds to the JSON property `pageToken` - # @return [String] - attr_accessor :page_token - - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of next_page_token in the response - # indicates that more results might be available. - # Corresponds to the JSON property `pageSize` - # @return [Fixnum] - attr_accessor :page_size - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @order_by = args[:order_by] if args.key?(:order_by) - @resource_names = args[:resource_names] if args.key?(:resource_names) - @project_ids = args[:project_ids] if args.key?(:project_ids) @filter = args[:filter] if args.key?(:filter) - @page_token = args[:page_token] if args.key?(:page_token) + @order_by = args[:order_by] if args.key?(:order_by) @page_size = args[:page_size] if args.key?(:page_size) + @page_token = args[:page_token] if args.key?(:page_token) + @project_ids = args[:project_ids] if args.key?(:project_ids) + @resource_names = args[:resource_names] if args.key?(:resource_names) end end - # Complete log information about a single HTTP request to an App Engine - # application. - class RequestLog + # Result returned from ListLogEntries. + class ListLogEntriesResponse include Google::Apis::Core::Hashable - # Origin IP address. - # Corresponds to the JSON property `ip` + # A list of log entries. If entries is empty, nextPageToken may still be + # returned, indicating that more entries may exist. See nextPageToken for more + # information. + # Corresponds to the JSON property `entries` + # @return [Array] + attr_accessor :entries + + # If there might be more results than those appearing in this response, then + # nextPageToken is included. To get the next set of results, call this method + # again using the value of nextPageToken as pageToken.If a value for + # next_page_token appears and the entries field is empty, it means that the + # search found no log entries so far but it did not have time to search all the + # possible log entries. Retry the method with this value for page_token to + # continue the search. Alternatively, consider speeding up the search by + # changing your filter to specify a single log name or resource type, or to + # narrow the time range of the search. + # Corresponds to the JSON property `nextPageToken` # @return [String] - attr_accessor :ip - - # Application that handled this request. - # Corresponds to the JSON property `appId` - # @return [String] - attr_accessor :app_id - - # App Engine release version. - # Corresponds to the JSON property `appEngineRelease` - # @return [String] - attr_accessor :app_engine_release - - # Request method. Example: "GET", "HEAD", "PUT", "POST", "DELETE". - # Corresponds to the JSON property `method` - # @return [String] - attr_accessor :method_prop - - # An indication of the relative cost of serving this request. - # Corresponds to the JSON property `cost` - # @return [Float] - attr_accessor :cost - - # An identifier for the instance that handled the request. - # Corresponds to the JSON property `instanceId` - # @return [String] - attr_accessor :instance_id - - # Number of CPU megacycles used to process request. - # Corresponds to the JSON property `megaCycles` - # @return [Fixnum] - attr_accessor :mega_cycles - - # Whether this is the first RequestLog entry for this request. If an active - # request has several RequestLog entries written to Stackdriver Logging, then - # this field will be set for one of them. - # Corresponds to the JSON property `first` - # @return [Boolean] - attr_accessor :first - alias_method :first?, :first - - # Version of the application that handled this request. - # Corresponds to the JSON property `versionId` - # @return [String] - attr_accessor :version_id - - # Module of the application that handled this request. - # Corresponds to the JSON property `moduleId` - # @return [String] - attr_accessor :module_id - - # Time when the request finished. - # Corresponds to the JSON property `endTime` - # @return [String] - attr_accessor :end_time - - # User agent that made the request. - # Corresponds to the JSON property `userAgent` - # @return [String] - attr_accessor :user_agent - - # Whether this was a loading request for the instance. - # Corresponds to the JSON property `wasLoadingRequest` - # @return [Boolean] - attr_accessor :was_loading_request - alias_method :was_loading_request?, :was_loading_request - - # Source code for the application that handled this request. There can be more - # than one source reference per deployed application if source code is - # distributed among multiple repositories. - # Corresponds to the JSON property `sourceReference` - # @return [Array] - attr_accessor :source_reference - - # Size in bytes sent back to client by request. - # Corresponds to the JSON property `responseSize` - # @return [Fixnum] - attr_accessor :response_size - - # Stackdriver Trace identifier for this request. - # Corresponds to the JSON property `traceId` - # @return [String] - attr_accessor :trace_id - - # A list of log lines emitted by the application while serving this request. - # Corresponds to the JSON property `line` - # @return [Array] - attr_accessor :line - - # Referrer URL of request. - # Corresponds to the JSON property `referrer` - # @return [String] - attr_accessor :referrer - - # Queue name of the request, in the case of an offline request. - # Corresponds to the JSON property `taskQueueName` - # @return [String] - attr_accessor :task_queue_name - - # Globally unique identifier for a request, which is based on the request start - # time. Request IDs for requests which started later will compare greater as - # strings than those for requests which started earlier. - # Corresponds to the JSON property `requestId` - # @return [String] - attr_accessor :request_id - - # The logged-in user who made the request.Most likely, this is the part of the - # user's email before the @ sign. The field value is the same for different - # requests from the same user, but different users can have similar names. This - # information is also available to the application via the App Engine Users API. - # This field will be populated starting with App Engine 1.9.21. - # Corresponds to the JSON property `nickname` - # @return [String] - attr_accessor :nickname - - # HTTP response status code. Example: 200, 404. - # Corresponds to the JSON property `status` - # @return [Fixnum] - attr_accessor :status - - # Contains the path and query portion of the URL that was requested. For example, - # if the URL was "http://example.com/app?name=val", the resource would be "/app? - # name=val". The fragment identifier, which is identified by the # character, is - # not included. - # Corresponds to the JSON property `resource` - # @return [String] - attr_accessor :resource - - # Time this request spent in the pending request queue. - # Corresponds to the JSON property `pendingTime` - # @return [String] - attr_accessor :pending_time - - # Task name of the request, in the case of an offline request. - # Corresponds to the JSON property `taskName` - # @return [String] - attr_accessor :task_name - - # File or class that handled the request. - # Corresponds to the JSON property `urlMapEntry` - # @return [String] - attr_accessor :url_map_entry - - # If the instance processing this request belongs to a manually scaled module, - # then this is the 0-based index of the instance. Otherwise, this value is -1. - # Corresponds to the JSON property `instanceIndex` - # @return [Fixnum] - attr_accessor :instance_index - - # Whether this request is finished or active. - # Corresponds to the JSON property `finished` - # @return [Boolean] - attr_accessor :finished - alias_method :finished?, :finished - - # Internet host and port number of the resource being requested. - # Corresponds to the JSON property `host` - # @return [String] - attr_accessor :host - - # HTTP version of request. Example: "HTTP/1.1". - # Corresponds to the JSON property `httpVersion` - # @return [String] - attr_accessor :http_version - - # Time when the request started. - # Corresponds to the JSON property `startTime` - # @return [String] - attr_accessor :start_time - - # Latency of the request. - # Corresponds to the JSON property `latency` - # @return [String] - attr_accessor :latency + attr_accessor :next_page_token def initialize(**args) update!(**args) @@ -282,38 +292,63 @@ module Google # Update properties of this object def update!(**args) - @ip = args[:ip] if args.key?(:ip) - @app_id = args[:app_id] if args.key?(:app_id) - @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) - @method_prop = args[:method_prop] if args.key?(:method_prop) - @cost = args[:cost] if args.key?(:cost) - @instance_id = args[:instance_id] if args.key?(:instance_id) - @mega_cycles = args[:mega_cycles] if args.key?(:mega_cycles) - @first = args[:first] if args.key?(:first) - @version_id = args[:version_id] if args.key?(:version_id) - @module_id = args[:module_id] if args.key?(:module_id) - @end_time = args[:end_time] if args.key?(:end_time) - @user_agent = args[:user_agent] if args.key?(:user_agent) - @was_loading_request = args[:was_loading_request] if args.key?(:was_loading_request) - @source_reference = args[:source_reference] if args.key?(:source_reference) - @response_size = args[:response_size] if args.key?(:response_size) - @trace_id = args[:trace_id] if args.key?(:trace_id) - @line = args[:line] if args.key?(:line) - @referrer = args[:referrer] if args.key?(:referrer) - @task_queue_name = args[:task_queue_name] if args.key?(:task_queue_name) - @request_id = args[:request_id] if args.key?(:request_id) - @nickname = args[:nickname] if args.key?(:nickname) - @status = args[:status] if args.key?(:status) - @resource = args[:resource] if args.key?(:resource) - @pending_time = args[:pending_time] if args.key?(:pending_time) - @task_name = args[:task_name] if args.key?(:task_name) - @url_map_entry = args[:url_map_entry] if args.key?(:url_map_entry) - @instance_index = args[:instance_index] if args.key?(:instance_index) - @finished = args[:finished] if args.key?(:finished) - @host = args[:host] if args.key?(:host) - @http_version = args[:http_version] if args.key?(:http_version) - @start_time = args[:start_time] if args.key?(:start_time) - @latency = args[:latency] if args.key?(:latency) + @entries = args[:entries] if args.key?(:entries) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Result returned from ListLogMetrics. + class ListLogMetricsResponse + include Google::Apis::Core::Hashable + + # A list of logs-based metrics. + # Corresponds to the JSON property `metrics` + # @return [Array] + attr_accessor :metrics + + # If there might be more results than appear in this response, then + # nextPageToken is included. To get the next set of results, call this method + # again using the value of nextPageToken as pageToken. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @metrics = args[:metrics] if args.key?(:metrics) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Result returned from ListLogs. + class ListLogsResponse + include Google::Apis::Core::Hashable + + # A list of log names. For example, "projects/my-project/syslog" or " + # organizations/123/cloudresourcemanager.googleapis.com%2Factivity". + # Corresponds to the JSON property `logNames` + # @return [Array] + attr_accessor :log_names + + # If there might be more results than those appearing in this response, then + # nextPageToken is included. To get the next set of results, call this method + # again using the value of nextPageToken as pageToken. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_names = args[:log_names] if args.key?(:log_names) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end @@ -344,22 +379,21 @@ module Google end end - # A reference to a particular snapshot of the source tree used to build and - # deploy an application. - class SourceReference + # Result returned from ListSinks. + class ListSinksResponse include Google::Apis::Core::Hashable - # The canonical and persistent identifier of the deployed revision. Example (git) - # : "0035781c50ec7aa23385dc841529ce8a4b70db1b" - # Corresponds to the JSON property `revisionId` + # If there might be more results than appear in this response, then + # nextPageToken is included. To get the next set of results, call the same + # method again using the value of nextPageToken as pageToken. + # Corresponds to the JSON property `nextPageToken` # @return [String] - attr_accessor :revision_id + attr_accessor :next_page_token - # Optional. A URI string identifying the repository. Example: "https://github. - # com/GoogleCloudPlatform/kubernetes.git" - # Corresponds to the JSON property `repository` - # @return [String] - attr_accessor :repository + # A list of sinks. + # Corresponds to the JSON property `sinks` + # @return [Array] + attr_accessor :sinks def initialize(**args) update!(**args) @@ -367,8 +401,267 @@ module Google # Update properties of this object def update!(**args) - @revision_id = args[:revision_id] if args.key?(:revision_id) - @repository = args[:repository] if args.key?(:repository) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @sinks = args[:sinks] if args.key?(:sinks) + end + end + + # An individual entry in a log. + class LogEntry + include Google::Apis::Core::Hashable + + # A common proto for logging HTTP requests. Only contains semantics defined by + # the HTTP specification. Product-specific logging information MUST be defined + # in a separate message. + # Corresponds to the JSON property `httpRequest` + # @return [Google::Apis::LoggingV2beta1::HttpRequest] + attr_accessor :http_request + + # Optional. A unique identifier for the log entry. If you provide a value, then + # Stackdriver Logging considers other log entries in the same project, with the + # same timestamp, and with the same insert_id to be duplicates which can be + # removed. If omitted in new log entries, then Stackdriver Logging will insert + # its own unique identifier. The insert_id is used to order log entries that + # have the same timestamp value. + # Corresponds to the JSON property `insertId` + # @return [String] + attr_accessor :insert_id + + # The log entry payload, represented as a structure that is expressed as a JSON + # object. + # Corresponds to the JSON property `jsonPayload` + # @return [Hash] + attr_accessor :json_payload + + # Optional. A set of user-defined (key, value) data that provides additional + # information about the log entry. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Required. The resource name of the log to which this log entry belongs: + # "projects/[PROJECT_ID]/logs/[LOG_ID]" + # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" + # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" + # "folders/[FOLDER_ID]/logs/[LOG_ID]" + # [LOG_ID] must be URL-encoded within log_name. Example: "organizations/ + # 1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity". [LOG_ID] must + # be less than 512 characters long and can only include the following characters: + # upper and lower case alphanumeric characters, forward-slash, underscore, + # hyphen, and period.For backward compatibility, if log_name begins with a + # forward-slash, such as /projects/..., then the log entry is ingested as usual + # but the forward-slash is removed. Listing the log entry will not show the + # leading slash and filtering for a log name with a leading slash will never + # return any results. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + # Additional information about a potentially long-running operation with which a + # log entry is associated. + # Corresponds to the JSON property `operation` + # @return [Google::Apis::LoggingV2beta1::LogEntryOperation] + attr_accessor :operation + + # The log entry payload, represented as a protocol buffer. Some Google Cloud + # Platform services use this field for their log entry payloads. + # Corresponds to the JSON property `protoPayload` + # @return [Hash] + attr_accessor :proto_payload + + # Output only. The time the log entry was received by Stackdriver Logging. + # Corresponds to the JSON property `receiveTimestamp` + # @return [String] + attr_accessor :receive_timestamp + + # An object representing a resource that can be used for monitoring, logging, + # billing, or other purposes. Examples include virtual machine instances, + # databases, and storage devices such as disks. The type field identifies a + # MonitoredResourceDescriptor object that describes the resource's schema. + # Information in the labels field identifies the actual resource and its + # attributes according to the schema. For example, a particular Compute Engine + # VM instance could be represented by the following object, because the + # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " + # zone": + # ` "type": "gce_instance", + # "labels": ` "instance_id": "12345678901234", + # "zone": "us-central1-a" `` + # Corresponds to the JSON property `resource` + # @return [Google::Apis::LoggingV2beta1::MonitoredResource] + attr_accessor :resource + + # Optional. The severity of the log entry. The default value is LogSeverity. + # DEFAULT. + # Corresponds to the JSON property `severity` + # @return [String] + attr_accessor :severity + + # Additional information about the source code location that produced the log + # entry. + # Corresponds to the JSON property `sourceLocation` + # @return [Google::Apis::LoggingV2beta1::LogEntrySourceLocation] + attr_accessor :source_location + + # The log entry payload, represented as a Unicode string (UTF-8). + # Corresponds to the JSON property `textPayload` + # @return [String] + attr_accessor :text_payload + + # Optional. The time the event described by the log entry occurred. If omitted + # in a new log entry, Stackdriver Logging will insert the time the log entry is + # received. Stackdriver Logging might reject log entries whose time stamps are + # more than a couple of hours in the future. Log entries with time stamps in the + # past are accepted. + # Corresponds to the JSON property `timestamp` + # @return [String] + attr_accessor :timestamp + + # Optional. Resource name of the trace associated with the log entry, if any. If + # it contains a relative resource name, the name is assumed to be relative to // + # tracing.googleapis.com. Example: projects/my-projectid/traces/ + # 06796866738c859f2f19b7cfb3214824 + # Corresponds to the JSON property `trace` + # @return [String] + attr_accessor :trace + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @http_request = args[:http_request] if args.key?(:http_request) + @insert_id = args[:insert_id] if args.key?(:insert_id) + @json_payload = args[:json_payload] if args.key?(:json_payload) + @labels = args[:labels] if args.key?(:labels) + @log_name = args[:log_name] if args.key?(:log_name) + @operation = args[:operation] if args.key?(:operation) + @proto_payload = args[:proto_payload] if args.key?(:proto_payload) + @receive_timestamp = args[:receive_timestamp] if args.key?(:receive_timestamp) + @resource = args[:resource] if args.key?(:resource) + @severity = args[:severity] if args.key?(:severity) + @source_location = args[:source_location] if args.key?(:source_location) + @text_payload = args[:text_payload] if args.key?(:text_payload) + @timestamp = args[:timestamp] if args.key?(:timestamp) + @trace = args[:trace] if args.key?(:trace) + end + end + + # Additional information about a potentially long-running operation with which a + # log entry is associated. + class LogEntryOperation + include Google::Apis::Core::Hashable + + # Optional. Set this to True if this is the first log entry in the operation. + # Corresponds to the JSON property `first` + # @return [Boolean] + attr_accessor :first + alias_method :first?, :first + + # Optional. An arbitrary operation identifier. Log entries with the same + # identifier are assumed to be part of the same operation. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Optional. Set this to True if this is the last log entry in the operation. + # Corresponds to the JSON property `last` + # @return [Boolean] + attr_accessor :last + alias_method :last?, :last + + # Optional. An arbitrary producer identifier. The combination of id and producer + # must be globally unique. Examples for producer: "MyDivision.MyBigCompany.com", + # "github.com/MyProject/MyApplication". + # Corresponds to the JSON property `producer` + # @return [String] + attr_accessor :producer + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @first = args[:first] if args.key?(:first) + @id = args[:id] if args.key?(:id) + @last = args[:last] if args.key?(:last) + @producer = args[:producer] if args.key?(:producer) + end + end + + # Additional information about the source code location that produced the log + # entry. + class LogEntrySourceLocation + include Google::Apis::Core::Hashable + + # Optional. Source file name. Depending on the runtime environment, this might + # be a simple name or a fully-qualified name. + # Corresponds to the JSON property `file` + # @return [String] + attr_accessor :file + + # Optional. Human-readable name of the function or method being invoked, with + # optional context such as the class or package name. This information may be + # used in contexts such as the logs viewer, where a file and line number are + # less meaningful. The format can vary by language. For example: qual.if.ied. + # Class.method (Java), dir/package.func (Go), function (Python). + # Corresponds to the JSON property `function` + # @return [String] + attr_accessor :function + + # Optional. Line within the source file. 1-based; 0 indicates no line number + # available. + # Corresponds to the JSON property `line` + # @return [Fixnum] + attr_accessor :line + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file = args[:file] if args.key?(:file) + @function = args[:function] if args.key?(:function) + @line = args[:line] if args.key?(:line) + end + end + + # Application log line emitted while processing a request. + class LogLine + include Google::Apis::Core::Hashable + + # App-provided log message. + # Corresponds to the JSON property `logMessage` + # @return [String] + attr_accessor :log_message + + # Severity of this log entry. + # Corresponds to the JSON property `severity` + # @return [String] + attr_accessor :severity + + # Specifies a location in a source code file. + # Corresponds to the JSON property `sourceLocation` + # @return [Google::Apis::LoggingV2beta1::SourceLocation] + attr_accessor :source_location + + # Approximate time when this log entry was made. + # Corresponds to the JSON property `time` + # @return [String] + attr_accessor :time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_message = args[:log_message] if args.key?(:log_message) + @severity = args[:severity] if args.key?(:severity) + @source_location = args[:source_location] if args.key?(:source_location) + @time = args[:time] if args.key?(:time) end end @@ -377,6 +670,11 @@ module Google class LogMetric include Google::Apis::Core::Hashable + # Optional. A description of this metric, which is used in documentation. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + # Required. An advanced logs filter which is used to match log entries. Example: # "resource.type=gae_app AND severity>=ERROR" # The maximum length of the filter is 20000 characters. @@ -397,14 +695,8 @@ module Google # @return [String] attr_accessor :name - # Optional. A description of this metric, which is used in documentation. - # Corresponds to the JSON property `description` - # @return [String] - attr_accessor :description - - # Output only. The API version that created or updated this metric. The version - # also dictates the syntax of the filter expression. When a value for this field - # is missing, the default value of V2 should be assumed. + # Deprecated. The API version that created or updated this metric. The v2 format + # is used by default and cannot be changed. # Corresponds to the JSON property `version` # @return [String] attr_accessor :version @@ -415,66 +707,114 @@ module Google # Update properties of this object def update!(**args) + @description = args[:description] if args.key?(:description) @filter = args[:filter] if args.key?(:filter) @name = args[:name] if args.key?(:name) - @description = args[:description] if args.key?(:description) @version = args[:version] if args.key?(:version) end end - # Result returned from WriteLogEntries. empty - class WriteLogEntriesResponse + # Describes a sink used to export log entries to one of the following + # destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a + # Cloud Pub/Sub topic. A logs filter controls which log entries are exported. + # The sink must be created within a project, organization, billing account, or + # folder. + class LogSink include Google::Apis::Core::Hashable + # Required. The export destination: + # "storage.googleapis.com/[GCS_BUCKET]" + # "bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]" + # "pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]" + # The sink's writer_identity, set when the sink is created, must have permission + # to write to the destination or else the log entries are not exported. For more + # information, see Exporting Logs With Sinks. + # Corresponds to the JSON property `destination` + # @return [String] + attr_accessor :destination + + # Optional. The time at which this sink will stop exporting log entries. Log + # entries are exported only if their timestamp is earlier than the end time. If + # this field is not supplied, there is no end time. If both a start time and an + # end time are provided, then the end time must be later than the start time. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Optional. An advanced logs filter. The only exported log entries are those + # that are in the resource owning the sink and that match the filter. The filter + # must use the log entry format specified by the output_version_format parameter. + # For example, in the v2 format: + # logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + + # Optional. This field applies only to sinks owned by organizations and folders. + # If the field is false, the default, only the logs owned by the sink's parent + # resource are available for export. If the field is true, then logs from all + # the projects, folders, and billing accounts contained in the sink's parent + # resource are also available for export. Whether a particular log entry from + # the children is exported depends on the sink's filter expression. For example, + # if this field is true, then the filter resource.type=gce_instance would export + # all Compute Engine VM instance log entries from all projects in the sink's + # parent. To only export entries from certain child projects, filter on the + # project part of the log name: + # logName:("projects/test-project1/" OR "projects/test-project2/") AND + # resource.type=gce_instance + # Corresponds to the JSON property `includeChildren` + # @return [Boolean] + attr_accessor :include_children + alias_method :include_children?, :include_children + + # Required. The client-assigned sink identifier, unique within the project. + # Example: "my-syslog-errors-to-pubsub". Sink identifiers are limited to 100 + # characters and can include only the following characters: upper and lower-case + # alphanumeric characters, underscores, hyphens, and periods. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Deprecated. The log entry format to use for this sink's exported log entries. + # The v2 format is used by default and cannot be changed. + # Corresponds to the JSON property `outputVersionFormat` + # @return [String] + attr_accessor :output_version_format + + # Optional. The time at which this sink will begin exporting log entries. Log + # entries are exported only if their timestamp is not earlier than the start + # time. The default value of this field is the time the sink is created or + # updated. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Output only. An IAM identity—a service account or group—under + # which Stackdriver Logging writes the exported log entries to the sink's + # destination. This field is set by sinks.create and sinks.update, based on the + # setting of unique_writer_identity in those methods.Until you grant this + # identity write-access to the destination, log entry exports from this sink + # will fail. For more information, see Granting access for a resource. Consult + # the destination service's documentation to determine the appropriate IAM roles + # to assign to the identity. + # Corresponds to the JSON property `writerIdentity` + # @return [String] + attr_accessor :writer_identity + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - end - end - - # Additional information about a potentially long-running operation with which a - # log entry is associated. - class LogEntryOperation - include Google::Apis::Core::Hashable - - # Optional. Set this to True if this is the first log entry in the operation. - # Corresponds to the JSON property `first` - # @return [Boolean] - attr_accessor :first - alias_method :first?, :first - - # Optional. An arbitrary producer identifier. The combination of id and producer - # must be globally unique. Examples for producer: "MyDivision.MyBigCompany.com", - # "github.com/MyProject/MyApplication". - # Corresponds to the JSON property `producer` - # @return [String] - attr_accessor :producer - - # Optional. Set this to True if this is the last log entry in the operation. - # Corresponds to the JSON property `last` - # @return [Boolean] - attr_accessor :last - alias_method :last?, :last - - # Optional. An arbitrary operation identifier. Log entries with the same - # identifier are assumed to be part of the same operation. - # Corresponds to the JSON property `id` - # @return [String] - attr_accessor :id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @first = args[:first] if args.key?(:first) - @producer = args[:producer] if args.key?(:producer) - @last = args[:last] if args.key?(:last) - @id = args[:id] if args.key?(:id) + @destination = args[:destination] if args.key?(:destination) + @end_time = args[:end_time] if args.key?(:end_time) + @filter = args[:filter] if args.key?(:filter) + @include_children = args[:include_children] if args.key?(:include_children) + @name = args[:name] if args.key?(:name) + @output_version_format = args[:output_version_format] if args.key?(:output_version_format) + @start_time = args[:start_time] if args.key?(:start_time) + @writer_identity = args[:writer_identity] if args.key?(:writer_identity) end end @@ -518,387 +858,6 @@ module Google end end - # The parameters to WriteLogEntries. - class WriteLogEntriesRequest - include Google::Apis::Core::Hashable - - # Optional. Default labels that are added to the labels field of all log entries - # in entries. If a log entry already has a label with the same key as a label in - # this parameter, then the log entry's label is not changed. See LogEntry. - # Corresponds to the JSON property `labels` - # @return [Hash] - attr_accessor :labels - - # An object representing a resource that can be used for monitoring, logging, - # billing, or other purposes. Examples include virtual machine instances, - # databases, and storage devices such as disks. The type field identifies a - # MonitoredResourceDescriptor object that describes the resource's schema. - # Information in the labels field identifies the actual resource and its - # attributes according to the schema. For example, a particular Compute Engine - # VM instance could be represented by the following object, because the - # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " - # zone": - # ` "type": "gce_instance", - # "labels": ` "instance_id": "12345678901234", - # "zone": "us-central1-a" `` - # Corresponds to the JSON property `resource` - # @return [Google::Apis::LoggingV2beta1::MonitoredResource] - attr_accessor :resource - - # Required. The log entries to write. Values supplied for the fields log_name, - # resource, and labels in this entries.write request are inserted into those log - # entries in this list that do not provide their own values.Stackdriver Logging - # also creates and inserts values for timestamp and insert_id if the entries do - # not provide them. The created insert_id for the N'th entry in this list will - # be greater than earlier entries and less than later entries. Otherwise, the - # order of log entries in this list does not matter.To improve throughput and to - # avoid exceeding the quota limit for calls to entries.write, you should write - # multiple log entries at once rather than calling this method for each - # individual log entry. - # Corresponds to the JSON property `entries` - # @return [Array] - attr_accessor :entries - - # Optional. A default log resource name that is assigned to all log entries in - # entries that do not specify a value for log_name: - # "projects/[PROJECT_ID]/logs/[LOG_ID]" - # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" - # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" - # "folders/[FOLDER_ID]/logs/[LOG_ID]" - # [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog" - # or "organizations/1234567890/logs/cloudresourcemanager.googleapis.com% - # 2Factivity". For more information about log names, see LogEntry. - # Corresponds to the JSON property `logName` - # @return [String] - attr_accessor :log_name - - # Optional. Whether valid entries should be written even if some other entries - # fail due to INVALID_ARGUMENT or PERMISSION_DENIED errors. If any entry is not - # written, then the response status is the error associated with one of the - # failed entries and the response includes error details keyed by the entries' - # zero-based index in the entries.write method. - # Corresponds to the JSON property `partialSuccess` - # @return [Boolean] - attr_accessor :partial_success - alias_method :partial_success?, :partial_success - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @labels = args[:labels] if args.key?(:labels) - @resource = args[:resource] if args.key?(:resource) - @entries = args[:entries] if args.key?(:entries) - @log_name = args[:log_name] if args.key?(:log_name) - @partial_success = args[:partial_success] if args.key?(:partial_success) - end - end - - # Describes a sink used to export log entries to one of the following - # destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a - # Cloud Pub/Sub topic. A logs filter controls which log entries are exported. - # The sink must be created within a project, organization, billing account, or - # folder. - class LogSink - include Google::Apis::Core::Hashable - - # Optional. This field applies only to sinks owned by organizations and folders. - # If the field is false, the default, only the logs owned by the sink's parent - # resource are available for export. If the field is true, then logs from all - # the projects, folders, and billing accounts contained in the sink's parent - # resource are also available for export. Whether a particular log entry from - # the children is exported depends on the sink's filter expression. For example, - # if this field is true, then the filter resource.type=gce_instance would export - # all Compute Engine VM instance log entries from all projects in the sink's - # parent. To only export entries from certain child projects, filter on the - # project part of the log name: - # logName:("projects/test-project1/" OR "projects/test-project2/") AND - # resource.type=gce_instance - # Corresponds to the JSON property `includeChildren` - # @return [Boolean] - attr_accessor :include_children - alias_method :include_children?, :include_children - - # Required. The export destination: - # "storage.googleapis.com/[GCS_BUCKET]" - # "bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]" - # "pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]" - # The sink's writer_identity, set when the sink is created, must have permission - # to write to the destination or else the log entries are not exported. For more - # information, see Exporting Logs With Sinks. - # Corresponds to the JSON property `destination` - # @return [String] - attr_accessor :destination - - # Optional. An advanced logs filter. The only exported log entries are those - # that are in the resource owning the sink and that match the filter. The filter - # must use the log entry format specified by the output_version_format parameter. - # For example, in the v2 format: - # logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR - # Corresponds to the JSON property `filter` - # @return [String] - attr_accessor :filter - - # Optional. The time at which this sink will stop exporting log entries. Log - # entries are exported only if their timestamp is earlier than the end time. If - # this field is not supplied, there is no end time. If both a start time and an - # end time are provided, then the end time must be later than the start time. - # Corresponds to the JSON property `endTime` - # @return [String] - attr_accessor :end_time - - # Optional. The time at which this sink will begin exporting log entries. Log - # entries are exported only if their timestamp is not earlier than the start - # time. The default value of this field is the time the sink is created or - # updated. - # Corresponds to the JSON property `startTime` - # @return [String] - attr_accessor :start_time - - # Output only. An IAM identity—a service account or group—under - # which Stackdriver Logging writes the exported log entries to the sink's - # destination. This field is set by sinks.create and sinks.update, based on the - # setting of unique_writer_identity in those methods.Until you grant this - # identity write-access to the destination, log entry exports from this sink - # will fail. For more information, see Granting access for a resource. Consult - # the destination service's documentation to determine the appropriate IAM roles - # to assign to the identity. - # Corresponds to the JSON property `writerIdentity` - # @return [String] - attr_accessor :writer_identity - - # Optional. The log entry format to use for this sink's exported log entries. - # The v2 format is used by default. The v1 format is deprecated and should be - # used only as part of a migration effort to v2. See Migration to the v2 API. - # Corresponds to the JSON property `outputVersionFormat` - # @return [String] - attr_accessor :output_version_format - - # Required. The client-assigned sink identifier, unique within the project. - # Example: "my-syslog-errors-to-pubsub". Sink identifiers are limited to 100 - # characters and can include only the following characters: upper and lower-case - # alphanumeric characters, underscores, hyphens, and periods. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @include_children = args[:include_children] if args.key?(:include_children) - @destination = args[:destination] if args.key?(:destination) - @filter = args[:filter] if args.key?(:filter) - @end_time = args[:end_time] if args.key?(:end_time) - @start_time = args[:start_time] if args.key?(:start_time) - @writer_identity = args[:writer_identity] if args.key?(:writer_identity) - @output_version_format = args[:output_version_format] if args.key?(:output_version_format) - @name = args[:name] if args.key?(:name) - end - end - - # Result returned from ListLogs. - class ListLogsResponse - include Google::Apis::Core::Hashable - - # If there might be more results than those appearing in this response, then - # nextPageToken is included. To get the next set of results, call this method - # again using the value of nextPageToken as pageToken. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - # A list of log names. For example, "projects/my-project/syslog" or " - # organizations/123/cloudresourcemanager.googleapis.com%2Factivity". - # Corresponds to the JSON property `logNames` - # @return [Array] - attr_accessor :log_names - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - @log_names = args[:log_names] if args.key?(:log_names) - end - end - - # A common proto for logging HTTP requests. Only contains semantics defined by - # the HTTP specification. Product-specific logging information MUST be defined - # in a separate message. - class HttpRequest - include Google::Apis::Core::Hashable - - # Whether or not a cache lookup was attempted. - # Corresponds to the JSON property `cacheLookup` - # @return [Boolean] - attr_accessor :cache_lookup - alias_method :cache_lookup?, :cache_lookup - - # Whether or not an entity was served from cache (with or without validation). - # Corresponds to the JSON property `cacheHit` - # @return [Boolean] - attr_accessor :cache_hit - alias_method :cache_hit?, :cache_hit - - # Whether or not the response was validated with the origin server before being - # served from cache. This field is only meaningful if cache_hit is True. - # Corresponds to the JSON property `cacheValidatedWithOriginServer` - # @return [Boolean] - attr_accessor :cache_validated_with_origin_server - alias_method :cache_validated_with_origin_server?, :cache_validated_with_origin_server - - # The response code indicating the status of response. Examples: 200, 404. - # Corresponds to the JSON property `status` - # @return [Fixnum] - attr_accessor :status - - # The referer URL of the request, as defined in HTTP/1.1 Header Field - # Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). - # Corresponds to the JSON property `referer` - # @return [String] - attr_accessor :referer - - # The user agent sent by the client. Example: "Mozilla/4.0 (compatible; MSIE 6.0; - # Windows 98; Q312461; .NET CLR 1.0.3705)". - # Corresponds to the JSON property `userAgent` - # @return [String] - attr_accessor :user_agent - - # The request processing latency on the server, from the time the request was - # received until the response was sent. - # Corresponds to the JSON property `latency` - # @return [String] - attr_accessor :latency - - # The number of HTTP response bytes inserted into cache. Set only when a cache - # fill was attempted. - # Corresponds to the JSON property `cacheFillBytes` - # @return [Fixnum] - attr_accessor :cache_fill_bytes - - # The request method. Examples: "GET", "HEAD", "PUT", "POST". - # Corresponds to the JSON property `requestMethod` - # @return [String] - attr_accessor :request_method - - # The size of the HTTP response message sent back to the client, in bytes, - # including the response headers and the response body. - # Corresponds to the JSON property `responseSize` - # @return [Fixnum] - attr_accessor :response_size - - # The size of the HTTP request message in bytes, including the request headers - # and the request body. - # Corresponds to the JSON property `requestSize` - # @return [Fixnum] - attr_accessor :request_size - - # The scheme (http, https), the host name, the path and the query portion of the - # URL that was requested. Example: "http://example.com/some/info?color=red". - # Corresponds to the JSON property `requestUrl` - # @return [String] - attr_accessor :request_url - - # The IP address (IPv4 or IPv6) of the origin server that the request was sent - # to. - # Corresponds to the JSON property `serverIp` - # @return [String] - attr_accessor :server_ip - - # The IP address (IPv4 or IPv6) of the client that issued the HTTP request. - # Examples: "192.168.1.1", "FE80::0202:B3FF:FE1E:8329". - # Corresponds to the JSON property `remoteIp` - # @return [String] - attr_accessor :remote_ip - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @cache_lookup = args[:cache_lookup] if args.key?(:cache_lookup) - @cache_hit = args[:cache_hit] if args.key?(:cache_hit) - @cache_validated_with_origin_server = args[:cache_validated_with_origin_server] if args.key?(:cache_validated_with_origin_server) - @status = args[:status] if args.key?(:status) - @referer = args[:referer] if args.key?(:referer) - @user_agent = args[:user_agent] if args.key?(:user_agent) - @latency = args[:latency] if args.key?(:latency) - @cache_fill_bytes = args[:cache_fill_bytes] if args.key?(:cache_fill_bytes) - @request_method = args[:request_method] if args.key?(:request_method) - @response_size = args[:response_size] if args.key?(:response_size) - @request_size = args[:request_size] if args.key?(:request_size) - @request_url = args[:request_url] if args.key?(:request_url) - @server_ip = args[:server_ip] if args.key?(:server_ip) - @remote_ip = args[:remote_ip] if args.key?(:remote_ip) - end - end - - # Result returned from ListSinks. - class ListSinksResponse - include Google::Apis::Core::Hashable - - # A list of sinks. - # Corresponds to the JSON property `sinks` - # @return [Array] - attr_accessor :sinks - - # If there might be more results than appear in this response, then - # nextPageToken is included. To get the next set of results, call the same - # method again using the value of nextPageToken as pageToken. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @sinks = args[:sinks] if args.key?(:sinks) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # A description of a label. - class LabelDescriptor - include Google::Apis::Core::Hashable - - # The type of data that can be assigned to the label. - # Corresponds to the JSON property `valueType` - # @return [String] - attr_accessor :value_type - - # The label key. - # Corresponds to the JSON property `key` - # @return [String] - attr_accessor :key - - # A human-readable description for the label. - # Corresponds to the JSON property `description` - # @return [String] - attr_accessor :description - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @value_type = args[:value_type] if args.key?(:value_type) - @key = args[:key] if args.key?(:key) - @description = args[:description] if args.key?(:description) - end - end - # An object that describes the schema of a MonitoredResource object using a type # name and a set of labels. For example, the monitored resource descriptor for # Google Compute Engine VM instances has a type of "gce_instance" and specifies @@ -922,13 +881,6 @@ module Google # @return [String] attr_accessor :display_name - # Required. The monitored resource type. For example, the type " - # cloudsql_database" represents databases in Google Cloud SQL. The maximum - # length of this value is 256 characters. - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type - # Required. A set of labels used to describe instances of this monitored # resource type. For example, an individual Google Cloud SQL database is # identified by values for the labels "database_id" and "zone". @@ -946,6 +898,13 @@ module Google # @return [String] attr_accessor :name + # Required. The monitored resource type. For example, the type " + # cloudsql_database" represents databases in Google Cloud SQL. The maximum + # length of this value is 256 characters. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + def initialize(**args) update!(**args) end @@ -954,264 +913,193 @@ module Google def update!(**args) @description = args[:description] if args.key?(:description) @display_name = args[:display_name] if args.key?(:display_name) - @type = args[:type] if args.key?(:type) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) + @type = args[:type] if args.key?(:type) end end - # Additional information about the source code location that produced the log - # entry. - class LogEntrySourceLocation + # Complete log information about a single HTTP request to an App Engine + # application. + class RequestLog include Google::Apis::Core::Hashable - # Optional. Source file name. Depending on the runtime environment, this might - # be a simple name or a fully-qualified name. - # Corresponds to the JSON property `file` + # App Engine release version. + # Corresponds to the JSON property `appEngineRelease` # @return [String] - attr_accessor :file + attr_accessor :app_engine_release - # Optional. Human-readable name of the function or method being invoked, with - # optional context such as the class or package name. This information may be - # used in contexts such as the logs viewer, where a file and line number are - # less meaningful. The format can vary by language. For example: qual.if.ied. - # Class.method (Java), dir/package.func (Go), function (Python). - # Corresponds to the JSON property `function` + # Application that handled this request. + # Corresponds to the JSON property `appId` # @return [String] - attr_accessor :function + attr_accessor :app_id - # Optional. Line within the source file. 1-based; 0 indicates no line number - # available. - # Corresponds to the JSON property `line` + # An indication of the relative cost of serving this request. + # Corresponds to the JSON property `cost` + # @return [Float] + attr_accessor :cost + + # Time when the request finished. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Whether this request is finished or active. + # Corresponds to the JSON property `finished` + # @return [Boolean] + attr_accessor :finished + alias_method :finished?, :finished + + # Whether this is the first RequestLog entry for this request. If an active + # request has several RequestLog entries written to Stackdriver Logging, then + # this field will be set for one of them. + # Corresponds to the JSON property `first` + # @return [Boolean] + attr_accessor :first + alias_method :first?, :first + + # Internet host and port number of the resource being requested. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # HTTP version of request. Example: "HTTP/1.1". + # Corresponds to the JSON property `httpVersion` + # @return [String] + attr_accessor :http_version + + # An identifier for the instance that handled the request. + # Corresponds to the JSON property `instanceId` + # @return [String] + attr_accessor :instance_id + + # If the instance processing this request belongs to a manually scaled module, + # then this is the 0-based index of the instance. Otherwise, this value is -1. + # Corresponds to the JSON property `instanceIndex` # @return [Fixnum] + attr_accessor :instance_index + + # Origin IP address. + # Corresponds to the JSON property `ip` + # @return [String] + attr_accessor :ip + + # Latency of the request. + # Corresponds to the JSON property `latency` + # @return [String] + attr_accessor :latency + + # A list of log lines emitted by the application while serving this request. + # Corresponds to the JSON property `line` + # @return [Array] attr_accessor :line - def initialize(**args) - update!(**args) - end + # Number of CPU megacycles used to process request. + # Corresponds to the JSON property `megaCycles` + # @return [Fixnum] + attr_accessor :mega_cycles - # Update properties of this object - def update!(**args) - @file = args[:file] if args.key?(:file) - @function = args[:function] if args.key?(:function) - @line = args[:line] if args.key?(:line) - end - end - - # Result returned from ListLogEntries. - class ListLogEntriesResponse - include Google::Apis::Core::Hashable - - # If there might be more results than those appearing in this response, then - # nextPageToken is included. To get the next set of results, call this method - # again using the value of nextPageToken as pageToken.If a value for - # next_page_token appears and the entries field is empty, it means that the - # search found no log entries so far but it did not have time to search all the - # possible log entries. Retry the method with this value for page_token to - # continue the search. Alternatively, consider speeding up the search by - # changing your filter to specify a single log name or resource type, or to - # narrow the time range of the search. - # Corresponds to the JSON property `nextPageToken` + # Request method. Example: "GET", "HEAD", "PUT", "POST", "DELETE". + # Corresponds to the JSON property `method` # @return [String] - attr_accessor :next_page_token + attr_accessor :method_prop - # A list of log entries. - # Corresponds to the JSON property `entries` - # @return [Array] - attr_accessor :entries - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - @entries = args[:entries] if args.key?(:entries) - end - end - - # Application log line emitted while processing a request. - class LogLine - include Google::Apis::Core::Hashable - - # App-provided log message. - # Corresponds to the JSON property `logMessage` + # Module of the application that handled this request. + # Corresponds to the JSON property `moduleId` # @return [String] - attr_accessor :log_message + attr_accessor :module_id - # Severity of this log entry. - # Corresponds to the JSON property `severity` + # The logged-in user who made the request.Most likely, this is the part of the + # user's email before the @ sign. The field value is the same for different + # requests from the same user, but different users can have similar names. This + # information is also available to the application via the App Engine Users API. + # This field will be populated starting with App Engine 1.9.21. + # Corresponds to the JSON property `nickname` # @return [String] - attr_accessor :severity + attr_accessor :nickname - # Specifies a location in a source code file. - # Corresponds to the JSON property `sourceLocation` - # @return [Google::Apis::LoggingV2beta1::SourceLocation] - attr_accessor :source_location - - # Approximate time when this log entry was made. - # Corresponds to the JSON property `time` + # Time this request spent in the pending request queue. + # Corresponds to the JSON property `pendingTime` # @return [String] - attr_accessor :time + attr_accessor :pending_time - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @log_message = args[:log_message] if args.key?(:log_message) - @severity = args[:severity] if args.key?(:severity) - @source_location = args[:source_location] if args.key?(:source_location) - @time = args[:time] if args.key?(:time) - end - end - - # Result returned from ListLogMetrics. - class ListLogMetricsResponse - include Google::Apis::Core::Hashable - - # A list of logs-based metrics. - # Corresponds to the JSON property `metrics` - # @return [Array] - attr_accessor :metrics - - # If there might be more results than appear in this response, then - # nextPageToken is included. To get the next set of results, call this method - # again using the value of nextPageToken as pageToken. - # Corresponds to the JSON property `nextPageToken` + # Referrer URL of request. + # Corresponds to the JSON property `referrer` # @return [String] - attr_accessor :next_page_token + attr_accessor :referrer - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @metrics = args[:metrics] if args.key?(:metrics) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # An individual entry in a log. - class LogEntry - include Google::Apis::Core::Hashable - - # Optional. The time the event described by the log entry occurred. If omitted - # in a new log entry, Stackdriver Logging will insert the time the log entry is - # received. Stackdriver Logging might reject log entries whose time stamps are - # more than a couple of hours in the future. Log entries with time stamps in the - # past are accepted. - # Corresponds to the JSON property `timestamp` + # Globally unique identifier for a request, which is based on the request start + # time. Request IDs for requests which started later will compare greater as + # strings than those for requests which started earlier. + # Corresponds to the JSON property `requestId` # @return [String] - attr_accessor :timestamp + attr_accessor :request_id - # Output only. The time the log entry was received by Stackdriver Logging. - # Corresponds to the JSON property `receiveTimestamp` - # @return [String] - attr_accessor :receive_timestamp - - # Required. The resource name of the log to which this log entry belongs: - # "projects/[PROJECT_ID]/logs/[LOG_ID]" - # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" - # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" - # "folders/[FOLDER_ID]/logs/[LOG_ID]" - # [LOG_ID] must be URL-encoded within log_name. Example: "organizations/ - # 1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity". [LOG_ID] must - # be less than 512 characters long and can only include the following characters: - # upper and lower case alphanumeric characters, forward-slash, underscore, - # hyphen, and period.For backward compatibility, if log_name begins with a - # forward-slash, such as /projects/..., then the log entry is ingested as usual - # but the forward-slash is removed. Listing the log entry will not show the - # leading slash and filtering for a log name with a leading slash will never - # return any results. - # Corresponds to the JSON property `logName` - # @return [String] - attr_accessor :log_name - - # A common proto for logging HTTP requests. Only contains semantics defined by - # the HTTP specification. Product-specific logging information MUST be defined - # in a separate message. - # Corresponds to the JSON property `httpRequest` - # @return [Google::Apis::LoggingV2beta1::HttpRequest] - attr_accessor :http_request - - # An object representing a resource that can be used for monitoring, logging, - # billing, or other purposes. Examples include virtual machine instances, - # databases, and storage devices such as disks. The type field identifies a - # MonitoredResourceDescriptor object that describes the resource's schema. - # Information in the labels field identifies the actual resource and its - # attributes according to the schema. For example, a particular Compute Engine - # VM instance could be represented by the following object, because the - # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " - # zone": - # ` "type": "gce_instance", - # "labels": ` "instance_id": "12345678901234", - # "zone": "us-central1-a" `` + # Contains the path and query portion of the URL that was requested. For example, + # if the URL was "http://example.com/app?name=val", the resource would be "/app? + # name=val". The fragment identifier, which is identified by the # character, is + # not included. # Corresponds to the JSON property `resource` - # @return [Google::Apis::LoggingV2beta1::MonitoredResource] + # @return [String] attr_accessor :resource - # The log entry payload, represented as a structure that is expressed as a JSON - # object. - # Corresponds to the JSON property `jsonPayload` - # @return [Hash] - attr_accessor :json_payload + # Size in bytes sent back to client by request. + # Corresponds to the JSON property `responseSize` + # @return [Fixnum] + attr_accessor :response_size - # Additional information about a potentially long-running operation with which a - # log entry is associated. - # Corresponds to the JSON property `operation` - # @return [Google::Apis::LoggingV2beta1::LogEntryOperation] - attr_accessor :operation + # Source code for the application that handled this request. There can be more + # than one source reference per deployed application if source code is + # distributed among multiple repositories. + # Corresponds to the JSON property `sourceReference` + # @return [Array] + attr_accessor :source_reference - # Optional. A unique identifier for the log entry. If you provide a value, then - # Stackdriver Logging considers other log entries in the same project, with the - # same timestamp, and with the same insert_id to be duplicates which can be - # removed. If omitted in new log entries, then Stackdriver Logging will insert - # its own unique identifier. The insert_id is used to order log entries that - # have the same timestamp value. - # Corresponds to the JSON property `insertId` + # Time when the request started. + # Corresponds to the JSON property `startTime` # @return [String] - attr_accessor :insert_id + attr_accessor :start_time - # The log entry payload, represented as a Unicode string (UTF-8). - # Corresponds to the JSON property `textPayload` + # HTTP response status code. Example: 200, 404. + # Corresponds to the JSON property `status` + # @return [Fixnum] + attr_accessor :status + + # Task name of the request, in the case of an offline request. + # Corresponds to the JSON property `taskName` # @return [String] - attr_accessor :text_payload + attr_accessor :task_name - # The log entry payload, represented as a protocol buffer. Some Google Cloud - # Platform services use this field for their log entry payloads. - # Corresponds to the JSON property `protoPayload` - # @return [Hash] - attr_accessor :proto_payload - - # Optional. A set of user-defined (key, value) data that provides additional - # information about the log entry. - # Corresponds to the JSON property `labels` - # @return [Hash] - attr_accessor :labels - - # Optional. Resource name of the trace associated with the log entry, if any. If - # it contains a relative resource name, the name is assumed to be relative to // - # tracing.googleapis.com. Example: projects/my-projectid/traces/ - # 06796866738c859f2f19b7cfb3214824 - # Corresponds to the JSON property `trace` + # Queue name of the request, in the case of an offline request. + # Corresponds to the JSON property `taskQueueName` # @return [String] - attr_accessor :trace + attr_accessor :task_queue_name - # Optional. The severity of the log entry. The default value is LogSeverity. - # DEFAULT. - # Corresponds to the JSON property `severity` + # Stackdriver Trace identifier for this request. + # Corresponds to the JSON property `traceId` # @return [String] - attr_accessor :severity + attr_accessor :trace_id - # Additional information about the source code location that produced the log - # entry. - # Corresponds to the JSON property `sourceLocation` - # @return [Google::Apis::LoggingV2beta1::LogEntrySourceLocation] - attr_accessor :source_location + # File or class that handled the request. + # Corresponds to the JSON property `urlMapEntry` + # @return [String] + attr_accessor :url_map_entry + + # User agent that made the request. + # Corresponds to the JSON property `userAgent` + # @return [String] + attr_accessor :user_agent + + # Version of the application that handled this request. + # Corresponds to the JSON property `versionId` + # @return [String] + attr_accessor :version_id + + # Whether this was a loading request for the instance. + # Corresponds to the JSON property `wasLoadingRequest` + # @return [Boolean] + attr_accessor :was_loading_request + alias_method :was_loading_request?, :was_loading_request def initialize(**args) update!(**args) @@ -1219,39 +1107,38 @@ module Google # Update properties of this object def update!(**args) - @timestamp = args[:timestamp] if args.key?(:timestamp) - @receive_timestamp = args[:receive_timestamp] if args.key?(:receive_timestamp) - @log_name = args[:log_name] if args.key?(:log_name) - @http_request = args[:http_request] if args.key?(:http_request) + @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) + @app_id = args[:app_id] if args.key?(:app_id) + @cost = args[:cost] if args.key?(:cost) + @end_time = args[:end_time] if args.key?(:end_time) + @finished = args[:finished] if args.key?(:finished) + @first = args[:first] if args.key?(:first) + @host = args[:host] if args.key?(:host) + @http_version = args[:http_version] if args.key?(:http_version) + @instance_id = args[:instance_id] if args.key?(:instance_id) + @instance_index = args[:instance_index] if args.key?(:instance_index) + @ip = args[:ip] if args.key?(:ip) + @latency = args[:latency] if args.key?(:latency) + @line = args[:line] if args.key?(:line) + @mega_cycles = args[:mega_cycles] if args.key?(:mega_cycles) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @module_id = args[:module_id] if args.key?(:module_id) + @nickname = args[:nickname] if args.key?(:nickname) + @pending_time = args[:pending_time] if args.key?(:pending_time) + @referrer = args[:referrer] if args.key?(:referrer) + @request_id = args[:request_id] if args.key?(:request_id) @resource = args[:resource] if args.key?(:resource) - @json_payload = args[:json_payload] if args.key?(:json_payload) - @operation = args[:operation] if args.key?(:operation) - @insert_id = args[:insert_id] if args.key?(:insert_id) - @text_payload = args[:text_payload] if args.key?(:text_payload) - @proto_payload = args[:proto_payload] if args.key?(:proto_payload) - @labels = args[:labels] if args.key?(:labels) - @trace = args[:trace] if args.key?(:trace) - @severity = args[:severity] if args.key?(:severity) - @source_location = args[:source_location] if args.key?(:source_location) - end - end - - # A generic empty message that you can re-use to avoid defining duplicated empty - # messages in your APIs. A typical example is to use it as the request or the - # response type of an API method. For instance: - # service Foo ` - # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); - # ` - # The JSON representation for Empty is empty JSON object ``. - class Empty - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) + @response_size = args[:response_size] if args.key?(:response_size) + @source_reference = args[:source_reference] if args.key?(:source_reference) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + @task_name = args[:task_name] if args.key?(:task_name) + @task_queue_name = args[:task_queue_name] if args.key?(:task_queue_name) + @trace_id = args[:trace_id] if args.key?(:trace_id) + @url_map_entry = args[:url_map_entry] if args.key?(:url_map_entry) + @user_agent = args[:user_agent] if args.key?(:user_agent) + @version_id = args[:version_id] if args.key?(:version_id) + @was_loading_request = args[:was_loading_request] if args.key?(:was_loading_request) end end @@ -1290,6 +1177,125 @@ module Google @line = args[:line] if args.key?(:line) end end + + # A reference to a particular snapshot of the source tree used to build and + # deploy an application. + class SourceReference + include Google::Apis::Core::Hashable + + # Optional. A URI string identifying the repository. Example: "https://github. + # com/GoogleCloudPlatform/kubernetes.git" + # Corresponds to the JSON property `repository` + # @return [String] + attr_accessor :repository + + # The canonical and persistent identifier of the deployed revision. Example (git) + # : "0035781c50ec7aa23385dc841529ce8a4b70db1b" + # Corresponds to the JSON property `revisionId` + # @return [String] + attr_accessor :revision_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @repository = args[:repository] if args.key?(:repository) + @revision_id = args[:revision_id] if args.key?(:revision_id) + end + end + + # The parameters to WriteLogEntries. + class WriteLogEntriesRequest + include Google::Apis::Core::Hashable + + # Required. The log entries to write. Values supplied for the fields log_name, + # resource, and labels in this entries.write request are inserted into those log + # entries in this list that do not provide their own values.Stackdriver Logging + # also creates and inserts values for timestamp and insert_id if the entries do + # not provide them. The created insert_id for the N'th entry in this list will + # be greater than earlier entries and less than later entries. Otherwise, the + # order of log entries in this list does not matter.To improve throughput and to + # avoid exceeding the quota limit for calls to entries.write, you should write + # multiple log entries at once rather than calling this method for each + # individual log entry. + # Corresponds to the JSON property `entries` + # @return [Array] + attr_accessor :entries + + # Optional. Default labels that are added to the labels field of all log entries + # in entries. If a log entry already has a label with the same key as a label in + # this parameter, then the log entry's label is not changed. See LogEntry. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Optional. A default log resource name that is assigned to all log entries in + # entries that do not specify a value for log_name: + # "projects/[PROJECT_ID]/logs/[LOG_ID]" + # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" + # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" + # "folders/[FOLDER_ID]/logs/[LOG_ID]" + # [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog" + # or "organizations/1234567890/logs/cloudresourcemanager.googleapis.com% + # 2Factivity". For more information about log names, see LogEntry. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + # Optional. Whether valid entries should be written even if some other entries + # fail due to INVALID_ARGUMENT or PERMISSION_DENIED errors. If any entry is not + # written, then the response status is the error associated with one of the + # failed entries and the response includes error details keyed by the entries' + # zero-based index in the entries.write method. + # Corresponds to the JSON property `partialSuccess` + # @return [Boolean] + attr_accessor :partial_success + alias_method :partial_success?, :partial_success + + # An object representing a resource that can be used for monitoring, logging, + # billing, or other purposes. Examples include virtual machine instances, + # databases, and storage devices such as disks. The type field identifies a + # MonitoredResourceDescriptor object that describes the resource's schema. + # Information in the labels field identifies the actual resource and its + # attributes according to the schema. For example, a particular Compute Engine + # VM instance could be represented by the following object, because the + # MonitoredResourceDescriptor for "gce_instance" has labels "instance_id" and " + # zone": + # ` "type": "gce_instance", + # "labels": ` "instance_id": "12345678901234", + # "zone": "us-central1-a" `` + # Corresponds to the JSON property `resource` + # @return [Google::Apis::LoggingV2beta1::MonitoredResource] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entries = args[:entries] if args.key?(:entries) + @labels = args[:labels] if args.key?(:labels) + @log_name = args[:log_name] if args.key?(:log_name) + @partial_success = args[:partial_success] if args.key?(:partial_success) + @resource = args[:resource] if args.key?(:resource) + end + end + + # Result returned from WriteLogEntries. empty + class WriteLogEntriesResponse + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end end end end diff --git a/generated/google/apis/logging_v2beta1/representations.rb b/generated/google/apis/logging_v2beta1/representations.rb index 82da9c88e..2118b2d6a 100644 --- a/generated/google/apis/logging_v2beta1/representations.rb +++ b/generated/google/apis/logging_v2beta1/representations.rb @@ -22,67 +22,7 @@ module Google module Apis module LoggingV2beta1 - class ListLogEntriesRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class RequestLog - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class ListMonitoredResourceDescriptorsResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class SourceReference - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogMetric - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class WriteLogEntriesResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogEntryOperation - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class MonitoredResource - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class WriteLogEntriesRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogSink - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class ListLogsResponse + class Empty class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -94,25 +34,13 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class ListSinksResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class LabelDescriptor class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class MonitoredResourceDescriptor - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogEntrySourceLocation + class ListLogEntriesRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -124,13 +52,25 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class LogLine + class ListLogMetricsResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class ListLogMetricsResponse + class ListLogsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListMonitoredResourceDescriptorsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListSinksResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -142,7 +82,49 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class Empty + class LogEntryOperation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogEntrySourceLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogLine + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogMetric + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogSink + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MonitoredResource + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MonitoredResourceDescriptor + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RequestLog class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -154,55 +136,95 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class ListLogEntriesRequest + class SourceReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WriteLogEntriesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WriteLogEntriesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty # @private class Representation < Google::Apis::Core::JsonRepresentation - property :order_by, as: 'orderBy' - collection :resource_names, as: 'resourceNames' - collection :project_ids, as: 'projectIds' - property :filter, as: 'filter' - property :page_token, as: 'pageToken' - property :page_size, as: 'pageSize' end end - class RequestLog + class HttpRequest # @private class Representation < Google::Apis::Core::JsonRepresentation - property :ip, as: 'ip' - property :app_id, as: 'appId' - property :app_engine_release, as: 'appEngineRelease' - property :method_prop, as: 'method' - property :cost, as: 'cost' - property :instance_id, as: 'instanceId' - property :mega_cycles, :numeric_string => true, as: 'megaCycles' - property :first, as: 'first' - property :version_id, as: 'versionId' - property :module_id, as: 'moduleId' - property :end_time, as: 'endTime' - property :user_agent, as: 'userAgent' - property :was_loading_request, as: 'wasLoadingRequest' - collection :source_reference, as: 'sourceReference', class: Google::Apis::LoggingV2beta1::SourceReference, decorator: Google::Apis::LoggingV2beta1::SourceReference::Representation - - property :response_size, :numeric_string => true, as: 'responseSize' - property :trace_id, as: 'traceId' - collection :line, as: 'line', class: Google::Apis::LoggingV2beta1::LogLine, decorator: Google::Apis::LoggingV2beta1::LogLine::Representation - - property :referrer, as: 'referrer' - property :task_queue_name, as: 'taskQueueName' - property :request_id, as: 'requestId' - property :nickname, as: 'nickname' - property :status, as: 'status' - property :resource, as: 'resource' - property :pending_time, as: 'pendingTime' - property :task_name, as: 'taskName' - property :url_map_entry, as: 'urlMapEntry' - property :instance_index, as: 'instanceIndex' - property :finished, as: 'finished' - property :host, as: 'host' - property :http_version, as: 'httpVersion' - property :start_time, as: 'startTime' + property :cache_fill_bytes, :numeric_string => true, as: 'cacheFillBytes' + property :cache_hit, as: 'cacheHit' + property :cache_lookup, as: 'cacheLookup' + property :cache_validated_with_origin_server, as: 'cacheValidatedWithOriginServer' property :latency, as: 'latency' + property :protocol, as: 'protocol' + property :referer, as: 'referer' + property :remote_ip, as: 'remoteIp' + property :request_method, as: 'requestMethod' + property :request_size, :numeric_string => true, as: 'requestSize' + property :request_url, as: 'requestUrl' + property :response_size, :numeric_string => true, as: 'responseSize' + property :server_ip, as: 'serverIp' + property :status, as: 'status' + property :user_agent, as: 'userAgent' + end + end + + class LabelDescriptor + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :key, as: 'key' + property :value_type, as: 'valueType' + end + end + + class ListLogEntriesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :filter, as: 'filter' + property :order_by, as: 'orderBy' + property :page_size, as: 'pageSize' + property :page_token, as: 'pageToken' + collection :project_ids, as: 'projectIds' + collection :resource_names, as: 'resourceNames' + end + end + + class ListLogEntriesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :entries, as: 'entries', class: Google::Apis::LoggingV2beta1::LogEntry, decorator: Google::Apis::LoggingV2beta1::LogEntry::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListLogMetricsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :metrics, as: 'metrics', class: Google::Apis::LoggingV2beta1::LogMetric, decorator: Google::Apis::LoggingV2beta1::LogMetric::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListLogsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :log_names, as: 'logNames' + property :next_page_token, as: 'nextPageToken' end end @@ -215,27 +237,36 @@ module Google end end - class SourceReference + class ListSinksResponse # @private class Representation < Google::Apis::Core::JsonRepresentation - property :revision_id, as: 'revisionId' - property :repository, as: 'repository' + property :next_page_token, as: 'nextPageToken' + collection :sinks, as: 'sinks', class: Google::Apis::LoggingV2beta1::LogSink, decorator: Google::Apis::LoggingV2beta1::LogSink::Representation + end end - class LogMetric + class LogEntry # @private class Representation < Google::Apis::Core::JsonRepresentation - property :filter, as: 'filter' - property :name, as: 'name' - property :description, as: 'description' - property :version, as: 'version' - end - end + property :http_request, as: 'httpRequest', class: Google::Apis::LoggingV2beta1::HttpRequest, decorator: Google::Apis::LoggingV2beta1::HttpRequest::Representation - class WriteLogEntriesResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation + property :insert_id, as: 'insertId' + hash :json_payload, as: 'jsonPayload' + hash :labels, as: 'labels' + property :log_name, as: 'logName' + property :operation, as: 'operation', class: Google::Apis::LoggingV2beta1::LogEntryOperation, decorator: Google::Apis::LoggingV2beta1::LogEntryOperation::Representation + + hash :proto_payload, as: 'protoPayload' + property :receive_timestamp, as: 'receiveTimestamp' + property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation + + property :severity, as: 'severity' + property :source_location, as: 'sourceLocation', class: Google::Apis::LoggingV2beta1::LogEntrySourceLocation, decorator: Google::Apis::LoggingV2beta1::LogEntrySourceLocation::Representation + + property :text_payload, as: 'textPayload' + property :timestamp, as: 'timestamp' + property :trace, as: 'trace' end end @@ -243,102 +274,9 @@ module Google # @private class Representation < Google::Apis::Core::JsonRepresentation property :first, as: 'first' - property :producer, as: 'producer' - property :last, as: 'last' property :id, as: 'id' - end - end - - class MonitoredResource - # @private - class Representation < Google::Apis::Core::JsonRepresentation - hash :labels, as: 'labels' - property :type, as: 'type' - end - end - - class WriteLogEntriesRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - hash :labels, as: 'labels' - property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation - - collection :entries, as: 'entries', class: Google::Apis::LoggingV2beta1::LogEntry, decorator: Google::Apis::LoggingV2beta1::LogEntry::Representation - - property :log_name, as: 'logName' - property :partial_success, as: 'partialSuccess' - end - end - - class LogSink - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :include_children, as: 'includeChildren' - property :destination, as: 'destination' - property :filter, as: 'filter' - property :end_time, as: 'endTime' - property :start_time, as: 'startTime' - property :writer_identity, as: 'writerIdentity' - property :output_version_format, as: 'outputVersionFormat' - property :name, as: 'name' - end - end - - class ListLogsResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :next_page_token, as: 'nextPageToken' - collection :log_names, as: 'logNames' - end - end - - class HttpRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :cache_lookup, as: 'cacheLookup' - property :cache_hit, as: 'cacheHit' - property :cache_validated_with_origin_server, as: 'cacheValidatedWithOriginServer' - property :status, as: 'status' - property :referer, as: 'referer' - property :user_agent, as: 'userAgent' - property :latency, as: 'latency' - property :cache_fill_bytes, :numeric_string => true, as: 'cacheFillBytes' - property :request_method, as: 'requestMethod' - property :response_size, :numeric_string => true, as: 'responseSize' - property :request_size, :numeric_string => true, as: 'requestSize' - property :request_url, as: 'requestUrl' - property :server_ip, as: 'serverIp' - property :remote_ip, as: 'remoteIp' - end - end - - class ListSinksResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :sinks, as: 'sinks', class: Google::Apis::LoggingV2beta1::LogSink, decorator: Google::Apis::LoggingV2beta1::LogSink::Representation - - property :next_page_token, as: 'nextPageToken' - end - end - - class LabelDescriptor - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :value_type, as: 'valueType' - property :key, as: 'key' - property :description, as: 'description' - end - end - - class MonitoredResourceDescriptor - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :description, as: 'description' - property :display_name, as: 'displayName' - property :type, as: 'type' - collection :labels, as: 'labels', class: Google::Apis::LoggingV2beta1::LabelDescriptor, decorator: Google::Apis::LoggingV2beta1::LabelDescriptor::Representation - - property :name, as: 'name' + property :last, as: 'last' + property :producer, as: 'producer' end end @@ -351,15 +289,6 @@ module Google end end - class ListLogEntriesResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :next_page_token, as: 'nextPageToken' - collection :entries, as: 'entries', class: Google::Apis::LoggingV2beta1::LogEntry, decorator: Google::Apis::LoggingV2beta1::LogEntry::Representation - - end - end - class LogLine # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -371,42 +300,87 @@ module Google end end - class ListLogMetricsResponse + class LogMetric # @private class Representation < Google::Apis::Core::JsonRepresentation - collection :metrics, as: 'metrics', class: Google::Apis::LoggingV2beta1::LogMetric, decorator: Google::Apis::LoggingV2beta1::LogMetric::Representation - - property :next_page_token, as: 'nextPageToken' + property :description, as: 'description' + property :filter, as: 'filter' + property :name, as: 'name' + property :version, as: 'version' end end - class LogEntry + class LogSink # @private class Representation < Google::Apis::Core::JsonRepresentation - property :timestamp, as: 'timestamp' - property :receive_timestamp, as: 'receiveTimestamp' - property :log_name, as: 'logName' - property :http_request, as: 'httpRequest', class: Google::Apis::LoggingV2beta1::HttpRequest, decorator: Google::Apis::LoggingV2beta1::HttpRequest::Representation + property :destination, as: 'destination' + property :end_time, as: 'endTime' + property :filter, as: 'filter' + property :include_children, as: 'includeChildren' + property :name, as: 'name' + property :output_version_format, as: 'outputVersionFormat' + property :start_time, as: 'startTime' + property :writer_identity, as: 'writerIdentity' + end + end - property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation - - hash :json_payload, as: 'jsonPayload' - property :operation, as: 'operation', class: Google::Apis::LoggingV2beta1::LogEntryOperation, decorator: Google::Apis::LoggingV2beta1::LogEntryOperation::Representation - - property :insert_id, as: 'insertId' - property :text_payload, as: 'textPayload' - hash :proto_payload, as: 'protoPayload' + class MonitoredResource + # @private + class Representation < Google::Apis::Core::JsonRepresentation hash :labels, as: 'labels' - property :trace, as: 'trace' - property :severity, as: 'severity' - property :source_location, as: 'sourceLocation', class: Google::Apis::LoggingV2beta1::LogEntrySourceLocation, decorator: Google::Apis::LoggingV2beta1::LogEntrySourceLocation::Representation - + property :type, as: 'type' end end - class Empty + class MonitoredResourceDescriptor # @private class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :display_name, as: 'displayName' + collection :labels, as: 'labels', class: Google::Apis::LoggingV2beta1::LabelDescriptor, decorator: Google::Apis::LoggingV2beta1::LabelDescriptor::Representation + + property :name, as: 'name' + property :type, as: 'type' + end + end + + class RequestLog + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_engine_release, as: 'appEngineRelease' + property :app_id, as: 'appId' + property :cost, as: 'cost' + property :end_time, as: 'endTime' + property :finished, as: 'finished' + property :first, as: 'first' + property :host, as: 'host' + property :http_version, as: 'httpVersion' + property :instance_id, as: 'instanceId' + property :instance_index, as: 'instanceIndex' + property :ip, as: 'ip' + property :latency, as: 'latency' + collection :line, as: 'line', class: Google::Apis::LoggingV2beta1::LogLine, decorator: Google::Apis::LoggingV2beta1::LogLine::Representation + + property :mega_cycles, :numeric_string => true, as: 'megaCycles' + property :method_prop, as: 'method' + property :module_id, as: 'moduleId' + property :nickname, as: 'nickname' + property :pending_time, as: 'pendingTime' + property :referrer, as: 'referrer' + property :request_id, as: 'requestId' + property :resource, as: 'resource' + property :response_size, :numeric_string => true, as: 'responseSize' + collection :source_reference, as: 'sourceReference', class: Google::Apis::LoggingV2beta1::SourceReference, decorator: Google::Apis::LoggingV2beta1::SourceReference::Representation + + property :start_time, as: 'startTime' + property :status, as: 'status' + property :task_name, as: 'taskName' + property :task_queue_name, as: 'taskQueueName' + property :trace_id, as: 'traceId' + property :url_map_entry, as: 'urlMapEntry' + property :user_agent, as: 'userAgent' + property :version_id, as: 'versionId' + property :was_loading_request, as: 'wasLoadingRequest' end end @@ -418,6 +392,33 @@ module Google property :line, :numeric_string => true, as: 'line' end end + + class SourceReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :repository, as: 'repository' + property :revision_id, as: 'revisionId' + end + end + + class WriteLogEntriesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :entries, as: 'entries', class: Google::Apis::LoggingV2beta1::LogEntry, decorator: Google::Apis::LoggingV2beta1::LogEntry::Representation + + hash :labels, as: 'labels' + property :log_name, as: 'logName' + property :partial_success, as: 'partialSuccess' + property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation + + end + end + + class WriteLogEntriesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end end end end diff --git a/generated/google/apis/logging_v2beta1/service.rb b/generated/google/apis/logging_v2beta1/service.rb index 178dce974..ea608133a 100644 --- a/generated/google/apis/logging_v2beta1/service.rb +++ b/generated/google/apis/logging_v2beta1/service.rb @@ -47,44 +47,6 @@ module Google @batch_path = 'batch' end - # Lists the descriptors for monitored resource types used by Stackdriver Logging. - # @param [String] page_token - # Optional. If present, then retrieve the next batch of results from the - # preceding call to this method. pageToken must be the value of nextPageToken - # from the previous response. The values of other method parameters should be - # identical to those in the previous call. - # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of nextPageToken in the response - # indicates that more results might be available. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_monitored_resource_descriptors(page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/monitoredResourceDescriptors', options) - command.response_representation = Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse::Representation - command.response_class = Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse - command.query['pageToken'] = page_token unless page_token.nil? - command.query['pageSize'] = page_size unless page_size.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - # Deletes all the log entries in a log. The log reappears if it receives new # entries. Log entries written shortly before the delete operation might not be # deleted. @@ -114,7 +76,7 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def delete_organization_log(log_name, fields: nil, quota_user: nil, options: nil, &block) + def delete_billing_account_log(log_name, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'v2beta1/{+logName}', options) command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation command.response_class = Google::Apis::LoggingV2beta1::Empty @@ -132,15 +94,15 @@ module Google # "organizations/[ORGANIZATION_ID]" # "billingAccounts/[BILLING_ACCOUNT_ID]" # "folders/[FOLDER_ID]" + # @param [Fixnum] page_size + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of nextPageToken in the response + # indicates that more results might be available. # @param [String] page_token # Optional. If present, then retrieve the next batch of results from the # preceding call to this method. pageToken must be the value of nextPageToken # from the previous response. The values of other method parameters should be # identical to those in the previous call. - # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of nextPageToken in the response - # indicates that more results might be available. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -158,13 +120,13 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_organization_logs(parent, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) + def list_billing_account_logs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v2beta1/{+parent}/logs', options) command.response_representation = Google::Apis::LoggingV2beta1::ListLogsResponse::Representation command.response_class = Google::Apis::LoggingV2beta1::ListLogsResponse command.params['parent'] = parent unless parent.nil? - command.query['pageToken'] = page_token unless page_token.nil? command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) @@ -231,6 +193,443 @@ module Google execute_or_queue_command(command, &block) end + # Lists the descriptors for monitored resource types used by Stackdriver Logging. + # @param [Fixnum] page_size + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of nextPageToken in the response + # indicates that more results might be available. + # @param [String] page_token + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. pageToken must be the value of nextPageToken + # from the previous response. The values of other method parameters should be + # identical to those in the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_monitored_resource_descriptors(page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/monitoredResourceDescriptors', options) + command.response_representation = Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse::Representation + command.response_class = Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes all the log entries in a log. The log reappears if it receives new + # entries. Log entries written shortly before the delete operation might not be + # deleted. + # @param [String] log_name + # Required. The resource name of the log to delete: + # "projects/[PROJECT_ID]/logs/[LOG_ID]" + # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" + # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" + # "folders/[FOLDER_ID]/logs/[LOG_ID]" + # [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog" + # , "organizations/1234567890/logs/cloudresourcemanager.googleapis.com% + # 2Factivity". For more information about log names, see LogEntry. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_organization_log(log_name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+logName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation + command.response_class = Google::Apis::LoggingV2beta1::Empty + command.params['logName'] = log_name unless log_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the logs in projects, organizations, folders, or billing accounts. Only + # logs that have entries are listed. + # @param [String] parent + # Required. The resource name that owns the logs: + # "projects/[PROJECT_ID]" + # "organizations/[ORGANIZATION_ID]" + # "billingAccounts/[BILLING_ACCOUNT_ID]" + # "folders/[FOLDER_ID]" + # @param [Fixnum] page_size + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of nextPageToken in the response + # indicates that more results might be available. + # @param [String] page_token + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. pageToken must be the value of nextPageToken + # from the previous response. The values of other method parameters should be + # identical to those in the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::ListLogsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::ListLogsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_organization_logs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+parent}/logs', options) + command.response_representation = Google::Apis::LoggingV2beta1::ListLogsResponse::Representation + command.response_class = Google::Apis::LoggingV2beta1::ListLogsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes all the log entries in a log. The log reappears if it receives new + # entries. Log entries written shortly before the delete operation might not be + # deleted. + # @param [String] log_name + # Required. The resource name of the log to delete: + # "projects/[PROJECT_ID]/logs/[LOG_ID]" + # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" + # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" + # "folders/[FOLDER_ID]/logs/[LOG_ID]" + # [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog" + # , "organizations/1234567890/logs/cloudresourcemanager.googleapis.com% + # 2Factivity". For more information about log names, see LogEntry. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_log(log_name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+logName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation + command.response_class = Google::Apis::LoggingV2beta1::Empty + command.params['logName'] = log_name unless log_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the logs in projects, organizations, folders, or billing accounts. Only + # logs that have entries are listed. + # @param [String] parent + # Required. The resource name that owns the logs: + # "projects/[PROJECT_ID]" + # "organizations/[ORGANIZATION_ID]" + # "billingAccounts/[BILLING_ACCOUNT_ID]" + # "folders/[FOLDER_ID]" + # @param [Fixnum] page_size + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of nextPageToken in the response + # indicates that more results might be available. + # @param [String] page_token + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. pageToken must be the value of nextPageToken + # from the previous response. The values of other method parameters should be + # identical to those in the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::ListLogsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::ListLogsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_logs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+parent}/logs', options) + command.response_representation = Google::Apis::LoggingV2beta1::ListLogsResponse::Representation + command.response_class = Google::Apis::LoggingV2beta1::ListLogsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a logs-based metric. + # @param [String] parent + # The resource name of the project in which to create the metric: + # "projects/[PROJECT_ID]" + # The new metric must be provided in the request. + # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::LogMetric] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_metric(parent, log_metric_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+parent}/metrics', options) + command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.request_object = log_metric_object + command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogMetric + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a logs-based metric. + # @param [String] metric_name + # The resource name of the metric to delete: + # "projects/[PROJECT_ID]/metrics/[METRIC_ID]" + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_metric(metric_name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+metricName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation + command.response_class = Google::Apis::LoggingV2beta1::Empty + command.params['metricName'] = metric_name unless metric_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets a logs-based metric. + # @param [String] metric_name + # The resource name of the desired metric: + # "projects/[PROJECT_ID]/metrics/[METRIC_ID]" + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::LogMetric] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_metric(metric_name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+metricName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogMetric + command.params['metricName'] = metric_name unless metric_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists logs-based metrics. + # @param [String] parent + # Required. The name of the project containing the metrics: + # "projects/[PROJECT_ID]" + # @param [Fixnum] page_size + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of nextPageToken in the response + # indicates that more results might be available. + # @param [String] page_token + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. pageToken must be the value of nextPageToken + # from the previous response. The values of other method parameters should be + # identical to those in the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::ListLogMetricsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::ListLogMetricsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_metrics(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+parent}/metrics', options) + command.response_representation = Google::Apis::LoggingV2beta1::ListLogMetricsResponse::Representation + command.response_class = Google::Apis::LoggingV2beta1::ListLogMetricsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates or updates a logs-based metric. + # @param [String] metric_name + # The resource name of the metric to update: + # "projects/[PROJECT_ID]/metrics/[METRIC_ID]" + # The updated metric must be provided in the request and it's name field must be + # the same as [METRIC_ID] If the metric does not exist in [PROJECT_ID], then a + # new metric is created. + # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::LogMetric] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_project_metric(metric_name, log_metric_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v2beta1/{+metricName}', options) + command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.request_object = log_metric_object + command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogMetric + command.params['metricName'] = metric_name unless metric_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a sink that exports specified log entries to a destination. The export + # of newly-ingested log entries begins immediately, unless the current time is + # outside the sink's start and end times or the sink's writer_identity is not + # permitted to write to the destination. A sink can export log entries only from + # the resource owning the sink. + # @param [String] parent + # Required. The resource in which to create the sink: + # "projects/[PROJECT_ID]" + # "organizations/[ORGANIZATION_ID]" + # "billingAccounts/[BILLING_ACCOUNT_ID]" + # "folders/[FOLDER_ID]" + # Examples: "projects/my-logging-project", "organizations/123456789". + # @param [Google::Apis::LoggingV2beta1::LogSink] log_sink_object + # @param [Boolean] unique_writer_identity + # Optional. Determines the kind of IAM identity returned as writer_identity in + # the new sink. If this value is omitted or set to false, and if the sink's + # parent is a project, then the value returned as writer_identity is the same + # group or service account used by Stackdriver Logging before the addition of + # writer identities to this API. The sink's destination must be in the same + # project as the sink itself.If this field is set to true, or if the sink is + # owned by a non-project resource such as an organization, then the value of + # writer_identity will be a unique service account used only for exports from + # the new sink. For more information, see writer_identity in LogSink. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::LogSink] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::LogSink] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_sink(parent, log_sink_object = nil, unique_writer_identity: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+parent}/sinks', options) + command.request_representation = Google::Apis::LoggingV2beta1::LogSink::Representation + command.request_object = log_sink_object + command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogSink + command.params['parent'] = parent unless parent.nil? + command.query['uniqueWriterIdentity'] = unique_writer_identity unless unique_writer_identity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Deletes a sink. If the sink has a unique writer_identity, then that service # account is also deleted. # @param [String] sink_name @@ -310,15 +709,15 @@ module Google # "organizations/[ORGANIZATION_ID]" # "billingAccounts/[BILLING_ACCOUNT_ID]" # "folders/[FOLDER_ID]" + # @param [Fixnum] page_size + # Optional. The maximum number of results to return from this request. Non- + # positive values are ignored. The presence of nextPageToken in the response + # indicates that more results might be available. # @param [String] page_token # Optional. If present, then retrieve the next batch of results from the # preceding call to this method. pageToken must be the value of nextPageToken # from the previous response. The values of other method parameters should be # identical to those in the previous call. - # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of nextPageToken in the response - # indicates that more results might be available. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -336,24 +735,22 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_project_sinks(parent, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) + def list_project_sinks(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v2beta1/{+parent}/sinks', options) command.response_representation = Google::Apis::LoggingV2beta1::ListSinksResponse::Representation command.response_class = Google::Apis::LoggingV2beta1::ListSinksResponse command.params['parent'] = parent unless parent.nil? - command.query['pageToken'] = page_token unless page_token.nil? command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # Updates a sink. If the named sink doesn't exist, then this method is identical - # to sinks.create. If the named sink does exist, then this method replaces the - # following fields in the existing sink with values from the new sink: - # destination, filter, output_version_format, start_time, and end_time. The - # updated filter might also have a new writer_identity; see the - # unique_writer_identity field. + # Updates a sink. This method replaces the following fields in the existing sink + # with values from the new sink: destination, filter, output_version_format, + # start_time, and end_time. The updated sink might also have a new + # writer_identity; see the unique_writer_identity field. # @param [String] sink_name # Required. The full resource name of the sink to update, including the parent # resource and the sink identifier: @@ -402,405 +799,6 @@ module Google command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - - # Creates a sink that exports specified log entries to a destination. The export - # of newly-ingested log entries begins immediately, unless the current time is - # outside the sink's start and end times or the sink's writer_identity is not - # permitted to write to the destination. A sink can export log entries only from - # the resource owning the sink. - # @param [String] parent - # Required. The resource in which to create the sink: - # "projects/[PROJECT_ID]" - # "organizations/[ORGANIZATION_ID]" - # "billingAccounts/[BILLING_ACCOUNT_ID]" - # "folders/[FOLDER_ID]" - # Examples: "projects/my-logging-project", "organizations/123456789". - # @param [Google::Apis::LoggingV2beta1::LogSink] log_sink_object - # @param [Boolean] unique_writer_identity - # Optional. Determines the kind of IAM identity returned as writer_identity in - # the new sink. If this value is omitted or set to false, and if the sink's - # parent is a project, then the value returned as writer_identity is the same - # group or service account used by Stackdriver Logging before the addition of - # writer identities to this API. The sink's destination must be in the same - # project as the sink itself.If this field is set to true, or if the sink is - # owned by a non-project resource such as an organization, then the value of - # writer_identity will be a unique service account used only for exports from - # the new sink. For more information, see writer_identity in LogSink. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::LogSink] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogSink] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def create_project_sink(parent, log_sink_object = nil, unique_writer_identity: nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:post, 'v2beta1/{+parent}/sinks', options) - command.request_representation = Google::Apis::LoggingV2beta1::LogSink::Representation - command.request_object = log_sink_object - command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogSink - command.params['parent'] = parent unless parent.nil? - command.query['uniqueWriterIdentity'] = unique_writer_identity unless unique_writer_identity.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Deletes all the log entries in a log. The log reappears if it receives new - # entries. Log entries written shortly before the delete operation might not be - # deleted. - # @param [String] log_name - # Required. The resource name of the log to delete: - # "projects/[PROJECT_ID]/logs/[LOG_ID]" - # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" - # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" - # "folders/[FOLDER_ID]/logs/[LOG_ID]" - # [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog" - # , "organizations/1234567890/logs/cloudresourcemanager.googleapis.com% - # 2Factivity". For more information about log names, see LogEntry. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::Empty] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def delete_log(log_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:delete, 'v2beta1/{+logName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation - command.response_class = Google::Apis::LoggingV2beta1::Empty - command.params['logName'] = log_name unless log_name.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Lists the logs in projects, organizations, folders, or billing accounts. Only - # logs that have entries are listed. - # @param [String] parent - # Required. The resource name that owns the logs: - # "projects/[PROJECT_ID]" - # "organizations/[ORGANIZATION_ID]" - # "billingAccounts/[BILLING_ACCOUNT_ID]" - # "folders/[FOLDER_ID]" - # @param [String] page_token - # Optional. If present, then retrieve the next batch of results from the - # preceding call to this method. pageToken must be the value of nextPageToken - # from the previous response. The values of other method parameters should be - # identical to those in the previous call. - # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of nextPageToken in the response - # indicates that more results might be available. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::ListLogsResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::ListLogsResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_logs(parent, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+parent}/logs', options) - command.response_representation = Google::Apis::LoggingV2beta1::ListLogsResponse::Representation - command.response_class = Google::Apis::LoggingV2beta1::ListLogsResponse - command.params['parent'] = parent unless parent.nil? - command.query['pageToken'] = page_token unless page_token.nil? - command.query['pageSize'] = page_size unless page_size.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Gets a logs-based metric. - # @param [String] metric_name - # The resource name of the desired metric: - # "projects/[PROJECT_ID]/metrics/[METRIC_ID]" - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogMetric] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_project_metric(metric_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+metricName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogMetric - command.params['metricName'] = metric_name unless metric_name.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Lists logs-based metrics. - # @param [String] parent - # Required. The name of the project containing the metrics: - # "projects/[PROJECT_ID]" - # @param [String] page_token - # Optional. If present, then retrieve the next batch of results from the - # preceding call to this method. pageToken must be the value of nextPageToken - # from the previous response. The values of other method parameters should be - # identical to those in the previous call. - # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of nextPageToken in the response - # indicates that more results might be available. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::ListLogMetricsResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::ListLogMetricsResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_project_metrics(parent, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+parent}/metrics', options) - command.response_representation = Google::Apis::LoggingV2beta1::ListLogMetricsResponse::Representation - command.response_class = Google::Apis::LoggingV2beta1::ListLogMetricsResponse - command.params['parent'] = parent unless parent.nil? - command.query['pageToken'] = page_token unless page_token.nil? - command.query['pageSize'] = page_size unless page_size.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Creates or updates a logs-based metric. - # @param [String] metric_name - # The resource name of the metric to update: - # "projects/[PROJECT_ID]/metrics/[METRIC_ID]" - # The updated metric must be provided in the request and it's name field must be - # the same as [METRIC_ID] If the metric does not exist in [PROJECT_ID], then a - # new metric is created. - # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_object - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogMetric] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def update_project_metric(metric_name, log_metric_object = nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:put, 'v2beta1/{+metricName}', options) - command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.request_object = log_metric_object - command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogMetric - command.params['metricName'] = metric_name unless metric_name.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Creates a logs-based metric. - # @param [String] parent - # The resource name of the project in which to create the metric: - # "projects/[PROJECT_ID]" - # The new metric must be provided in the request. - # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_object - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogMetric] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def create_project_metric(parent, log_metric_object = nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:post, 'v2beta1/{+parent}/metrics', options) - command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.request_object = log_metric_object - command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogMetric - command.params['parent'] = parent unless parent.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Deletes a logs-based metric. - # @param [String] metric_name - # The resource name of the metric to delete: - # "projects/[PROJECT_ID]/metrics/[METRIC_ID]" - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::Empty] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def delete_project_metric(metric_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:delete, 'v2beta1/{+metricName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation - command.response_class = Google::Apis::LoggingV2beta1::Empty - command.params['metricName'] = metric_name unless metric_name.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Deletes all the log entries in a log. The log reappears if it receives new - # entries. Log entries written shortly before the delete operation might not be - # deleted. - # @param [String] log_name - # Required. The resource name of the log to delete: - # "projects/[PROJECT_ID]/logs/[LOG_ID]" - # "organizations/[ORGANIZATION_ID]/logs/[LOG_ID]" - # "billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]" - # "folders/[FOLDER_ID]/logs/[LOG_ID]" - # [LOG_ID] must be URL-encoded. For example, "projects/my-project-id/logs/syslog" - # , "organizations/1234567890/logs/cloudresourcemanager.googleapis.com% - # 2Factivity". For more information about log names, see LogEntry. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::Empty] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def delete_billing_account_log(log_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:delete, 'v2beta1/{+logName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation - command.response_class = Google::Apis::LoggingV2beta1::Empty - command.params['logName'] = log_name unless log_name.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Lists the logs in projects, organizations, folders, or billing accounts. Only - # logs that have entries are listed. - # @param [String] parent - # Required. The resource name that owns the logs: - # "projects/[PROJECT_ID]" - # "organizations/[ORGANIZATION_ID]" - # "billingAccounts/[BILLING_ACCOUNT_ID]" - # "folders/[FOLDER_ID]" - # @param [String] page_token - # Optional. If present, then retrieve the next batch of results from the - # preceding call to this method. pageToken must be the value of nextPageToken - # from the previous response. The values of other method parameters should be - # identical to those in the previous call. - # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. Non- - # positive values are ignored. The presence of nextPageToken in the response - # indicates that more results might be available. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::ListLogsResponse] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::ListLogsResponse] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_billing_account_logs(parent, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+parent}/logs', options) - command.response_representation = Google::Apis::LoggingV2beta1::ListLogsResponse::Representation - command.response_class = Google::Apis::LoggingV2beta1::ListLogsResponse - command.params['parent'] = parent unless parent.nil? - command.query['pageToken'] = page_token unless page_token.nil? - command.query['pageSize'] = page_size unless page_size.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end protected diff --git a/generated/google/apis/ml_v1beta1.rb b/generated/google/apis/ml_v1beta1.rb new file mode 100644 index 000000000..ea56e0506 --- /dev/null +++ b/generated/google/apis/ml_v1beta1.rb @@ -0,0 +1,34 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/ml_v1beta1/service.rb' +require 'google/apis/ml_v1beta1/classes.rb' +require 'google/apis/ml_v1beta1/representations.rb' + +module Google + module Apis + # Google Cloud Machine Learning Engine + # + # An API to enable creating and using machine learning models. + # + # @see https://cloud.google.com/ml/ + module MlV1beta1 + VERSION = 'V1beta1' + REVISION = '20170812' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + end + end +end diff --git a/generated/google/apis/ml_v1beta1/classes.rb b/generated/google/apis/ml_v1beta1/classes.rb new file mode 100644 index 000000000..b1570d9bd --- /dev/null +++ b/generated/google/apis/ml_v1beta1/classes.rb @@ -0,0 +1,2396 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module MlV1beta1 + + # Message that represents an arbitrary HTTP body. It should only be used for + # payload formats that can't be represented as JSON, such as raw binary or + # an HTML page. + # This message can be used both in streaming and non-streaming API methods in + # the request as well as the response. + # It can be used as a top-level request field, which is convenient if one + # wants to extract parameters from either the URL or HTTP template into the + # request fields and also want access to the raw HTTP body. + # Example: + # message GetResourceRequest ` + # // A unique request id. + # string request_id = 1; + # // The raw HTTP body is bound to this field. + # google.api.HttpBody http_body = 2; + # ` + # service ResourceService ` + # rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); + # rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); + # ` + # Example with streaming methods: + # service CaldavService ` + # rpc GetCalendar(stream google.api.HttpBody) + # returns (stream google.api.HttpBody); + # rpc UpdateCalendar(stream google.api.HttpBody) + # returns (stream google.api.HttpBody); + # ` + # Use of this type only changes how the request and response bodies are + # handled, all other features will continue to work unchanged. + class GoogleApiHttpBody + include Google::Apis::Core::Hashable + + # The HTTP Content-Type string representing the content type of the body. + # Corresponds to the JSON property `contentType` + # @return [String] + attr_accessor :content_type + + # HTTP body binary data. + # Corresponds to the JSON property `data` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :data + + # Application specific response metadata. Must be set in the first response + # for streaming APIs. + # Corresponds to the JSON property `extensions` + # @return [Array>] + attr_accessor :extensions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content_type = args[:content_type] if args.key?(:content_type) + @data = args[:data] if args.key?(:data) + @extensions = args[:extensions] if args.key?(:extensions) + end + end + + # Options for automatically scaling a model. + class GoogleCloudMlV1AutoScaling + include Google::Apis::Core::Hashable + + # Optional. The minimum number of nodes to allocate for this model. These + # nodes are always up, starting from the time the model is deployed, so the + # cost of operating this model will be at least + # `rate` * `min_nodes` * number of hours since last billing cycle, + # where `rate` is the cost per node-hour as documented in + # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing), + # even if no predictions are performed. There is additional cost for each + # prediction performed. + # Unlike manual scaling, if the load gets too heavy for the nodes + # that are up, the service will automatically add nodes to handle the + # increased load as well as scale back as traffic drops, always maintaining + # at least `min_nodes`. You will be charged for the time in which additional + # nodes are used. + # If not specified, `min_nodes` defaults to 0, in which case, when traffic + # to a model stops (and after a cool-down period), nodes will be shut down + # and no charges will be incurred until traffic to the model resumes. + # Corresponds to the JSON property `minNodes` + # @return [Fixnum] + attr_accessor :min_nodes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @min_nodes = args[:min_nodes] if args.key?(:min_nodes) + end + end + + # Options for manually scaling a model. + class GoogleCloudMlV1ManualScaling + include Google::Apis::Core::Hashable + + # The number of nodes to allocate for this model. These nodes are always up, + # starting from the time the model is deployed, so the cost of operating + # this model will be proportional to `nodes` * number of hours since + # last billing cycle plus the cost for each prediction performed. + # Corresponds to the JSON property `nodes` + # @return [Fixnum] + attr_accessor :nodes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @nodes = args[:nodes] if args.key?(:nodes) + end + end + + # Represents the metadata of the long-running operation. + # Next ID: 9 + class GoogleCloudMlV1OperationMetadata + include Google::Apis::Core::Hashable + + # The time the operation was submitted. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The time operation processing completed. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Indicates whether a request to cancel this operation has been made. + # Corresponds to the JSON property `isCancellationRequested` + # @return [Boolean] + attr_accessor :is_cancellation_requested + alias_method :is_cancellation_requested?, :is_cancellation_requested + + # Contains the name of the model associated with the operation. + # Corresponds to the JSON property `modelName` + # @return [String] + attr_accessor :model_name + + # The operation type. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The time operation processing started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Represents a version of the model. + # Each version is a trained model deployed in the cloud, ready to handle + # prediction requests. A model can have multiple versions. You can get + # information about all of the versions of a given model by calling + # [projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models. + # versions/list). + # Next ID: 18 + # Corresponds to the JSON property `version` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1Version] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @end_time = args[:end_time] if args.key?(:end_time) + @is_cancellation_requested = args[:is_cancellation_requested] if args.key?(:is_cancellation_requested) + @model_name = args[:model_name] if args.key?(:model_name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @start_time = args[:start_time] if args.key?(:start_time) + @version = args[:version] if args.key?(:version) + end + end + + # Represents a version of the model. + # Each version is a trained model deployed in the cloud, ready to handle + # prediction requests. A model can have multiple versions. You can get + # information about all of the versions of a given model by calling + # [projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models. + # versions/list). + # Next ID: 18 + class GoogleCloudMlV1Version + include Google::Apis::Core::Hashable + + # Options for automatically scaling a model. + # Corresponds to the JSON property `autoScaling` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1AutoScaling] + attr_accessor :auto_scaling + + # Output only. The time the version was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Required. The Google Cloud Storage location of the trained model used to + # create the version. See the + # [overview of model + # deployment](/ml-engine/docs/concepts/deployment-overview) for more + # information. + # When passing Version to + # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models. + # versions/create) + # the model service uses the specified location as the source of the model. + # Once deployed, the model version is hosted by the prediction service, so + # this location is useful only as a historical record. + # The total number of model files can't exceed 1000. + # Corresponds to the JSON property `deploymentUri` + # @return [String] + attr_accessor :deployment_uri + + # Optional. The description specified for the version when it was created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Output only. The details of a failure or a cancellation. + # Corresponds to the JSON property `errorMessage` + # @return [String] + attr_accessor :error_message + + # Output only. If true, this version will be used to handle prediction + # requests that do not specify a version. + # You can change the default version by calling + # [projects.methods.versions.setDefault](/ml-engine/reference/rest/v1/projects. + # models.versions/setDefault). + # Corresponds to the JSON property `isDefault` + # @return [Boolean] + attr_accessor :is_default + alias_method :is_default?, :is_default + + # Output only. The time the version was last used for prediction. + # Corresponds to the JSON property `lastUseTime` + # @return [String] + attr_accessor :last_use_time + + # Options for manually scaling a model. + # Corresponds to the JSON property `manualScaling` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1ManualScaling] + attr_accessor :manual_scaling + + # Required.The name specified for the version when it was created. + # The version name must be unique within the model it is created in. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Optional. The Google Cloud ML runtime version to use for this deployment. + # If not set, Google Cloud ML will choose a version. + # Corresponds to the JSON property `runtimeVersion` + # @return [String] + attr_accessor :runtime_version + + # Output only. The state of a version. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_scaling = args[:auto_scaling] if args.key?(:auto_scaling) + @create_time = args[:create_time] if args.key?(:create_time) + @deployment_uri = args[:deployment_uri] if args.key?(:deployment_uri) + @description = args[:description] if args.key?(:description) + @error_message = args[:error_message] if args.key?(:error_message) + @is_default = args[:is_default] if args.key?(:is_default) + @last_use_time = args[:last_use_time] if args.key?(:last_use_time) + @manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling) + @name = args[:name] if args.key?(:name) + @runtime_version = args[:runtime_version] if args.key?(:runtime_version) + @state = args[:state] if args.key?(:state) + end + end + + # An observed value of a metric. + class GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric + include Google::Apis::Core::Hashable + + # The objective value at this training step. + # Corresponds to the JSON property `objectiveValue` + # @return [Float] + attr_accessor :objective_value + + # The global training step for this metric. + # Corresponds to the JSON property `trainingStep` + # @return [Fixnum] + attr_accessor :training_step + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @objective_value = args[:objective_value] if args.key?(:objective_value) + @training_step = args[:training_step] if args.key?(:training_step) + end + end + + # Options for automatically scaling a model. + class GoogleCloudMlV1beta1AutoScaling + include Google::Apis::Core::Hashable + + # Optional. The minimum number of nodes to allocate for this model. These + # nodes are always up, starting from the time the model is deployed, so the + # cost of operating this model will be at least + # `rate` * `min_nodes` * number of hours since last billing cycle, + # where `rate` is the cost per node-hour as documented in + # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing), + # even if no predictions are performed. There is additional cost for each + # prediction performed. + # Unlike manual scaling, if the load gets too heavy for the nodes + # that are up, the service will automatically add nodes to handle the + # increased load as well as scale back as traffic drops, always maintaining + # at least `min_nodes`. You will be charged for the time in which additional + # nodes are used. + # If not specified, `min_nodes` defaults to 0, in which case, when traffic + # to a model stops (and after a cool-down period), nodes will be shut down + # and no charges will be incurred until traffic to the model resumes. + # Corresponds to the JSON property `minNodes` + # @return [Fixnum] + attr_accessor :min_nodes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @min_nodes = args[:min_nodes] if args.key?(:min_nodes) + end + end + + # Request message for the CancelJob method. + class GoogleCloudMlV1beta1CancelJobRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Returns service account information associated with a project. + class GoogleCloudMlV1beta1GetConfigResponse + include Google::Apis::Core::Hashable + + # The service account Cloud ML uses to access resources in the project. + # Corresponds to the JSON property `serviceAccount` + # @return [String] + attr_accessor :service_account + + # The project number for `service_account`. + # Corresponds to the JSON property `serviceAccountProject` + # @return [Fixnum] + attr_accessor :service_account_project + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @service_account = args[:service_account] if args.key?(:service_account) + @service_account_project = args[:service_account_project] if args.key?(:service_account_project) + end + end + + # Represents the result of a single hyperparameter tuning trial from a + # training job. The TrainingOutput object that is returned on successful + # completion of a training job with hyperparameter tuning includes a list + # of HyperparameterOutput objects, one for each successful trial. + class GoogleCloudMlV1beta1HyperparameterOutput + include Google::Apis::Core::Hashable + + # All recorded object metrics for this trial. + # Corresponds to the JSON property `allMetrics` + # @return [Array] + attr_accessor :all_metrics + + # An observed value of a metric. + # Corresponds to the JSON property `finalMetric` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric] + attr_accessor :final_metric + + # The hyperparameters given to this trial. + # Corresponds to the JSON property `hyperparameters` + # @return [Hash] + attr_accessor :hyperparameters + + # The trial id for these results. + # Corresponds to the JSON property `trialId` + # @return [String] + attr_accessor :trial_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @all_metrics = args[:all_metrics] if args.key?(:all_metrics) + @final_metric = args[:final_metric] if args.key?(:final_metric) + @hyperparameters = args[:hyperparameters] if args.key?(:hyperparameters) + @trial_id = args[:trial_id] if args.key?(:trial_id) + end + end + + # Represents a set of hyperparameters to optimize. + class GoogleCloudMlV1beta1HyperparameterSpec + include Google::Apis::Core::Hashable + + # Required. The type of goal to use for tuning. Available types are + # `MAXIMIZE` and `MINIMIZE`. + # Defaults to `MAXIMIZE`. + # Corresponds to the JSON property `goal` + # @return [String] + attr_accessor :goal + + # Optional. The Tensorflow summary tag name to use for optimizing trials. For + # current versions of Tensorflow, this tag name should exactly match what is + # shown in Tensorboard, including all scopes. For versions of Tensorflow + # prior to 0.12, this should be only the tag passed to tf.Summary. + # By default, "training/hptuning/metric" will be used. + # Corresponds to the JSON property `hyperparameterMetricTag` + # @return [String] + attr_accessor :hyperparameter_metric_tag + + # Optional. The number of training trials to run concurrently. + # You can reduce the time it takes to perform hyperparameter tuning by adding + # trials in parallel. However, each trail only benefits from the information + # gained in completed trials. That means that a trial does not get access to + # the results of trials running at the same time, which could reduce the + # quality of the overall optimization. + # Each trial will use the same scale tier and machine types. + # Defaults to one. + # Corresponds to the JSON property `maxParallelTrials` + # @return [Fixnum] + attr_accessor :max_parallel_trials + + # Optional. How many training trials should be attempted to optimize + # the specified hyperparameters. + # Defaults to one. + # Corresponds to the JSON property `maxTrials` + # @return [Fixnum] + attr_accessor :max_trials + + # Required. The set of parameters to tune. + # Corresponds to the JSON property `params` + # @return [Array] + attr_accessor :params + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @goal = args[:goal] if args.key?(:goal) + @hyperparameter_metric_tag = args[:hyperparameter_metric_tag] if args.key?(:hyperparameter_metric_tag) + @max_parallel_trials = args[:max_parallel_trials] if args.key?(:max_parallel_trials) + @max_trials = args[:max_trials] if args.key?(:max_trials) + @params = args[:params] if args.key?(:params) + end + end + + # Represents a training or prediction job. + # Next ID: 16 + class GoogleCloudMlV1beta1Job + include Google::Apis::Core::Hashable + + # Output only. When the job was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Output only. When the job processing was completed. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Output only. The details of a failure or a cancellation. + # Corresponds to the JSON property `errorMessage` + # @return [String] + attr_accessor :error_message + + # Required. The user-specified id of the job. + # Corresponds to the JSON property `jobId` + # @return [String] + attr_accessor :job_id + + # Represents input parameters for a prediction job. + # Corresponds to the JSON property `predictionInput` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionInput] + attr_accessor :prediction_input + + # Represents results of a prediction job. + # Corresponds to the JSON property `predictionOutput` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionOutput] + attr_accessor :prediction_output + + # Output only. When the job processing was started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Output only. The detailed state of a job. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Represents input parameters for a training job. + # Corresponds to the JSON property `trainingInput` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingInput] + attr_accessor :training_input + + # Represents results of a training job. Output only. + # Corresponds to the JSON property `trainingOutput` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingOutput] + attr_accessor :training_output + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @end_time = args[:end_time] if args.key?(:end_time) + @error_message = args[:error_message] if args.key?(:error_message) + @job_id = args[:job_id] if args.key?(:job_id) + @prediction_input = args[:prediction_input] if args.key?(:prediction_input) + @prediction_output = args[:prediction_output] if args.key?(:prediction_output) + @start_time = args[:start_time] if args.key?(:start_time) + @state = args[:state] if args.key?(:state) + @training_input = args[:training_input] if args.key?(:training_input) + @training_output = args[:training_output] if args.key?(:training_output) + end + end + + # Response message for the ListJobs method. + class GoogleCloudMlV1beta1ListJobsResponse + include Google::Apis::Core::Hashable + + # The list of jobs. + # Corresponds to the JSON property `jobs` + # @return [Array] + attr_accessor :jobs + + # Optional. Pass this token as the `page_token` field of the request for a + # subsequent call. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @jobs = args[:jobs] if args.key?(:jobs) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for the ListModels method. + class GoogleCloudMlV1beta1ListModelsResponse + include Google::Apis::Core::Hashable + + # The list of models. + # Corresponds to the JSON property `models` + # @return [Array] + attr_accessor :models + + # Optional. Pass this token as the `page_token` field of the request for a + # subsequent call. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @models = args[:models] if args.key?(:models) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for the ListVersions method. + class GoogleCloudMlV1beta1ListVersionsResponse + include Google::Apis::Core::Hashable + + # Optional. Pass this token as the `page_token` field of the request for a + # subsequent call. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The list of versions. + # Corresponds to the JSON property `versions` + # @return [Array] + attr_accessor :versions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @versions = args[:versions] if args.key?(:versions) + end + end + + # Options for manually scaling a model. + class GoogleCloudMlV1beta1ManualScaling + include Google::Apis::Core::Hashable + + # The number of nodes to allocate for this model. These nodes are always up, + # starting from the time the model is deployed, so the cost of operating + # this model will be proportional to `nodes` * number of hours since + # last billing cycle plus the cost for each prediction performed. + # Corresponds to the JSON property `nodes` + # @return [Fixnum] + attr_accessor :nodes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @nodes = args[:nodes] if args.key?(:nodes) + end + end + + # Represents a machine learning solution. + # A model can have multiple versions, each of which is a deployed, trained + # model ready to receive prediction requests. The model itself is just a + # container. + # Next ID: 8 + class GoogleCloudMlV1beta1Model + include Google::Apis::Core::Hashable + + # Represents a version of the model. + # Each version is a trained model deployed in the cloud, ready to handle + # prediction requests. A model can have multiple versions. You can get + # information about all of the versions of a given model by calling + # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/list). + # Next ID: 18 + # Corresponds to the JSON property `defaultVersion` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version] + attr_accessor :default_version + + # Optional. The description specified for the model when it was created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Required. The name specified for the model when it was created. + # The model name must be unique within the project it is created in. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Optional. If true, enables StackDriver Logging for online prediction. + # Default is false. + # Corresponds to the JSON property `onlinePredictionLogging` + # @return [Boolean] + attr_accessor :online_prediction_logging + alias_method :online_prediction_logging?, :online_prediction_logging + + # Optional. The list of regions where the model is going to be deployed. + # Currently only one region per model is supported. + # Defaults to 'us-central1' if nothing is set. + # Note: + # * No matter where a model is deployed, it can always be accessed by + # users from anywhere, both for online and batch prediction. + # * The region for a batch prediction job is set by the region field when + # submitting the batch prediction job and does not take its value from + # this field. + # Corresponds to the JSON property `regions` + # @return [Array] + attr_accessor :regions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @default_version = args[:default_version] if args.key?(:default_version) + @description = args[:description] if args.key?(:description) + @name = args[:name] if args.key?(:name) + @online_prediction_logging = args[:online_prediction_logging] if args.key?(:online_prediction_logging) + @regions = args[:regions] if args.key?(:regions) + end + end + + # Represents the metadata of the long-running operation. + # Next ID: 9 + class GoogleCloudMlV1beta1OperationMetadata + include Google::Apis::Core::Hashable + + # The time the operation was submitted. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The time operation processing completed. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Indicates whether a request to cancel this operation has been made. + # Corresponds to the JSON property `isCancellationRequested` + # @return [Boolean] + attr_accessor :is_cancellation_requested + alias_method :is_cancellation_requested?, :is_cancellation_requested + + # Contains the name of the model associated with the operation. + # Corresponds to the JSON property `modelName` + # @return [String] + attr_accessor :model_name + + # The operation type. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The time operation processing started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Represents a version of the model. + # Each version is a trained model deployed in the cloud, ready to handle + # prediction requests. A model can have multiple versions. You can get + # information about all of the versions of a given model by calling + # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/list). + # Next ID: 18 + # Corresponds to the JSON property `version` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @end_time = args[:end_time] if args.key?(:end_time) + @is_cancellation_requested = args[:is_cancellation_requested] if args.key?(:is_cancellation_requested) + @model_name = args[:model_name] if args.key?(:model_name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @start_time = args[:start_time] if args.key?(:start_time) + @version = args[:version] if args.key?(:version) + end + end + + # Represents a single hyperparameter to optimize. + class GoogleCloudMlV1beta1ParameterSpec + include Google::Apis::Core::Hashable + + # Required if type is `CATEGORICAL`. The list of possible categories. + # Corresponds to the JSON property `categoricalValues` + # @return [Array] + attr_accessor :categorical_values + + # Required if type is `DISCRETE`. + # A list of feasible points. + # The list should be in strictly increasing order. For instance, this + # parameter might have possible settings of 1.5, 2.5, and 4.0. This list + # should not contain more than 1,000 values. + # Corresponds to the JSON property `discreteValues` + # @return [Array] + attr_accessor :discrete_values + + # Required if typeis `DOUBLE` or `INTEGER`. This field + # should be unset if type is `CATEGORICAL`. This value should be integers if + # type is `INTEGER`. + # Corresponds to the JSON property `maxValue` + # @return [Float] + attr_accessor :max_value + + # Required if type is `DOUBLE` or `INTEGER`. This field + # should be unset if type is `CATEGORICAL`. This value should be integers if + # type is INTEGER. + # Corresponds to the JSON property `minValue` + # @return [Float] + attr_accessor :min_value + + # Required. The parameter name must be unique amongst all ParameterConfigs in + # a HyperparameterSpec message. E.g., "learning_rate". + # Corresponds to the JSON property `parameterName` + # @return [String] + attr_accessor :parameter_name + + # Optional. How the parameter should be scaled to the hypercube. + # Leave unset for categorical parameters. + # Some kind of scaling is strongly recommended for real or integral + # parameters (e.g., `UNIT_LINEAR_SCALE`). + # Corresponds to the JSON property `scaleType` + # @return [String] + attr_accessor :scale_type + + # Required. The type of the parameter. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @categorical_values = args[:categorical_values] if args.key?(:categorical_values) + @discrete_values = args[:discrete_values] if args.key?(:discrete_values) + @max_value = args[:max_value] if args.key?(:max_value) + @min_value = args[:min_value] if args.key?(:min_value) + @parameter_name = args[:parameter_name] if args.key?(:parameter_name) + @scale_type = args[:scale_type] if args.key?(:scale_type) + @type = args[:type] if args.key?(:type) + end + end + + # Request for predictions to be issued against a trained model. + # The body of the request is a single JSON object with a single top-level + # field: + #
+ #
instances
+ #
A JSON array containing values representing the instances to use for + # prediction.
+ #
+ # The structure of each element of the instances list is determined by your + # model's input definition. Instances can include named inputs or can contain + # only unlabeled values. + # Not all data includes named inputs. Some instances will be simple + # JSON values (boolean, number, or string). However, instances are often lists + # of simple values, or complex nested lists. Here are some examples of request + # bodies: + # CSV data with each row encoded as a string value: + #
+      # `"instances": ["1.0,true,\\"x\\"", "-2.0,false,\\"y\\""]`
+      # 
+ # Plain text: + #
+      # `"instances": ["the quick brown fox", "la bruja le dio"]`
+      # 
+ # Sentences encoded as lists of words (vectors of strings): + #
+      # `
+      # "instances": [
+      # ["the","quick","brown"],
+      # ["la","bruja","le"],
+      # ...
+      # ]
+      # `
+      # 
+ # Floating point scalar values: + #
+      # `"instances": [0.0, 1.1, 2.2]`
+      # 
+ # Vectors of integers: + #
+      # `
+      # "instances": [
+      # [0, 1, 2],
+      # [3, 4, 5],
+      # ...
+      # ]
+      # `
+      # 
+ # Tensors (in this case, two-dimensional tensors): + #
+      # `
+      # "instances": [
+      # [
+      # [0, 1, 2],
+      # [3, 4, 5]
+      # ],
+      # ...
+      # ]
+      # `
+      # 
+ # Images can be represented different ways. In this encoding scheme the first + # two dimensions represent the rows and columns of the image, and the third + # contains lists (vectors) of the R, G, and B values for each pixel. + #
+      # `
+      # "instances": [
+      # [
+      # [
+      # [138, 30, 66],
+      # [130, 20, 56],
+      # ...
+      # ],
+      # [
+      # [126, 38, 61],
+      # [122, 24, 57],
+      # ...
+      # ],
+      # ...
+      # ],
+      # ...
+      # ]
+      # `
+      # 
+ # JSON strings must be encoded as UTF-8. To send binary data, you must + # base64-encode the data and mark it as binary. To mark a JSON string + # as binary, replace it with a JSON object with a single attribute named `b64`: + #
`"b64": "..."` 
+ # For example: + # Two Serialized tf.Examples (fake data, for illustrative purposes only): + #
+      # `"instances": [`"b64": "X5ad6u"`, `"b64": "IA9j4nx"`]`
+      # 
+ # Two JPEG image byte strings (fake data, for illustrative purposes only): + #
+      # `"instances": [`"b64": "ASa8asdf"`, `"b64": "JLK7ljk3"`]`
+      # 
+ # If your data includes named references, format each instance as a JSON object + # with the named references as the keys: + # JSON input data to be preprocessed: + #
+      # `
+      # "instances": [
+      # `
+      # "a": 1.0,
+      # "b": true,
+      # "c": "x"
+      # `,
+      # `
+      # "a": -2.0,
+      # "b": false,
+      # "c": "y"
+      # `
+      # ]
+      # `
+      # 
+ # Some models have an underlying TensorFlow graph that accepts multiple input + # tensors. In this case, you should use the names of JSON name/value pairs to + # identify the input tensors, as shown in the following exmaples: + # For a graph with input tensor aliases "tag" (string) and "image" + # (base64-encoded string): + #
+      # `
+      # "instances": [
+      # `
+      # "tag": "beach",
+      # "image": `"b64": "ASa8asdf"`
+      # `,
+      # `
+      # "tag": "car",
+      # "image": `"b64": "JLK7ljk3"`
+      # `
+      # ]
+      # `
+      # 
+ # For a graph with input tensor aliases "tag" (string) and "image" + # (3-dimensional array of 8-bit ints): + #
+      # `
+      # "instances": [
+      # `
+      # "tag": "beach",
+      # "image": [
+      # [
+      # [138, 30, 66],
+      # [130, 20, 56],
+      # ...
+      # ],
+      # [
+      # [126, 38, 61],
+      # [122, 24, 57],
+      # ...
+      # ],
+      # ...
+      # ]
+      # `,
+      # `
+      # "tag": "car",
+      # "image": [
+      # [
+      # [255, 0, 102],
+      # [255, 0, 97],
+      # ...
+      # ],
+      # [
+      # [254, 1, 101],
+      # [254, 2, 93],
+      # ...
+      # ],
+      # ...
+      # ]
+      # `,
+      # ...
+      # ]
+      # `
+      # 
+ # If the call is successful, the response body will contain one prediction + # entry per instance in the request body. If prediction fails for any + # instance, the response body will contain no predictions and will contian + # a single error entry instead. + class GoogleCloudMlV1beta1PredictRequest + include Google::Apis::Core::Hashable + + # Message that represents an arbitrary HTTP body. It should only be used for + # payload formats that can't be represented as JSON, such as raw binary or + # an HTML page. + # This message can be used both in streaming and non-streaming API methods in + # the request as well as the response. + # It can be used as a top-level request field, which is convenient if one + # wants to extract parameters from either the URL or HTTP template into the + # request fields and also want access to the raw HTTP body. + # Example: + # message GetResourceRequest ` + # // A unique request id. + # string request_id = 1; + # // The raw HTTP body is bound to this field. + # google.api.HttpBody http_body = 2; + # ` + # service ResourceService ` + # rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); + # rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); + # ` + # Example with streaming methods: + # service CaldavService ` + # rpc GetCalendar(stream google.api.HttpBody) + # returns (stream google.api.HttpBody); + # rpc UpdateCalendar(stream google.api.HttpBody) + # returns (stream google.api.HttpBody); + # ` + # Use of this type only changes how the request and response bodies are + # handled, all other features will continue to work unchanged. + # Corresponds to the JSON property `httpBody` + # @return [Google::Apis::MlV1beta1::GoogleApiHttpBody] + attr_accessor :http_body + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @http_body = args[:http_body] if args.key?(:http_body) + end + end + + # Represents input parameters for a prediction job. + class GoogleCloudMlV1beta1PredictionInput + include Google::Apis::Core::Hashable + + # Optional. Number of records per batch, defaults to 64. + # The service will buffer batch_size number of records in memory before + # invoking one Tensorflow prediction call internally. So take the record + # size and memory available into consideration when setting this parameter. + # Corresponds to the JSON property `batchSize` + # @return [Fixnum] + attr_accessor :batch_size + + # Required. The format of the input data files. + # Corresponds to the JSON property `dataFormat` + # @return [String] + attr_accessor :data_format + + # Required. The Google Cloud Storage location of the input data files. + # May contain wildcards. + # Corresponds to the JSON property `inputPaths` + # @return [Array] + attr_accessor :input_paths + + # Optional. The maximum number of workers to be used for parallel processing. + # Defaults to 10 if not specified. + # Corresponds to the JSON property `maxWorkerCount` + # @return [Fixnum] + attr_accessor :max_worker_count + + # Use this field if you want to use the default version for the specified + # model. The string must use the following format: + # `"projects/[YOUR_PROJECT]/models/[YOUR_MODEL]"` + # Corresponds to the JSON property `modelName` + # @return [String] + attr_accessor :model_name + + # Required. The output Google Cloud Storage location. + # Corresponds to the JSON property `outputPath` + # @return [String] + attr_accessor :output_path + + # Required. The Google Compute Engine region to run the prediction job in. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # Optional. The Google Cloud ML runtime version to use for this batch + # prediction. If not set, Google Cloud ML will pick the runtime version used + # during the CreateVersion request for this model version, or choose the + # latest stable version when model version information is not available + # such as when the model is specified by uri. + # Corresponds to the JSON property `runtimeVersion` + # @return [String] + attr_accessor :runtime_version + + # Use this field if you want to specify a Google Cloud Storage path for + # the model to use. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + # Use this field if you want to specify a version of the model to use. The + # string is formatted the same way as `model_version`, with the addition + # of the version information: + # `"projects/[YOUR_PROJECT]/models/YOUR_MODEL/versions/[ + # YOUR_VERSION]"` + # Corresponds to the JSON property `versionName` + # @return [String] + attr_accessor :version_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @batch_size = args[:batch_size] if args.key?(:batch_size) + @data_format = args[:data_format] if args.key?(:data_format) + @input_paths = args[:input_paths] if args.key?(:input_paths) + @max_worker_count = args[:max_worker_count] if args.key?(:max_worker_count) + @model_name = args[:model_name] if args.key?(:model_name) + @output_path = args[:output_path] if args.key?(:output_path) + @region = args[:region] if args.key?(:region) + @runtime_version = args[:runtime_version] if args.key?(:runtime_version) + @uri = args[:uri] if args.key?(:uri) + @version_name = args[:version_name] if args.key?(:version_name) + end + end + + # Represents results of a prediction job. + class GoogleCloudMlV1beta1PredictionOutput + include Google::Apis::Core::Hashable + + # The number of data instances which resulted in errors. + # Corresponds to the JSON property `errorCount` + # @return [Fixnum] + attr_accessor :error_count + + # Node hours used by the batch prediction job. + # Corresponds to the JSON property `nodeHours` + # @return [Float] + attr_accessor :node_hours + + # The output Google Cloud Storage location provided at the job creation time. + # Corresponds to the JSON property `outputPath` + # @return [String] + attr_accessor :output_path + + # The number of generated predictions. + # Corresponds to the JSON property `predictionCount` + # @return [Fixnum] + attr_accessor :prediction_count + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_count = args[:error_count] if args.key?(:error_count) + @node_hours = args[:node_hours] if args.key?(:node_hours) + @output_path = args[:output_path] if args.key?(:output_path) + @prediction_count = args[:prediction_count] if args.key?(:prediction_count) + end + end + + # Request message for the SetDefaultVersion request. + class GoogleCloudMlV1beta1SetDefaultVersionRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Represents input parameters for a training job. + class GoogleCloudMlV1beta1TrainingInput + include Google::Apis::Core::Hashable + + # Optional. Command line arguments to pass to the program. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # Represents a set of hyperparameters to optimize. + # Corresponds to the JSON property `hyperparameters` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterSpec] + attr_accessor :hyperparameters + + # Optional. A Google Cloud Storage path in which to store training outputs + # and other data needed for training. This path is passed to your TensorFlow + # program as the 'job_dir' command-line argument. The benefit of specifying + # this field is that Cloud ML validates the path for use in training. + # Corresponds to the JSON property `jobDir` + # @return [String] + attr_accessor :job_dir + + # Optional. Specifies the type of virtual machine to use for your training + # job's master worker. + # The following types are supported: + #
+ #
standard
+ #
+ # A basic machine configuration suitable for training simple models with + # small to moderate datasets. + #
+ #
large_model
+ #
+ # A machine with a lot of memory, specially suited for parameter servers + # when your model is large (having many hidden layers or layers with very + # large numbers of nodes). + #
+ #
complex_model_s
+ #
+ # A machine suitable for the master and workers of the cluster when your + # model requires more computation than the standard machine can handle + # satisfactorily. + #
+ #
complex_model_m
+ #
+ # A machine with roughly twice the number of cores and roughly double the + # memory of complex_model_s. + #
+ #
complex_model_l
+ #
+ # A machine with roughly twice the number of cores and roughly double the + # memory of complex_model_m. + #
+ #
standard_gpu
+ #
+ # A machine equivalent to standard that + # also includes a + # + # GPU that you can use in your trainer. + #
+ #
complex_model_m_gpu
+ #
+ # A machine equivalent to + # complex_model_m that also includes + # four GPUs. + #
+ #
+ # You must set this value when `scaleTier` is set to `CUSTOM`. + # Corresponds to the JSON property `masterType` + # @return [String] + attr_accessor :master_type + + # Required. The Google Cloud Storage location of the packages with + # the training program and any additional dependencies. + # The maximum number of package URIs is 100. + # Corresponds to the JSON property `packageUris` + # @return [Array] + attr_accessor :package_uris + + # Optional. The number of parameter server replicas to use for the training + # job. Each replica in the cluster will be of the type specified in + # `parameter_server_type`. + # This value can only be used when `scale_tier` is set to `CUSTOM`.If you + # set this value, you must also set `parameter_server_type`. + # Corresponds to the JSON property `parameterServerCount` + # @return [Fixnum] + attr_accessor :parameter_server_count + + # Optional. Specifies the type of virtual machine to use for your training + # job's parameter server. + # The supported values are the same as those described in the entry for + # `master_type`. + # This value must be present when `scaleTier` is set to `CUSTOM` and + # `parameter_server_count` is greater than zero. + # Corresponds to the JSON property `parameterServerType` + # @return [String] + attr_accessor :parameter_server_type + + # Required. The Python module name to run after installing the packages. + # Corresponds to the JSON property `pythonModule` + # @return [String] + attr_accessor :python_module + + # Required. The Google Compute Engine region to run the training job in. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # Optional. The Google Cloud ML runtime version to use for training. If not + # set, Google Cloud ML will choose the latest stable version. + # Corresponds to the JSON property `runtimeVersion` + # @return [String] + attr_accessor :runtime_version + + # Required. Specifies the machine types, the number of replicas for workers + # and parameter servers. + # Corresponds to the JSON property `scaleTier` + # @return [String] + attr_accessor :scale_tier + + # Optional. The number of worker replicas to use for the training job. Each + # replica in the cluster will be of the type specified in `worker_type`. + # This value can only be used when `scale_tier` is set to `CUSTOM`. If you + # set this value, you must also set `worker_type`. + # Corresponds to the JSON property `workerCount` + # @return [Fixnum] + attr_accessor :worker_count + + # Optional. Specifies the type of virtual machine to use for your training + # job's worker nodes. + # The supported values are the same as those described in the entry for + # `masterType`. + # This value must be present when `scaleTier` is set to `CUSTOM` and + # `workerCount` is greater than zero. + # Corresponds to the JSON property `workerType` + # @return [String] + attr_accessor :worker_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @args = args[:args] if args.key?(:args) + @hyperparameters = args[:hyperparameters] if args.key?(:hyperparameters) + @job_dir = args[:job_dir] if args.key?(:job_dir) + @master_type = args[:master_type] if args.key?(:master_type) + @package_uris = args[:package_uris] if args.key?(:package_uris) + @parameter_server_count = args[:parameter_server_count] if args.key?(:parameter_server_count) + @parameter_server_type = args[:parameter_server_type] if args.key?(:parameter_server_type) + @python_module = args[:python_module] if args.key?(:python_module) + @region = args[:region] if args.key?(:region) + @runtime_version = args[:runtime_version] if args.key?(:runtime_version) + @scale_tier = args[:scale_tier] if args.key?(:scale_tier) + @worker_count = args[:worker_count] if args.key?(:worker_count) + @worker_type = args[:worker_type] if args.key?(:worker_type) + end + end + + # Represents results of a training job. Output only. + class GoogleCloudMlV1beta1TrainingOutput + include Google::Apis::Core::Hashable + + # The number of hyperparameter tuning trials that completed successfully. + # Only set for hyperparameter tuning jobs. + # Corresponds to the JSON property `completedTrialCount` + # @return [Fixnum] + attr_accessor :completed_trial_count + + # The amount of ML units consumed by the job. + # Corresponds to the JSON property `consumedMLUnits` + # @return [Float] + attr_accessor :consumed_ml_units + + # Whether this job is a hyperparameter tuning job. + # Corresponds to the JSON property `isHyperparameterTuningJob` + # @return [Boolean] + attr_accessor :is_hyperparameter_tuning_job + alias_method :is_hyperparameter_tuning_job?, :is_hyperparameter_tuning_job + + # Results for individual Hyperparameter trials. + # Only set for hyperparameter tuning jobs. + # Corresponds to the JSON property `trials` + # @return [Array] + attr_accessor :trials + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @completed_trial_count = args[:completed_trial_count] if args.key?(:completed_trial_count) + @consumed_ml_units = args[:consumed_ml_units] if args.key?(:consumed_ml_units) + @is_hyperparameter_tuning_job = args[:is_hyperparameter_tuning_job] if args.key?(:is_hyperparameter_tuning_job) + @trials = args[:trials] if args.key?(:trials) + end + end + + # Represents a version of the model. + # Each version is a trained model deployed in the cloud, ready to handle + # prediction requests. A model can have multiple versions. You can get + # information about all of the versions of a given model by calling + # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/list). + # Next ID: 18 + class GoogleCloudMlV1beta1Version + include Google::Apis::Core::Hashable + + # Options for automatically scaling a model. + # Corresponds to the JSON property `autoScaling` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1AutoScaling] + attr_accessor :auto_scaling + + # Output only. The time the version was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Required. The Google Cloud Storage location of the trained model used to + # create the version. See the + # [overview of model + # deployment](/ml-engine/docs/concepts/deployment-overview) for more + # information. + # When passing Version to + # [projects.models.versions.create](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/create) + # the model service uses the specified location as the source of the model. + # Once deployed, the model version is hosted by the prediction service, so + # this location is useful only as a historical record. + # The total number of model files can't exceed 1000. + # Corresponds to the JSON property `deploymentUri` + # @return [String] + attr_accessor :deployment_uri + + # Optional. The description specified for the version when it was created. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Output only. The details of a failure or a cancellation. + # Corresponds to the JSON property `errorMessage` + # @return [String] + attr_accessor :error_message + + # Output only. If true, this version will be used to handle prediction + # requests that do not specify a version. + # You can change the default version by calling + # [projects.methods.versions.setDefault](/ml-engine/reference/rest/v1beta1/ + # projects.models.versions/setDefault). + # Corresponds to the JSON property `isDefault` + # @return [Boolean] + attr_accessor :is_default + alias_method :is_default?, :is_default + + # Output only. The time the version was last used for prediction. + # Corresponds to the JSON property `lastUseTime` + # @return [String] + attr_accessor :last_use_time + + # Options for manually scaling a model. + # Corresponds to the JSON property `manualScaling` + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ManualScaling] + attr_accessor :manual_scaling + + # Required.The name specified for the version when it was created. + # The version name must be unique within the model it is created in. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Optional. The Google Cloud ML runtime version to use for this deployment. + # If not set, Google Cloud ML will choose a version. + # Corresponds to the JSON property `runtimeVersion` + # @return [String] + attr_accessor :runtime_version + + # Output only. The state of a version. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_scaling = args[:auto_scaling] if args.key?(:auto_scaling) + @create_time = args[:create_time] if args.key?(:create_time) + @deployment_uri = args[:deployment_uri] if args.key?(:deployment_uri) + @description = args[:description] if args.key?(:description) + @error_message = args[:error_message] if args.key?(:error_message) + @is_default = args[:is_default] if args.key?(:is_default) + @last_use_time = args[:last_use_time] if args.key?(:last_use_time) + @manual_scaling = args[:manual_scaling] if args.key?(:manual_scaling) + @name = args[:name] if args.key?(:name) + @runtime_version = args[:runtime_version] if args.key?(:runtime_version) + @state = args[:state] if args.key?(:state) + end + end + + # Write a Cloud Audit log + class GoogleIamV1LogConfigCloudAuditOptions + include Google::Apis::Core::Hashable + + # The log_name to populate in the Cloud Audit Record. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_name = args[:log_name] if args.key?(:log_name) + end + end + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, + # and end in "_count". Field names should not contain an initial slash. + # The actual exported metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are + # their respective values. + # At present the only supported field names are + # - "iam_principal", corresponding to IAMContext.principal; + # - "" (empty string), resulting in one aggretated counter with no field. + # Examples: + # counter ` metric: "/debug_access_count" field: "iam_principal" ` + # ==> increment counter /iam/policy/backend_debug_access_count + # `iam_principal=[value of IAMContext.principal]` + # At this time we do not support: + # * multiple field names (though this may be supported in the future) + # * decrementing the counter + # * incrementing it by anything other than 1 + class GoogleIamV1LogConfigCounterOptions + include Google::Apis::Core::Hashable + + # The field value to attribute. + # Corresponds to the JSON property `field` + # @return [String] + attr_accessor :field + + # The metric to update. + # Corresponds to the JSON property `metric` + # @return [String] + attr_accessor :metric + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + @metric = args[:metric] if args.key?(:metric) + end + end + + # Write a Data Access (Gin) log + class GoogleIamV1LogConfigDataAccessOptions + include Google::Apis::Core::Hashable + + # Whether Gin logging should happen in a fail-closed manner at the caller. + # This is relevant only in the LocalIAM implementation, for now. + # Corresponds to the JSON property `logMode` + # @return [String] + attr_accessor :log_mode + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_mode = args[:log_mode] if args.key?(:log_mode) + end + end + + # Specifies the audit configuration for a service. + # The configuration determines which permission types are logged, and what + # identities, if any, are exempted from logging. + # An AuditConfig must have one or more AuditLogConfigs. + # If there are AuditConfigs for both `allServices` and a specific service, + # the union of the two AuditConfigs is used for that service: the log_types + # specified in each AuditConfig are enabled, and the exempted_members in each + # AuditConfig are exempted. + # Example Policy with multiple AuditConfigs: + # ` + # "audit_configs": [ + # ` + # "service": "allServices" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:foo@gmail.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # `, + # ` + # "log_type": "ADMIN_READ", + # ` + # ] + # `, + # ` + # "service": "fooservice.googleapis.com" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # `, + # ` + # "log_type": "DATA_WRITE", + # "exempted_members": [ + # "user:bar@gmail.com" + # ] + # ` + # ] + # ` + # ] + # ` + # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + # logging. It also exempts foo@gmail.com from DATA_READ logging, and + # bar@gmail.com from DATA_WRITE logging. + class GoogleIamV1AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Next ID: 4 + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # Specifies a service that will be enabled for audit logging. + # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + # `allServices` is a special value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. + # Example: + # ` + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:foo@gmail.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # ` + # ] + # ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting + # foo@gmail.com from DATA_READ logging. + class GoogleIamV1AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of + # permission. + # Follows the same format of Binding.members. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Associates `members` with a `role`. + class GoogleIamV1Binding + include Google::Apis::Core::Hashable + + # Represents an expression text. Example: + # title: "User account presence" + # description: "Determines whether the request has a user account" + # expression: "size(request.user) > 0" + # Corresponds to the JSON property `condition` + # @return [Google::Apis::MlV1beta1::GoogleTypeExpr] + attr_accessor :condition + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. + # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + # Required + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # A condition to be met. + class GoogleIamV1Condition + include Google::Apis::Core::Hashable + + # Trusted attributes supplied by the IAM system. + # Corresponds to the JSON property `iam` + # @return [String] + attr_accessor :iam + + # An operator to apply the subject with. + # Corresponds to the JSON property `op` + # @return [String] + attr_accessor :op + + # Trusted attributes discharged by the service. + # Corresponds to the JSON property `svc` + # @return [String] + attr_accessor :svc + + # Trusted attributes supplied by any service that owns resources and uses + # the IAM system for access control. + # Corresponds to the JSON property `sys` + # @return [String] + attr_accessor :sys + + # DEPRECATED. Use 'values' instead. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + # The objects of the condition. This is mutually exclusive with 'value'. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @iam = args[:iam] if args.key?(:iam) + @op = args[:op] if args.key?(:op) + @svc = args[:svc] if args.key?(:svc) + @sys = args[:sys] if args.key?(:sys) + @value = args[:value] if args.key?(:value) + @values = args[:values] if args.key?(:values) + end + end + + # Specifies what kind of log the caller must write + class GoogleIamV1LogConfig + include Google::Apis::Core::Hashable + + # Write a Cloud Audit log + # Corresponds to the JSON property `cloudAudit` + # @return [Google::Apis::MlV1beta1::GoogleIamV1LogConfigCloudAuditOptions] + attr_accessor :cloud_audit + + # Increment a streamz counter with the specified metric and field names. + # Metric names should start with a '/', generally be lowercase-only, + # and end in "_count". Field names should not contain an initial slash. + # The actual exported metric names will have "/iam/policy" prepended. + # Field names correspond to IAM request parameters and field values are + # their respective values. + # At present the only supported field names are + # - "iam_principal", corresponding to IAMContext.principal; + # - "" (empty string), resulting in one aggretated counter with no field. + # Examples: + # counter ` metric: "/debug_access_count" field: "iam_principal" ` + # ==> increment counter /iam/policy/backend_debug_access_count + # `iam_principal=[value of IAMContext.principal]` + # At this time we do not support: + # * multiple field names (though this may be supported in the future) + # * decrementing the counter + # * incrementing it by anything other than 1 + # Corresponds to the JSON property `counter` + # @return [Google::Apis::MlV1beta1::GoogleIamV1LogConfigCounterOptions] + attr_accessor :counter + + # Write a Data Access (Gin) log + # Corresponds to the JSON property `dataAccess` + # @return [Google::Apis::MlV1beta1::GoogleIamV1LogConfigDataAccessOptions] + attr_accessor :data_access + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit) + @counter = args[:counter] if args.key?(:counter) + @data_access = args[:data_access] if args.key?(:data_access) + end + end + + # 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). + class GoogleIamV1Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. + # `bindings` with no members will result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `iamOwned` + # @return [Boolean] + attr_accessor :iam_owned + alias_method :iam_owned?, :iam_owned + + # 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. + # Corresponds to the JSON property `rules` + # @return [Array] + attr_accessor :rules + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @iam_owned = args[:iam_owned] if args.key?(:iam_owned) + @rules = args[:rules] if args.key?(:rules) + @version = args[:version] if args.key?(:version) + end + end + + # A rule to be applied in a Policy. + class GoogleIamV1Rule + include Google::Apis::Core::Hashable + + # Required + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # Additional restrictions that must be met + # Corresponds to the JSON property `conditions` + # @return [Array] + attr_accessor :conditions + + # Human-readable description of the rule. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # Corresponds to the JSON property `in` + # @return [Array] + attr_accessor :in + + # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries + # that match the LOG action. + # Corresponds to the JSON property `logConfig` + # @return [Array] + attr_accessor :log_config + + # If one or more 'not_in' clauses are specified, the rule matches + # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries. + # The format for in and not_in entries is the same as for members in a + # Binding (see google/iam/v1/policy.proto). + # Corresponds to the JSON property `notIn` + # @return [Array] + attr_accessor :not_in + + # 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. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @conditions = args[:conditions] if args.key?(:conditions) + @description = args[:description] if args.key?(:description) + @in = args[:in] if args.key?(:in) + @log_config = args[:log_config] if args.key?(:log_config) + @not_in = args[:not_in] if args.key?(:not_in) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Request message for `SetIamPolicy` method. + class GoogleIamV1SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # 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). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::MlV1beta1::GoogleIamV1Policy] + attr_accessor :policy + + # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + # the fields in the mask will be modified. If no mask is provided, the + # following default mask is used: + # paths: "bindings, etag" + # This field is only used by Cloud IAM. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # Request message for `TestIamPermissions` method. + class GoogleIamV1TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Response message for `TestIamPermissions` method. + class GoogleIamV1TestIamPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # The response message for Operations.ListOperations. + class GoogleLongrunningListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class GoogleLongrunningOperation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::MlV1beta1::GoogleRpcStatus] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class GoogleProtobufEmpty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class GoogleRpcStatus + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Represents an expression text. Example: + # title: "User account presence" + # description: "Determines whether the request has a user account" + # expression: "size(request.user) > 0" + class GoogleTypeExpr + include Google::Apis::Core::Hashable + + # An optional description of the expression. This is a longer text which + # describes the expression, e.g. when hovered over it in a UI. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Textual representation of an expression in + # Common Expression Language syntax. + # The application context of the containing message determines which + # well-known feature set of CEL is supported. + # Corresponds to the JSON property `expression` + # @return [String] + attr_accessor :expression + + # An optional string indicating the location of the expression for error + # reporting, e.g. a file name and a position in the file. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # An optional title for the expression, i.e. a short string describing + # its purpose. This can be used e.g. in UIs which allow to enter the + # expression. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @expression = args[:expression] if args.key?(:expression) + @location = args[:location] if args.key?(:location) + @title = args[:title] if args.key?(:title) + end + end + end + end +end diff --git a/generated/google/apis/ml_v1beta1/representations.rb b/generated/google/apis/ml_v1beta1/representations.rb new file mode 100644 index 000000000..c4929a01b --- /dev/null +++ b/generated/google/apis/ml_v1beta1/representations.rb @@ -0,0 +1,755 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module MlV1beta1 + + class GoogleApiHttpBody + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1AutoScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1ManualScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1Version + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1AutoScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1CancelJobRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1GetConfigResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1HyperparameterOutput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1HyperparameterSpec + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1Job + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1ListJobsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1ListModelsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1ListVersionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1ManualScaling + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1Model + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1ParameterSpec + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1PredictRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1PredictionInput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1PredictionOutput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1SetDefaultVersionRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1TrainingInput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1TrainingOutput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleCloudMlV1beta1Version + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1LogConfigCloudAuditOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1LogConfigCounterOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1LogConfigDataAccessOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1Condition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1LogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1Rule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1TestIamPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIamV1TestIamPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleLongrunningListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleLongrunningOperation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleProtobufEmpty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleRpcStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleTypeExpr + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleApiHttpBody + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content_type, as: 'contentType' + property :data, :base64 => true, as: 'data' + collection :extensions, as: 'extensions' + end + end + + class GoogleCloudMlV1AutoScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :min_nodes, as: 'minNodes' + end + end + + class GoogleCloudMlV1ManualScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :nodes, as: 'nodes' + end + end + + class GoogleCloudMlV1OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :end_time, as: 'endTime' + property :is_cancellation_requested, as: 'isCancellationRequested' + property :model_name, as: 'modelName' + property :operation_type, as: 'operationType' + property :start_time, as: 'startTime' + property :version, as: 'version', class: Google::Apis::MlV1beta1::GoogleCloudMlV1Version, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1Version::Representation + + end + end + + class GoogleCloudMlV1Version + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_scaling, as: 'autoScaling', class: Google::Apis::MlV1beta1::GoogleCloudMlV1AutoScaling, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1AutoScaling::Representation + + property :create_time, as: 'createTime' + property :deployment_uri, as: 'deploymentUri' + property :description, as: 'description' + property :error_message, as: 'errorMessage' + property :is_default, as: 'isDefault' + property :last_use_time, as: 'lastUseTime' + property :manual_scaling, as: 'manualScaling', class: Google::Apis::MlV1beta1::GoogleCloudMlV1ManualScaling, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1ManualScaling::Representation + + property :name, as: 'name' + property :runtime_version, as: 'runtimeVersion' + property :state, as: 'state' + end + end + + class GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :objective_value, as: 'objectiveValue' + property :training_step, :numeric_string => true, as: 'trainingStep' + end + end + + class GoogleCloudMlV1beta1AutoScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :min_nodes, as: 'minNodes' + end + end + + class GoogleCloudMlV1beta1CancelJobRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GoogleCloudMlV1beta1GetConfigResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :service_account, as: 'serviceAccount' + property :service_account_project, :numeric_string => true, as: 'serviceAccountProject' + end + end + + class GoogleCloudMlV1beta1HyperparameterOutput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :all_metrics, as: 'allMetrics', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric::Representation + + property :final_metric, as: 'finalMetric', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutputHyperparameterMetric::Representation + + hash :hyperparameters, as: 'hyperparameters' + property :trial_id, as: 'trialId' + end + end + + class GoogleCloudMlV1beta1HyperparameterSpec + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :goal, as: 'goal' + property :hyperparameter_metric_tag, as: 'hyperparameterMetricTag' + property :max_parallel_trials, as: 'maxParallelTrials' + property :max_trials, as: 'maxTrials' + collection :params, as: 'params', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ParameterSpec, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ParameterSpec::Representation + + end + end + + class GoogleCloudMlV1beta1Job + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :end_time, as: 'endTime' + property :error_message, as: 'errorMessage' + property :job_id, as: 'jobId' + property :prediction_input, as: 'predictionInput', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionInput, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionInput::Representation + + property :prediction_output, as: 'predictionOutput', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionOutput, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictionOutput::Representation + + property :start_time, as: 'startTime' + property :state, as: 'state' + property :training_input, as: 'trainingInput', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingInput, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingInput::Representation + + property :training_output, as: 'trainingOutput', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingOutput, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1TrainingOutput::Representation + + end + end + + class GoogleCloudMlV1beta1ListJobsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :jobs, as: 'jobs', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class GoogleCloudMlV1beta1ListModelsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :models, as: 'models', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class GoogleCloudMlV1beta1ListVersionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :versions, as: 'versions', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version::Representation + + end + end + + class GoogleCloudMlV1beta1ManualScaling + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :nodes, as: 'nodes' + end + end + + class GoogleCloudMlV1beta1Model + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :default_version, as: 'defaultVersion', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version::Representation + + property :description, as: 'description' + property :name, as: 'name' + property :online_prediction_logging, as: 'onlinePredictionLogging' + collection :regions, as: 'regions' + end + end + + class GoogleCloudMlV1beta1OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :end_time, as: 'endTime' + property :is_cancellation_requested, as: 'isCancellationRequested' + property :model_name, as: 'modelName' + property :operation_type, as: 'operationType' + property :start_time, as: 'startTime' + property :version, as: 'version', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version::Representation + + end + end + + class GoogleCloudMlV1beta1ParameterSpec + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :categorical_values, as: 'categoricalValues' + collection :discrete_values, as: 'discreteValues' + property :max_value, as: 'maxValue' + property :min_value, as: 'minValue' + property :parameter_name, as: 'parameterName' + property :scale_type, as: 'scaleType' + property :type, as: 'type' + end + end + + class GoogleCloudMlV1beta1PredictRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :http_body, as: 'httpBody', class: Google::Apis::MlV1beta1::GoogleApiHttpBody, decorator: Google::Apis::MlV1beta1::GoogleApiHttpBody::Representation + + end + end + + class GoogleCloudMlV1beta1PredictionInput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :batch_size, :numeric_string => true, as: 'batchSize' + property :data_format, as: 'dataFormat' + collection :input_paths, as: 'inputPaths' + property :max_worker_count, :numeric_string => true, as: 'maxWorkerCount' + property :model_name, as: 'modelName' + property :output_path, as: 'outputPath' + property :region, as: 'region' + property :runtime_version, as: 'runtimeVersion' + property :uri, as: 'uri' + property :version_name, as: 'versionName' + end + end + + class GoogleCloudMlV1beta1PredictionOutput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_count, :numeric_string => true, as: 'errorCount' + property :node_hours, as: 'nodeHours' + property :output_path, as: 'outputPath' + property :prediction_count, :numeric_string => true, as: 'predictionCount' + end + end + + class GoogleCloudMlV1beta1SetDefaultVersionRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GoogleCloudMlV1beta1TrainingInput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :args, as: 'args' + property :hyperparameters, as: 'hyperparameters', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterSpec, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterSpec::Representation + + property :job_dir, as: 'jobDir' + property :master_type, as: 'masterType' + collection :package_uris, as: 'packageUris' + property :parameter_server_count, :numeric_string => true, as: 'parameterServerCount' + property :parameter_server_type, as: 'parameterServerType' + property :python_module, as: 'pythonModule' + property :region, as: 'region' + property :runtime_version, as: 'runtimeVersion' + property :scale_tier, as: 'scaleTier' + property :worker_count, :numeric_string => true, as: 'workerCount' + property :worker_type, as: 'workerType' + end + end + + class GoogleCloudMlV1beta1TrainingOutput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :completed_trial_count, :numeric_string => true, as: 'completedTrialCount' + property :consumed_ml_units, as: 'consumedMLUnits' + property :is_hyperparameter_tuning_job, as: 'isHyperparameterTuningJob' + collection :trials, as: 'trials', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutput, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1HyperparameterOutput::Representation + + end + end + + class GoogleCloudMlV1beta1Version + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_scaling, as: 'autoScaling', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1AutoScaling, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1AutoScaling::Representation + + property :create_time, as: 'createTime' + property :deployment_uri, as: 'deploymentUri' + property :description, as: 'description' + property :error_message, as: 'errorMessage' + property :is_default, as: 'isDefault' + property :last_use_time, as: 'lastUseTime' + property :manual_scaling, as: 'manualScaling', class: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ManualScaling, decorator: Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ManualScaling::Representation + + property :name, as: 'name' + property :runtime_version, as: 'runtimeVersion' + property :state, as: 'state' + end + end + + class GoogleIamV1LogConfigCloudAuditOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :log_name, as: 'logName' + end + end + + class GoogleIamV1LogConfigCounterOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field' + property :metric, as: 'metric' + end + end + + class GoogleIamV1LogConfigDataAccessOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :log_mode, as: 'logMode' + end + end + + class GoogleIamV1AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::MlV1beta1::GoogleIamV1AuditLogConfig, decorator: Google::Apis::MlV1beta1::GoogleIamV1AuditLogConfig::Representation + + collection :exempted_members, as: 'exemptedMembers' + property :service, as: 'service' + end + end + + class GoogleIamV1AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class GoogleIamV1Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::MlV1beta1::GoogleTypeExpr, decorator: Google::Apis::MlV1beta1::GoogleTypeExpr::Representation + + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class GoogleIamV1Condition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :iam, as: 'iam' + property :op, as: 'op' + property :svc, as: 'svc' + property :sys, as: 'sys' + property :value, as: 'value' + collection :values, as: 'values' + end + end + + class GoogleIamV1LogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cloud_audit, as: 'cloudAudit', class: Google::Apis::MlV1beta1::GoogleIamV1LogConfigCloudAuditOptions, decorator: Google::Apis::MlV1beta1::GoogleIamV1LogConfigCloudAuditOptions::Representation + + property :counter, as: 'counter', class: Google::Apis::MlV1beta1::GoogleIamV1LogConfigCounterOptions, decorator: Google::Apis::MlV1beta1::GoogleIamV1LogConfigCounterOptions::Representation + + property :data_access, as: 'dataAccess', class: Google::Apis::MlV1beta1::GoogleIamV1LogConfigDataAccessOptions, decorator: Google::Apis::MlV1beta1::GoogleIamV1LogConfigDataAccessOptions::Representation + + end + end + + class GoogleIamV1Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::MlV1beta1::GoogleIamV1AuditConfig, decorator: Google::Apis::MlV1beta1::GoogleIamV1AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::MlV1beta1::GoogleIamV1Binding, decorator: Google::Apis::MlV1beta1::GoogleIamV1Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :iam_owned, as: 'iamOwned' + collection :rules, as: 'rules', class: Google::Apis::MlV1beta1::GoogleIamV1Rule, decorator: Google::Apis::MlV1beta1::GoogleIamV1Rule::Representation + + property :version, as: 'version' + end + end + + class GoogleIamV1Rule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + collection :conditions, as: 'conditions', class: Google::Apis::MlV1beta1::GoogleIamV1Condition, decorator: Google::Apis::MlV1beta1::GoogleIamV1Condition::Representation + + property :description, as: 'description' + collection :in, as: 'in' + collection :log_config, as: 'logConfig', class: Google::Apis::MlV1beta1::GoogleIamV1LogConfig, decorator: Google::Apis::MlV1beta1::GoogleIamV1LogConfig::Representation + + collection :not_in, as: 'notIn' + collection :permissions, as: 'permissions' + end + end + + class GoogleIamV1SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::MlV1beta1::GoogleIamV1Policy, decorator: Google::Apis::MlV1beta1::GoogleIamV1Policy::Representation + + property :update_mask, as: 'updateMask' + end + end + + class GoogleIamV1TestIamPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class GoogleIamV1TestIamPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class GoogleLongrunningListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::MlV1beta1::GoogleLongrunningOperation, decorator: Google::Apis::MlV1beta1::GoogleLongrunningOperation::Representation + + end + end + + class GoogleLongrunningOperation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::MlV1beta1::GoogleRpcStatus, decorator: Google::Apis::MlV1beta1::GoogleRpcStatus::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class GoogleProtobufEmpty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GoogleRpcStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class GoogleTypeExpr + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :expression, as: 'expression' + property :location, as: 'location' + property :title, as: 'title' + end + end + end + end +end diff --git a/generated/google/apis/ml_v1beta1/service.rb b/generated/google/apis/ml_v1beta1/service.rb new file mode 100644 index 000000000..09ae7e852 --- /dev/null +++ b/generated/google/apis/ml_v1beta1/service.rb @@ -0,0 +1,975 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module MlV1beta1 + # Google Cloud Machine Learning Engine + # + # An API to enable creating and using machine learning models. + # + # @example + # require 'google/apis/ml_v1beta1' + # + # Ml = Google::Apis::MlV1beta1 # Alias the module + # service = Ml::CloudMachineLearningEngineService.new + # + # @see https://cloud.google.com/ml/ + class CloudMachineLearningEngineService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://ml.googleapis.com/', '') + @batch_path = 'batch' + end + + # Get the service account information associated with your project. You need + # this information in order to grant the service account persmissions for + # the Google Cloud Storage location where you put your model training code + # for training the model with Google Cloud Machine Learning. + # @param [String] name + # Required. The project name. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1GetConfigResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1GetConfigResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_config(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}:getConfig', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1GetConfigResponse::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1GetConfigResponse + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Performs prediction on the data in the request. + # **** REMOVE FROM GENERATED DOCUMENTATION + # @param [String] name + # Required. The resource name of a model or a version. + # Authorization: requires the `predict` permission on the specified resource. + # @param [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictRequest] google_cloud_ml_v1beta1__predict_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleApiHttpBody] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleApiHttpBody] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_project(name, google_cloud_ml_v1beta1__predict_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:predict', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1PredictRequest::Representation + command.request_object = google_cloud_ml_v1beta1__predict_request_object + command.response_representation = Google::Apis::MlV1beta1::GoogleApiHttpBody::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleApiHttpBody + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Cancels a running job. + # @param [String] name + # Required. The name of the job to cancel. + # @param [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1CancelJobRequest] google_cloud_ml_v1beta1__cancel_job_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_project_job(name, google_cloud_ml_v1beta1__cancel_job_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:cancel', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1CancelJobRequest::Representation + command.request_object = google_cloud_ml_v1beta1__cancel_job_request_object + command.response_representation = Google::Apis::MlV1beta1::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a training or a batch prediction job. + # @param [String] parent + # Required. The project name. + # @param [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job] google_cloud_ml_v1beta1__job_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_job(parent, google_cloud_ml_v1beta1__job_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/jobs', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job::Representation + command.request_object = google_cloud_ml_v1beta1__job_object + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Describes a job. + # @param [String] name + # Required. The name of the job to get the description of. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_job(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Job + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. + # Returns an empty policy if the resource exists and does not have a policy + # set. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleIamV1Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleIamV1Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_job_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleIamV1Policy::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleIamV1Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the jobs in the project. + # @param [String] parent + # Required. The name of the project for which to list jobs. + # @param [String] filter + # Optional. Specifies the subset of jobs to retrieve. + # @param [Fixnum] page_size + # Optional. The number of jobs to retrieve per "page" of results. If there + # are more remaining results than this number, the response message will + # contain a valid value in the `next_page_token` field. + # The default value is 20, and the maximum page size is 100. + # @param [String] page_token + # Optional. A page token to request the next page of results. + # You get the token from the `next_page_token` field of the response from + # the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListJobsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListJobsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_jobs(parent, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/jobs', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListJobsResponse::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListJobsResponse + command.params['parent'] = parent unless parent.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::MlV1beta1::GoogleIamV1SetIamPolicyRequest] google_iam_v1__set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleIamV1Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleIamV1Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_job_iam_policy(resource, google_iam_v1__set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleIamV1SetIamPolicyRequest::Representation + command.request_object = google_iam_v1__set_iam_policy_request_object + command.response_representation = Google::Apis::MlV1beta1::GoogleIamV1Policy::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleIamV1Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsRequest] google_iam_v1__test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_project_job_iam_permissions(resource, google_iam_v1__test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsRequest::Representation + command.request_object = google_iam_v1__test_iam_permissions_request_object + command.response_representation = Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a model which will later contain one or more versions. + # You must add at least one version before you can request predictions from + # the model. Add versions by calling + # [projects.models.versions.create](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/create). + # @param [String] parent + # Required. The project name. + # @param [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model] google_cloud_ml_v1beta1__model_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_model(parent, google_cloud_ml_v1beta1__model_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/models', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model::Representation + command.request_object = google_cloud_ml_v1beta1__model_object + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a model. + # You can only delete a model if there are no versions in it. You can delete + # versions by calling + # [projects.models.versions.delete](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/delete). + # @param [String] name + # Required. The name of the model. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleLongrunningOperation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleLongrunningOperation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_model(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleLongrunningOperation::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleLongrunningOperation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a model, including its name, the description (if + # set), and the default version (if at least one version of the model has + # been deployed). + # @param [String] name + # Required. The name of the model. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_model(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Model + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. + # Returns an empty policy if the resource exists and does not have a policy + # set. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleIamV1Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleIamV1Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_model_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleIamV1Policy::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleIamV1Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the models in a project. + # Each project can contain multiple models, and each model can have multiple + # versions. + # @param [String] parent + # Required. The name of the project whose models are to be listed. + # @param [Fixnum] page_size + # Optional. The number of models to retrieve per "page" of results. If there + # are more remaining results than this number, the response message will + # contain a valid value in the `next_page_token` field. + # The default value is 20, and the maximum page size is 100. + # @param [String] page_token + # Optional. A page token to request the next page of results. + # You get the token from the `next_page_token` field of the response from + # the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListModelsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListModelsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_models(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/models', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListModelsResponse::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListModelsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::MlV1beta1::GoogleIamV1SetIamPolicyRequest] google_iam_v1__set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleIamV1Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleIamV1Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_model_iam_policy(resource, google_iam_v1__set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleIamV1SetIamPolicyRequest::Representation + command.request_object = google_iam_v1__set_iam_policy_request_object + command.response_representation = Google::Apis::MlV1beta1::GoogleIamV1Policy::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleIamV1Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsRequest] google_iam_v1__test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_project_model_iam_permissions(resource, google_iam_v1__test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsRequest::Representation + command.request_object = google_iam_v1__test_iam_permissions_request_object + command.response_representation = Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleIamV1TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new version of a model from a trained TensorFlow model. + # If the version created in the cloud by this call is the first deployed + # version of the specified model, it will be made the default version of the + # model. When you add a version to a model that already has one or more + # versions, the default version does not automatically change. If you want a + # new version to be the default, you must call + # [projects.models.versions.setDefault](/ml-engine/reference/rest/v1beta1/ + # projects.models.versions/setDefault). + # @param [String] parent + # Required. The name of the model. + # @param [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version] google_cloud_ml_v1beta1__version_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleLongrunningOperation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleLongrunningOperation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_model_version(parent, google_cloud_ml_v1beta1__version_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/versions', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version::Representation + command.request_object = google_cloud_ml_v1beta1__version_object + command.response_representation = Google::Apis::MlV1beta1::GoogleLongrunningOperation::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleLongrunningOperation + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a model version. + # Each model can have multiple versions deployed and in use at any given + # time. Use this method to remove a single version. + # Note: You cannot delete the version that is set as the default version + # of the model unless it is the only remaining version. + # @param [String] name + # Required. The name of the version. You can get the names of all the + # versions of a model by calling + # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/list). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleLongrunningOperation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleLongrunningOperation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_model_version(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleLongrunningOperation::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleLongrunningOperation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a model version. + # Models can have multiple versions. You can call + # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/list) + # to get the same information that this method returns for all of the + # versions of a model. + # @param [String] name + # Required. The name of the version. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_model_version(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets basic information about all the versions of a model. + # If you expect that a model has a lot of versions, or if you need to handle + # only a limited number of results at a time, you can request that the list + # be retrieved in batches (called pages): + # @param [String] parent + # Required. The name of the model for which to list the version. + # @param [Fixnum] page_size + # Optional. The number of versions to retrieve per "page" of results. If + # there are more remaining results than this number, the response message + # will contain a valid value in the `next_page_token` field. + # The default value is 20, and the maximum page size is 100. + # @param [String] page_token + # Optional. A page token to request the next page of results. + # You get the token from the `next_page_token` field of the response from + # the previous call. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListVersionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListVersionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_model_versions(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/versions', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListVersionsResponse::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1ListVersionsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Designates a version to be the default for the model. + # The default version is used for prediction requests made against the model + # that don't specify a version. + # The first version to be created for a model is automatically set as the + # default. You must make any subsequent changes to the default version + # setting manually using this method. + # @param [String] name + # Required. The name of the version to make the default for the model. You + # can get the names of all the versions of a model by calling + # [projects.models.versions.list](/ml-engine/reference/rest/v1beta1/projects. + # models.versions/list). + # @param [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1SetDefaultVersionRequest] google_cloud_ml_v1beta1__set_default_version_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_project_model_version_default(name, google_cloud_ml_v1beta1__set_default_version_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:setDefault', options) + command.request_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1SetDefaultVersionRequest::Representation + command.request_object = google_cloud_ml_v1beta1__set_default_version_request_object + command.response_representation = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleCloudMlV1beta1Version + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Starts asynchronous cancellation on a long-running operation. The server + # makes a best effort to cancel the operation, but success is not + # guaranteed. If the server doesn't support this method, it returns + # `google.rpc.Code.UNIMPLEMENTED`. Clients can use + # Operations.GetOperation or + # other methods to check whether the cancellation succeeded or whether the + # operation completed despite cancellation. On successful cancellation, + # the operation is not deleted; instead, it becomes an operation with + # an Operation.error value with a google.rpc.Status.code of 1, + # corresponding to `Code.CANCELLED`. + # @param [String] name + # The name of the operation resource to be cancelled. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_project_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:cancel', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a long-running operation. This method indicates that the client is + # no longer interested in the operation result. It does not cancel the + # operation. If the server doesn't support this method, it returns + # `google.rpc.Code.UNIMPLEMENTED`. + # @param [String] name + # The name of the operation resource to be deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] name + # The name of the operation resource. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleLongrunningOperation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleLongrunningOperation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleLongrunningOperation::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleLongrunningOperation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the + # server doesn't support this method, it returns `UNIMPLEMENTED`. + # NOTE: the `name` binding allows API services to override the binding + # to use different resource name schemes, such as `users/*/operations`. To + # override the binding, API services can add a binding such as + # `"/v1/`name=users/*`/operations"` to their service configuration. + # For backwards compatibility, the default name includes the operations + # collection id, however overriding users must ensure the name binding + # is the parent resource, without the operations collection id. + # @param [String] name + # The name of the operation's parent resource. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::MlV1beta1::GoogleLongrunningListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::MlV1beta1::GoogleLongrunningListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}/operations', options) + command.response_representation = Google::Apis::MlV1beta1::GoogleLongrunningListOperationsResponse::Representation + command.response_class = Google::Apis::MlV1beta1::GoogleLongrunningListOperationsResponse + command.params['name'] = name unless name.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/oauth2_v1.rb b/generated/google/apis/oauth2_v1.rb new file mode 100644 index 000000000..d6ff46783 --- /dev/null +++ b/generated/google/apis/oauth2_v1.rb @@ -0,0 +1,43 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/oauth2_v1/service.rb' +require 'google/apis/oauth2_v1/classes.rb' +require 'google/apis/oauth2_v1/representations.rb' + +module Google + module Apis + # Google OAuth2 API + # + # Obtains end-user authorization grants for use with other Google APIs. + # + # @see https://developers.google.com/accounts/docs/OAuth2 + module Oauth2V1 + VERSION = 'V1' + REVISION = '20161103' + + # Know the list of people in your circles, your age range, and language + AUTH_PLUS_LOGIN = 'https://www.googleapis.com/auth/plus.login' + + # Know who you are on Google + AUTH_PLUS_ME = 'https://www.googleapis.com/auth/plus.me' + + # View your email address + AUTH_USERINFO_EMAIL = 'https://www.googleapis.com/auth/userinfo.email' + + # View your basic profile info + AUTH_USERINFO_PROFILE = 'https://www.googleapis.com/auth/userinfo.profile' + end + end +end diff --git a/generated/google/apis/oauth2_v1/classes.rb b/generated/google/apis/oauth2_v1/classes.rb new file mode 100644 index 000000000..b58e7fc3a --- /dev/null +++ b/generated/google/apis/oauth2_v1/classes.rb @@ -0,0 +1,321 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module Oauth2V1 + + # + class Jwk + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `keys` + # @return [Array] + attr_accessor :keys + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @keys = args[:keys] if args.key?(:keys) + end + + # + class Key + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `alg` + # @return [String] + attr_accessor :alg + + # + # Corresponds to the JSON property `e` + # @return [String] + attr_accessor :e + + # + # Corresponds to the JSON property `kid` + # @return [String] + attr_accessor :kid + + # + # Corresponds to the JSON property `kty` + # @return [String] + attr_accessor :kty + + # + # Corresponds to the JSON property `n` + # @return [String] + attr_accessor :n + + # + # Corresponds to the JSON property `use` + # @return [String] + attr_accessor :use + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @alg = args[:alg] if args.key?(:alg) + @e = args[:e] if args.key?(:e) + @kid = args[:kid] if args.key?(:kid) + @kty = args[:kty] if args.key?(:kty) + @n = args[:n] if args.key?(:n) + @use = args[:use] if args.key?(:use) + end + end + end + + # + class Raw + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `keyvalues` + # @return [Array] + attr_accessor :keyvalues + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @keyvalues = args[:keyvalues] if args.key?(:keyvalues) + end + + # + class Keyvalue + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `algorithm` + # @return [String] + attr_accessor :algorithm + + # + # Corresponds to the JSON property `exponent` + # @return [String] + attr_accessor :exponent + + # + # Corresponds to the JSON property `keyid` + # @return [String] + attr_accessor :keyid + + # + # Corresponds to the JSON property `modulus` + # @return [String] + attr_accessor :modulus + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @algorithm = args[:algorithm] if args.key?(:algorithm) + @exponent = args[:exponent] if args.key?(:exponent) + @keyid = args[:keyid] if args.key?(:keyid) + @modulus = args[:modulus] if args.key?(:modulus) + end + end + end + + # + class Tokeninfo + include Google::Apis::Core::Hashable + + # The access type granted with this token. It can be offline or online. + # Corresponds to the JSON property `access_type` + # @return [String] + attr_accessor :access_type + + # Who is the intended audience for this token. In general the same as issued_to. + # Corresponds to the JSON property `audience` + # @return [String] + attr_accessor :audience + + # The email address of the user. Present only if the email scope is present in + # the request. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # Boolean flag which is true if the email address is verified. Present only if + # the email scope is present in the request. + # Corresponds to the JSON property `email_verified` + # @return [Boolean] + attr_accessor :email_verified + alias_method :email_verified?, :email_verified + + # The expiry time of the token, as number of seconds left until expiry. + # Corresponds to the JSON property `expires_in` + # @return [Fixnum] + attr_accessor :expires_in + + # The issue time of the token, as number of seconds. + # Corresponds to the JSON property `issued_at` + # @return [Fixnum] + attr_accessor :issued_at + + # To whom was the token issued to. In general the same as audience. + # Corresponds to the JSON property `issued_to` + # @return [String] + attr_accessor :issued_to + + # Who issued the token. + # Corresponds to the JSON property `issuer` + # @return [String] + attr_accessor :issuer + + # Nonce of the id token. + # Corresponds to the JSON property `nonce` + # @return [String] + attr_accessor :nonce + + # The space separated list of scopes granted to this token. + # Corresponds to the JSON property `scope` + # @return [String] + attr_accessor :scope + + # The obfuscated user id. + # Corresponds to the JSON property `user_id` + # @return [String] + attr_accessor :user_id + + # Boolean flag which is true if the email address is verified. Present only if + # the email scope is present in the request. + # Corresponds to the JSON property `verified_email` + # @return [Boolean] + attr_accessor :verified_email + alias_method :verified_email?, :verified_email + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_type = args[:access_type] if args.key?(:access_type) + @audience = args[:audience] if args.key?(:audience) + @email = args[:email] if args.key?(:email) + @email_verified = args[:email_verified] if args.key?(:email_verified) + @expires_in = args[:expires_in] if args.key?(:expires_in) + @issued_at = args[:issued_at] if args.key?(:issued_at) + @issued_to = args[:issued_to] if args.key?(:issued_to) + @issuer = args[:issuer] if args.key?(:issuer) + @nonce = args[:nonce] if args.key?(:nonce) + @scope = args[:scope] if args.key?(:scope) + @user_id = args[:user_id] if args.key?(:user_id) + @verified_email = args[:verified_email] if args.key?(:verified_email) + end + end + + # + class Userinfoplus + include Google::Apis::Core::Hashable + + # The user's email address. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The user's last name. + # Corresponds to the JSON property `family_name` + # @return [String] + attr_accessor :family_name + + # The user's gender. + # Corresponds to the JSON property `gender` + # @return [String] + attr_accessor :gender + + # The user's first name. + # Corresponds to the JSON property `given_name` + # @return [String] + attr_accessor :given_name + + # The hosted domain e.g. example.com if the user is Google apps user. + # Corresponds to the JSON property `hd` + # @return [String] + attr_accessor :hd + + # The obfuscated ID of the user. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # URL of the profile page. + # Corresponds to the JSON property `link` + # @return [String] + attr_accessor :link + + # The user's preferred locale. + # Corresponds to the JSON property `locale` + # @return [String] + attr_accessor :locale + + # The user's full name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # URL of the user's picture image. + # Corresponds to the JSON property `picture` + # @return [String] + attr_accessor :picture + + # Boolean flag which is true if the email address is verified. Always verified + # because we only return the user's primary email address. + # Corresponds to the JSON property `verified_email` + # @return [Boolean] + attr_accessor :verified_email + alias_method :verified_email?, :verified_email + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + @family_name = args[:family_name] if args.key?(:family_name) + @gender = args[:gender] if args.key?(:gender) + @given_name = args[:given_name] if args.key?(:given_name) + @hd = args[:hd] if args.key?(:hd) + @id = args[:id] if args.key?(:id) + @link = args[:link] if args.key?(:link) + @locale = args[:locale] if args.key?(:locale) + @name = args[:name] if args.key?(:name) + @picture = args[:picture] if args.key?(:picture) + @verified_email = args[:verified_email] if args.key?(:verified_email) + end + end + end + end +end diff --git a/generated/google/apis/oauth2_v1/representations.rb b/generated/google/apis/oauth2_v1/representations.rb new file mode 100644 index 000000000..818db18b9 --- /dev/null +++ b/generated/google/apis/oauth2_v1/representations.rb @@ -0,0 +1,135 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module Oauth2V1 + + class Jwk + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Key + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Raw + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Keyvalue + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Tokeninfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Userinfoplus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Jwk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :keys, as: 'keys', class: Google::Apis::Oauth2V1::Jwk::Key, decorator: Google::Apis::Oauth2V1::Jwk::Key::Representation + + end + + class Key + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :alg, as: 'alg' + property :e, as: 'e' + property :kid, as: 'kid' + property :kty, as: 'kty' + property :n, as: 'n' + property :use, as: 'use' + end + end + end + + class Raw + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :keyvalues, as: 'keyvalues', class: Google::Apis::Oauth2V1::Raw::Keyvalue, decorator: Google::Apis::Oauth2V1::Raw::Keyvalue::Representation + + end + + class Keyvalue + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :algorithm, as: 'algorithm' + property :exponent, as: 'exponent' + property :keyid, as: 'keyid' + property :modulus, as: 'modulus' + end + end + end + + class Tokeninfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :access_type, as: 'access_type' + property :audience, as: 'audience' + property :email, as: 'email' + property :email_verified, as: 'email_verified' + property :expires_in, as: 'expires_in' + property :issued_at, as: 'issued_at' + property :issued_to, as: 'issued_to' + property :issuer, as: 'issuer' + property :nonce, as: 'nonce' + property :scope, as: 'scope' + property :user_id, as: 'user_id' + property :verified_email, as: 'verified_email' + end + end + + class Userinfoplus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + property :family_name, as: 'family_name' + property :gender, as: 'gender' + property :given_name, as: 'given_name' + property :hd, as: 'hd' + property :id, as: 'id' + property :link, as: 'link' + property :locale, as: 'locale' + property :name, as: 'name' + property :picture, as: 'picture' + property :verified_email, as: 'verified_email' + end + end + end + end +end diff --git a/generated/google/apis/oauth2_v1/service.rb b/generated/google/apis/oauth2_v1/service.rb new file mode 100644 index 000000000..95bcc8891 --- /dev/null +++ b/generated/google/apis/oauth2_v1/service.rb @@ -0,0 +1,337 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module Oauth2V1 + # Google OAuth2 API + # + # Obtains end-user authorization grants for use with other Google APIs. + # + # @example + # require 'google/apis/oauth2_v1' + # + # Oauth2 = Google::Apis::Oauth2V1 # Alias the module + # service = Oauth2::Oauth2Service.new + # + # @see https://developers.google.com/accounts/docs/OAuth2 + class Oauth2Service < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', '') + @batch_path = 'batch' + end + + # + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Hash] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Hash] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_cert_for_open_id_connect(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'oauth2/v1/certs', options) + command.response_representation = Hash::Representation + command.response_class = Hash + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::Oauth2V1::Raw] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::Oauth2V1::Raw] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_cert_for_open_id_connect_raw(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'oauth2/v1/raw_public_keys', options) + command.response_representation = Google::Apis::Oauth2V1::Raw::Representation + command.response_class = Google::Apis::Oauth2V1::Raw + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # + # @param [String] robot_email + # The email of robot account. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::Oauth2V1::Jwk] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::Oauth2V1::Jwk] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_robot_jwk(robot_email, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'service_accounts/v1/jwk/{robotEmail}', options) + command.response_representation = Google::Apis::Oauth2V1::Jwk::Representation + command.response_class = Google::Apis::Oauth2V1::Jwk + command.params['robotEmail'] = robot_email unless robot_email.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # + # @param [String] robot_email + # The email of robot account. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::Oauth2V1::Raw] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::Oauth2V1::Raw] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_robot_metadata_raw(robot_email, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'service_accounts/v1/metadata/raw/{robotEmail}', options) + command.response_representation = Google::Apis::Oauth2V1::Raw::Representation + command.response_class = Google::Apis::Oauth2V1::Raw + command.params['robotEmail'] = robot_email unless robot_email.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # + # @param [String] robot_email + # The email of robot account. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Hash] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Hash] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_robot_metadata_x509(robot_email, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'service_accounts/v1/metadata/x509/{robotEmail}', options) + command.response_representation = Hash::Representation + command.response_class = Hash + command.params['robotEmail'] = robot_email unless robot_email.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get token info + # @param [String] access_token + # The oauth2 access token + # @param [String] id_token + # The ID token + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::Oauth2V1::Tokeninfo] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::Oauth2V1::Tokeninfo] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def tokeninfo(access_token: nil, id_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'oauth2/v1/tokeninfo', options) + command.response_representation = Google::Apis::Oauth2V1::Tokeninfo::Representation + command.response_class = Google::Apis::Oauth2V1::Tokeninfo + command.query['access_token'] = access_token unless access_token.nil? + command.query['id_token'] = id_token unless id_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get user info + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::Oauth2V1::Userinfoplus] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::Oauth2V1::Userinfoplus] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_userinfo(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'oauth2/v1/userinfo', options) + command.response_representation = Google::Apis::Oauth2V1::Userinfoplus::Representation + command.response_class = Google::Apis::Oauth2V1::Userinfoplus + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get user info + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::Oauth2V1::Userinfoplus] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::Oauth2V1::Userinfoplus] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_userinfo_v2_me(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'userinfo/v2/me', options) + command.response_representation = Google::Apis::Oauth2V1::Userinfoplus::Representation + command.response_class = Google::Apis::Oauth2V1::Userinfoplus + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/pagespeedonline_v1.rb b/generated/google/apis/pagespeedonline_v1.rb new file mode 100644 index 000000000..afc9e606b --- /dev/null +++ b/generated/google/apis/pagespeedonline_v1.rb @@ -0,0 +1,32 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/pagespeedonline_v1/service.rb' +require 'google/apis/pagespeedonline_v1/classes.rb' +require 'google/apis/pagespeedonline_v1/representations.rb' + +module Google + module Apis + # PageSpeed Insights API + # + # Analyzes the performance of a web page and provides tailored suggestions to + # make that page faster. + # + # @see https://developers.google.com/speed/docs/insights/v1/getting_started + module PagespeedonlineV1 + VERSION = 'V1' + REVISION = '20161204' + end + end +end diff --git a/generated/google/apis/pagespeedonline_v1/classes.rb b/generated/google/apis/pagespeedonline_v1/classes.rb new file mode 100644 index 000000000..c38e14217 --- /dev/null +++ b/generated/google/apis/pagespeedonline_v1/classes.rb @@ -0,0 +1,536 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PagespeedonlineV1 + + # + class Result + include Google::Apis::Core::Hashable + + # Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed + # rule instantiated and run by the server. + # Corresponds to the JSON property `formattedResults` + # @return [Google::Apis::PagespeedonlineV1::Result::FormattedResults] + attr_accessor :formatted_results + + # Canonicalized and final URL for the document, after following page redirects ( + # if any). + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # List of rules that were specified in the request, but which the server did not + # know how to instantiate. + # Corresponds to the JSON property `invalidRules` + # @return [Array] + attr_accessor :invalid_rules + + # Kind of result. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Summary statistics for the page, such as number of JavaScript bytes, number of + # HTML bytes, etc. + # Corresponds to the JSON property `pageStats` + # @return [Google::Apis::PagespeedonlineV1::Result::PageStats] + attr_accessor :page_stats + + # Response code for the document. 200 indicates a normal page load. 4xx/5xx + # indicates an error. + # Corresponds to the JSON property `responseCode` + # @return [Fixnum] + attr_accessor :response_code + + # The PageSpeed Score (0-100), which indicates how much faster a page could be. + # A high score indicates little room for improvement, while a lower score + # indicates more room for improvement. + # Corresponds to the JSON property `score` + # @return [Fixnum] + attr_accessor :score + + # Base64-encoded screenshot of the page that was analyzed. + # Corresponds to the JSON property `screenshot` + # @return [Google::Apis::PagespeedonlineV1::Result::Screenshot] + attr_accessor :screenshot + + # Title of the page, as displayed in the browser's title bar. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + # The version of PageSpeed used to generate these results. + # Corresponds to the JSON property `version` + # @return [Google::Apis::PagespeedonlineV1::Result::Version] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @formatted_results = args[:formatted_results] if args.key?(:formatted_results) + @id = args[:id] if args.key?(:id) + @invalid_rules = args[:invalid_rules] if args.key?(:invalid_rules) + @kind = args[:kind] if args.key?(:kind) + @page_stats = args[:page_stats] if args.key?(:page_stats) + @response_code = args[:response_code] if args.key?(:response_code) + @score = args[:score] if args.key?(:score) + @screenshot = args[:screenshot] if args.key?(:screenshot) + @title = args[:title] if args.key?(:title) + @version = args[:version] if args.key?(:version) + end + + # Localized PageSpeed results. Contains a ruleResults entry for each PageSpeed + # rule instantiated and run by the server. + class FormattedResults + include Google::Apis::Core::Hashable + + # The locale of the formattedResults, e.g. "en_US". + # Corresponds to the JSON property `locale` + # @return [String] + attr_accessor :locale + + # Dictionary of formatted rule results, with one entry for each PageSpeed rule + # instantiated and run by the server. + # Corresponds to the JSON property `ruleResults` + # @return [Hash] + attr_accessor :rule_results + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locale = args[:locale] if args.key?(:locale) + @rule_results = args[:rule_results] if args.key?(:rule_results) + end + + # The enum-like identifier for this rule. For instance "EnableKeepAlive" or " + # AvoidCssImport". Not localized. + class RuleResult + include Google::Apis::Core::Hashable + + # Localized name of the rule, intended for presentation to a user. + # Corresponds to the JSON property `localizedRuleName` + # @return [String] + attr_accessor :localized_rule_name + + # The impact (unbounded floating point value) that implementing the suggestions + # for this rule would have on making the page faster. Impact is comparable + # between rules to determine which rule's suggestions would have a higher or + # lower impact on making a page faster. For instance, if enabling compression + # would save 1MB, while optimizing images would save 500kB, the enable + # compression rule would have 2x the impact of the image optimization rule, all + # other things being equal. + # Corresponds to the JSON property `ruleImpact` + # @return [Float] + attr_accessor :rule_impact + + # List of blocks of URLs. Each block may contain a heading and a list of URLs. + # Each URL may optionally include additional details. + # Corresponds to the JSON property `urlBlocks` + # @return [Array] + attr_accessor :url_blocks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @localized_rule_name = args[:localized_rule_name] if args.key?(:localized_rule_name) + @rule_impact = args[:rule_impact] if args.key?(:rule_impact) + @url_blocks = args[:url_blocks] if args.key?(:url_blocks) + end + + # + class UrlBlock + include Google::Apis::Core::Hashable + + # Heading to be displayed with the list of URLs. + # Corresponds to the JSON property `header` + # @return [Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Header] + attr_accessor :header + + # List of entries that provide information about URLs in the url block. Optional. + # Corresponds to the JSON property `urls` + # @return [Array] + attr_accessor :urls + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @header = args[:header] if args.key?(:header) + @urls = args[:urls] if args.key?(:urls) + end + + # Heading to be displayed with the list of URLs. + class Header + include Google::Apis::Core::Hashable + + # List of arguments for the format string. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # A localized format string with $N placeholders, where N is the 1-indexed + # argument number, e.g. 'Minifying the following $1 resources would save a total + # of $2 bytes'. + # Corresponds to the JSON property `format` + # @return [String] + attr_accessor :format + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @args = args[:args] if args.key?(:args) + @format = args[:format] if args.key?(:format) + end + + # + class Arg + include Google::Apis::Core::Hashable + + # Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Argument value, as a localized string. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @type = args[:type] if args.key?(:type) + @value = args[:value] if args.key?(:value) + end + end + end + + # + class Url + include Google::Apis::Core::Hashable + + # List of entries that provide additional details about a single URL. Optional. + # Corresponds to the JSON property `details` + # @return [Array] + attr_accessor :details + + # A format string that gives information about the URL, and a list of arguments + # for that format string. + # Corresponds to the JSON property `result` + # @return [Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Result] + attr_accessor :result + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @result = args[:result] if args.key?(:result) + end + + # + class Detail + include Google::Apis::Core::Hashable + + # List of arguments for the format string. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # A localized format string with $N placeholders, where N is the 1-indexed + # argument number, e.g. 'Unnecessary metadata for this resource adds an + # additional $1 bytes to its download size'. + # Corresponds to the JSON property `format` + # @return [String] + attr_accessor :format + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @args = args[:args] if args.key?(:args) + @format = args[:format] if args.key?(:format) + end + + # + class Arg + include Google::Apis::Core::Hashable + + # Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Argument value, as a localized string. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @type = args[:type] if args.key?(:type) + @value = args[:value] if args.key?(:value) + end + end + end + + # A format string that gives information about the URL, and a list of arguments + # for that format string. + class Result + include Google::Apis::Core::Hashable + + # List of arguments for the format string. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # A localized format string with $N placeholders, where N is the 1-indexed + # argument number, e.g. 'Minifying the resource at URL $1 can save $2 bytes'. + # Corresponds to the JSON property `format` + # @return [String] + attr_accessor :format + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @args = args[:args] if args.key?(:args) + @format = args[:format] if args.key?(:format) + end + + # + class Arg + include Google::Apis::Core::Hashable + + # Type of argument. One of URL, STRING_LITERAL, INT_LITERAL, BYTES, or DURATION. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Argument value, as a localized string. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @type = args[:type] if args.key?(:type) + @value = args[:value] if args.key?(:value) + end + end + end + end + end + end + end + + # Summary statistics for the page, such as number of JavaScript bytes, number of + # HTML bytes, etc. + class PageStats + include Google::Apis::Core::Hashable + + # Number of uncompressed response bytes for CSS resources on the page. + # Corresponds to the JSON property `cssResponseBytes` + # @return [Fixnum] + attr_accessor :css_response_bytes + + # Number of response bytes for flash resources on the page. + # Corresponds to the JSON property `flashResponseBytes` + # @return [Fixnum] + attr_accessor :flash_response_bytes + + # Number of uncompressed response bytes for the main HTML document and all + # iframes on the page. + # Corresponds to the JSON property `htmlResponseBytes` + # @return [Fixnum] + attr_accessor :html_response_bytes + + # Number of response bytes for image resources on the page. + # Corresponds to the JSON property `imageResponseBytes` + # @return [Fixnum] + attr_accessor :image_response_bytes + + # Number of uncompressed response bytes for JS resources on the page. + # Corresponds to the JSON property `javascriptResponseBytes` + # @return [Fixnum] + attr_accessor :javascript_response_bytes + + # Number of CSS resources referenced by the page. + # Corresponds to the JSON property `numberCssResources` + # @return [Fixnum] + attr_accessor :number_css_resources + + # Number of unique hosts referenced by the page. + # Corresponds to the JSON property `numberHosts` + # @return [Fixnum] + attr_accessor :number_hosts + + # Number of JavaScript resources referenced by the page. + # Corresponds to the JSON property `numberJsResources` + # @return [Fixnum] + attr_accessor :number_js_resources + + # Number of HTTP resources loaded by the page. + # Corresponds to the JSON property `numberResources` + # @return [Fixnum] + attr_accessor :number_resources + + # Number of static (i.e. cacheable) resources on the page. + # Corresponds to the JSON property `numberStaticResources` + # @return [Fixnum] + attr_accessor :number_static_resources + + # Number of response bytes for other resources on the page. + # Corresponds to the JSON property `otherResponseBytes` + # @return [Fixnum] + attr_accessor :other_response_bytes + + # Number of uncompressed response bytes for text resources not covered by other + # statistics (i.e non-HTML, non-script, non-CSS resources) on the page. + # Corresponds to the JSON property `textResponseBytes` + # @return [Fixnum] + attr_accessor :text_response_bytes + + # Total size of all request bytes sent by the page. + # Corresponds to the JSON property `totalRequestBytes` + # @return [Fixnum] + attr_accessor :total_request_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @css_response_bytes = args[:css_response_bytes] if args.key?(:css_response_bytes) + @flash_response_bytes = args[:flash_response_bytes] if args.key?(:flash_response_bytes) + @html_response_bytes = args[:html_response_bytes] if args.key?(:html_response_bytes) + @image_response_bytes = args[:image_response_bytes] if args.key?(:image_response_bytes) + @javascript_response_bytes = args[:javascript_response_bytes] if args.key?(:javascript_response_bytes) + @number_css_resources = args[:number_css_resources] if args.key?(:number_css_resources) + @number_hosts = args[:number_hosts] if args.key?(:number_hosts) + @number_js_resources = args[:number_js_resources] if args.key?(:number_js_resources) + @number_resources = args[:number_resources] if args.key?(:number_resources) + @number_static_resources = args[:number_static_resources] if args.key?(:number_static_resources) + @other_response_bytes = args[:other_response_bytes] if args.key?(:other_response_bytes) + @text_response_bytes = args[:text_response_bytes] if args.key?(:text_response_bytes) + @total_request_bytes = args[:total_request_bytes] if args.key?(:total_request_bytes) + end + end + + # Base64-encoded screenshot of the page that was analyzed. + class Screenshot + include Google::Apis::Core::Hashable + + # Image data base64 encoded. + # Corresponds to the JSON property `data` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :data + + # Height of screenshot in pixels. + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # Mime type of image data. E.g. "image/jpeg". + # Corresponds to the JSON property `mime_type` + # @return [String] + attr_accessor :mime_type + + # Width of screenshot in pixels. + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data = args[:data] if args.key?(:data) + @height = args[:height] if args.key?(:height) + @mime_type = args[:mime_type] if args.key?(:mime_type) + @width = args[:width] if args.key?(:width) + end + end + + # The version of PageSpeed used to generate these results. + class Version + include Google::Apis::Core::Hashable + + # The major version number of PageSpeed used to generate these results. + # Corresponds to the JSON property `major` + # @return [Fixnum] + attr_accessor :major + + # The minor version number of PageSpeed used to generate these results. + # Corresponds to the JSON property `minor` + # @return [Fixnum] + attr_accessor :minor + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @major = args[:major] if args.key?(:major) + @minor = args[:minor] if args.key?(:minor) + end + end + end + end + end +end diff --git a/generated/google/apis/pagespeedonline_v1/representations.rb b/generated/google/apis/pagespeedonline_v1/representations.rb new file mode 100644 index 000000000..f41c9f4f5 --- /dev/null +++ b/generated/google/apis/pagespeedonline_v1/representations.rb @@ -0,0 +1,257 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PagespeedonlineV1 + + class Result + class Representation < Google::Apis::Core::JsonRepresentation; end + + class FormattedResults + class Representation < Google::Apis::Core::JsonRepresentation; end + + class RuleResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + class UrlBlock + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Header + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Arg + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Url + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Detail + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Arg + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Result + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Arg + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class PageStats + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Screenshot + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Version + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Result + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :formatted_results, as: 'formattedResults', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::Representation + + property :id, as: 'id' + collection :invalid_rules, as: 'invalidRules' + property :kind, as: 'kind' + property :page_stats, as: 'pageStats', class: Google::Apis::PagespeedonlineV1::Result::PageStats, decorator: Google::Apis::PagespeedonlineV1::Result::PageStats::Representation + + property :response_code, as: 'responseCode' + property :score, as: 'score' + property :screenshot, as: 'screenshot', class: Google::Apis::PagespeedonlineV1::Result::Screenshot, decorator: Google::Apis::PagespeedonlineV1::Result::Screenshot::Representation + + property :title, as: 'title' + property :version, as: 'version', class: Google::Apis::PagespeedonlineV1::Result::Version, decorator: Google::Apis::PagespeedonlineV1::Result::Version::Representation + + end + + class FormattedResults + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :locale, as: 'locale' + hash :rule_results, as: 'ruleResults', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::Representation + + end + + class RuleResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :localized_rule_name, as: 'localizedRuleName' + property :rule_impact, as: 'ruleImpact' + collection :url_blocks, as: 'urlBlocks', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Representation + + end + + class UrlBlock + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Header, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Header::Representation + + collection :urls, as: 'urls', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Representation + + end + + class Header + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :args, as: 'args', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Header::Arg, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Header::Arg::Representation + + property :format, as: 'format' + end + + class Arg + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :type, as: 'type' + property :value, as: 'value' + end + end + end + + class Url + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :details, as: 'details', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Detail, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Detail::Representation + + property :result, as: 'result', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Result, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Result::Representation + + end + + class Detail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :args, as: 'args', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Detail::Arg, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Detail::Arg::Representation + + property :format, as: 'format' + end + + class Arg + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :type, as: 'type' + property :value, as: 'value' + end + end + end + + class Result + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :args, as: 'args', class: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Result::Arg, decorator: Google::Apis::PagespeedonlineV1::Result::FormattedResults::RuleResult::UrlBlock::Url::Result::Arg::Representation + + property :format, as: 'format' + end + + class Arg + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :type, as: 'type' + property :value, as: 'value' + end + end + end + end + end + end + end + + class PageStats + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :css_response_bytes, :numeric_string => true, as: 'cssResponseBytes' + property :flash_response_bytes, :numeric_string => true, as: 'flashResponseBytes' + property :html_response_bytes, :numeric_string => true, as: 'htmlResponseBytes' + property :image_response_bytes, :numeric_string => true, as: 'imageResponseBytes' + property :javascript_response_bytes, :numeric_string => true, as: 'javascriptResponseBytes' + property :number_css_resources, as: 'numberCssResources' + property :number_hosts, as: 'numberHosts' + property :number_js_resources, as: 'numberJsResources' + property :number_resources, as: 'numberResources' + property :number_static_resources, as: 'numberStaticResources' + property :other_response_bytes, :numeric_string => true, as: 'otherResponseBytes' + property :text_response_bytes, :numeric_string => true, as: 'textResponseBytes' + property :total_request_bytes, :numeric_string => true, as: 'totalRequestBytes' + end + end + + class Screenshot + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data, :base64 => true, as: 'data' + property :height, as: 'height' + property :mime_type, as: 'mime_type' + property :width, as: 'width' + end + end + + class Version + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :major, as: 'major' + property :minor, as: 'minor' + end + end + end + end + end +end diff --git a/generated/google/apis/pagespeedonline_v1/service.rb b/generated/google/apis/pagespeedonline_v1/service.rb new file mode 100644 index 000000000..f23c97603 --- /dev/null +++ b/generated/google/apis/pagespeedonline_v1/service.rb @@ -0,0 +1,120 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PagespeedonlineV1 + # PageSpeed Insights API + # + # Analyzes the performance of a web page and provides tailored suggestions to + # make that page faster. + # + # @example + # require 'google/apis/pagespeedonline_v1' + # + # Pagespeedonline = Google::Apis::PagespeedonlineV1 # Alias the module + # service = Pagespeedonline::PagespeedonlineService.new + # + # @see https://developers.google.com/speed/docs/insights/v1/getting_started + class PagespeedonlineService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'pagespeedonline/v1/') + @batch_path = 'batch' + end + + # Runs PageSpeed analysis on the page at the specified URL, and returns a + # PageSpeed score, a list of suggestions to make that page faster, and other + # information. + # @param [String] url + # The URL to fetch and analyze + # @param [Boolean] filter_third_party_resources + # Indicates if third party resources should be filtered out before PageSpeed + # analysis. + # @param [String] locale + # The locale used to localize formatted results + # @param [Array, String] rule + # A PageSpeed rule to run; if none are given, all rules are run + # @param [Boolean] screenshot + # Indicates if binary data containing a screenshot should be included + # @param [String] strategy + # The analysis strategy to use + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PagespeedonlineV1::Result] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PagespeedonlineV1::Result] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def runpagespeed_pagespeedapi(url, filter_third_party_resources: nil, locale: nil, rule: nil, screenshot: nil, strategy: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'runPagespeed', options) + command.response_representation = Google::Apis::PagespeedonlineV1::Result::Representation + command.response_class = Google::Apis::PagespeedonlineV1::Result + command.query['filter_third_party_resources'] = filter_third_party_resources unless filter_third_party_resources.nil? + command.query['locale'] = locale unless locale.nil? + command.query['rule'] = rule unless rule.nil? + command.query['screenshot'] = screenshot unless screenshot.nil? + command.query['strategy'] = strategy unless strategy.nil? + command.query['url'] = url unless url.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_2.rb b/generated/google/apis/prediction_v1_2.rb new file mode 100644 index 000000000..fa9a784b4 --- /dev/null +++ b/generated/google/apis/prediction_v1_2.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/prediction_v1_2/service.rb' +require 'google/apis/prediction_v1_2/classes.rb' +require 'google/apis/prediction_v1_2/representations.rb' + +module Google + module Apis + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @see https://developers.google.com/prediction/docs/developer-guide + module PredictionV1_2 + VERSION = 'V1_2' + REVISION = '20160511' + + # Manage your data and permissions in Google Cloud Storage + AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control' + + # View your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only' + + # Manage your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write' + + # Manage your data in the Google Prediction API + AUTH_PREDICTION = 'https://www.googleapis.com/auth/prediction' + end + end +end diff --git a/generated/google/apis/prediction_v1_2/classes.rb b/generated/google/apis/prediction_v1_2/classes.rb new file mode 100644 index 000000000..4c9884731 --- /dev/null +++ b/generated/google/apis/prediction_v1_2/classes.rb @@ -0,0 +1,237 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_2 + + # + class Input + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `input` + # @return [Google::Apis::PredictionV1_2::Input::Input] + attr_accessor :input + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + end + + # + class Input + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + end + end + end + + # + class Output + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # + # Corresponds to the JSON property `outputLabel` + # @return [String] + attr_accessor :output_label + + # + # Corresponds to the JSON property `outputMulti` + # @return [Array] + attr_accessor :output_multi + + # + # Corresponds to the JSON property `outputValue` + # @return [Float] + attr_accessor :output_value + + # + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @output_label = args[:output_label] if args.key?(:output_label) + @output_multi = args[:output_multi] if args.key?(:output_multi) + @output_value = args[:output_value] if args.key?(:output_value) + @self_link = args[:self_link] if args.key?(:self_link) + end + + # + class OutputMulti + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + # + # Corresponds to the JSON property `score` + # @return [Float] + attr_accessor :score + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label = args[:label] if args.key?(:label) + @score = args[:score] if args.key?(:score) + end + end + end + + # + class Training + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # + # Corresponds to the JSON property `modelInfo` + # @return [Google::Apis::PredictionV1_2::Training::ModelInfo] + attr_accessor :model_info + + # + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # + # Corresponds to the JSON property `trainingStatus` + # @return [String] + attr_accessor :training_status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @model_info = args[:model_info] if args.key?(:model_info) + @self_link = args[:self_link] if args.key?(:self_link) + @training_status = args[:training_status] if args.key?(:training_status) + end + + # + class ModelInfo + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `classificationAccuracy` + # @return [Float] + attr_accessor :classification_accuracy + + # + # Corresponds to the JSON property `meanSquaredError` + # @return [Float] + attr_accessor :mean_squared_error + + # + # Corresponds to the JSON property `modelType` + # @return [String] + attr_accessor :model_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @classification_accuracy = args[:classification_accuracy] if args.key?(:classification_accuracy) + @mean_squared_error = args[:mean_squared_error] if args.key?(:mean_squared_error) + @model_type = args[:model_type] if args.key?(:model_type) + end + end + end + + # + class Update + include Google::Apis::Core::Hashable + + # The true class label of this instance + # Corresponds to the JSON property `classLabel` + # @return [String] + attr_accessor :class_label + + # The input features for this instance + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @class_label = args[:class_label] if args.key?(:class_label) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_2/representations.rb b/generated/google/apis/prediction_v1_2/representations.rb new file mode 100644 index 000000000..8a99307bf --- /dev/null +++ b/generated/google/apis/prediction_v1_2/representations.rb @@ -0,0 +1,133 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_2 + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Output + class Representation < Google::Apis::Core::JsonRepresentation; end + + class OutputMulti + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Training + class Representation < Google::Apis::Core::JsonRepresentation; end + + class ModelInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Update + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input', class: Google::Apis::PredictionV1_2::Input::Input, decorator: Google::Apis::PredictionV1_2::Input::Input::Representation + + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :csv_instance, as: 'csvInstance' + end + end + end + + class Output + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :output_label, as: 'outputLabel' + collection :output_multi, as: 'outputMulti', class: Google::Apis::PredictionV1_2::Output::OutputMulti, decorator: Google::Apis::PredictionV1_2::Output::OutputMulti::Representation + + property :output_value, as: 'outputValue' + property :self_link, as: 'selfLink' + end + + class OutputMulti + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label, as: 'label' + property :score, as: 'score' + end + end + end + + class Training + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :model_info, as: 'modelInfo', class: Google::Apis::PredictionV1_2::Training::ModelInfo, decorator: Google::Apis::PredictionV1_2::Training::ModelInfo::Representation + + property :self_link, as: 'selfLink' + property :training_status, as: 'trainingStatus' + end + + class ModelInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :classification_accuracy, as: 'classificationAccuracy' + property :mean_squared_error, as: 'meanSquaredError' + property :model_type, as: 'modelType' + end + end + end + + class Update + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :class_label, as: 'classLabel' + collection :csv_instance, as: 'csvInstance' + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_2/service.rb b/generated/google/apis/prediction_v1_2/service.rb new file mode 100644 index 000000000..2b21da72c --- /dev/null +++ b/generated/google/apis/prediction_v1_2/service.rb @@ -0,0 +1,287 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_2 + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @example + # require 'google/apis/prediction_v1_2' + # + # Prediction = Google::Apis::PredictionV1_2 # Alias the module + # service = Prediction::PredictionService.new + # + # @see https://developers.google.com/prediction/docs/developer-guide + class PredictionService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'prediction/v1.2/') + @batch_path = 'batch' + end + + # Submit data and request a prediction + # @param [String] data + # mybucket%2Fmydata resource in Google Storage + # @param [Google::Apis::PredictionV1_2::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_2::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_2::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict(data, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'training/{data}/predict', options) + command.request_representation = Google::Apis::PredictionV1_2::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_2::Output::Representation + command.response_class = Google::Apis::PredictionV1_2::Output + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Submit input and request an output against a hosted model + # @param [String] hosted_model_name + # The name of a hosted model + # @param [Google::Apis::PredictionV1_2::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_2::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_2::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_hostedmodel(hosted_model_name, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'hostedmodels/{hostedModelName}/predict', options) + command.request_representation = Google::Apis::PredictionV1_2::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_2::Output::Representation + command.response_class = Google::Apis::PredictionV1_2::Output + command.params['hostedModelName'] = hosted_model_name unless hosted_model_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete a trained model + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_training(data, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'training/{data}', options) + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Check training status of your model + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_2::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_2::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_training(data, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'training/{data}', options) + command.response_representation = Google::Apis::PredictionV1_2::Training::Representation + command.response_class = Google::Apis::PredictionV1_2::Training + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Begin training your model + # @param [Google::Apis::PredictionV1_2::Training] training_object + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_2::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_2::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_training(training_object = nil, data: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'training', options) + command.request_representation = Google::Apis::PredictionV1_2::Training::Representation + command.request_object = training_object + command.response_representation = Google::Apis::PredictionV1_2::Training::Representation + command.response_class = Google::Apis::PredictionV1_2::Training + command.query['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Add new data to a trained model + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [Google::Apis::PredictionV1_2::Update] update_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_2::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_2::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_training(data, update_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'training/{data}', options) + command.request_representation = Google::Apis::PredictionV1_2::Update::Representation + command.request_object = update_object + command.response_representation = Google::Apis::PredictionV1_2::Training::Representation + command.response_class = Google::Apis::PredictionV1_2::Training + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_3.rb b/generated/google/apis/prediction_v1_3.rb new file mode 100644 index 000000000..8fb4dd0d3 --- /dev/null +++ b/generated/google/apis/prediction_v1_3.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/prediction_v1_3/service.rb' +require 'google/apis/prediction_v1_3/classes.rb' +require 'google/apis/prediction_v1_3/representations.rb' + +module Google + module Apis + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @see https://developers.google.com/prediction/docs/developer-guide + module PredictionV1_3 + VERSION = 'V1_3' + REVISION = '20160511' + + # Manage your data and permissions in Google Cloud Storage + AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control' + + # View your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only' + + # Manage your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write' + + # Manage your data in the Google Prediction API + AUTH_PREDICTION = 'https://www.googleapis.com/auth/prediction' + end + end +end diff --git a/generated/google/apis/prediction_v1_3/classes.rb b/generated/google/apis/prediction_v1_3/classes.rb new file mode 100644 index 000000000..53266a0ef --- /dev/null +++ b/generated/google/apis/prediction_v1_3/classes.rb @@ -0,0 +1,286 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_3 + + # + class Input + include Google::Apis::Core::Hashable + + # Input to the model for a prediction + # Corresponds to the JSON property `input` + # @return [Google::Apis::PredictionV1_3::Input::Input] + attr_accessor :input + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + end + + # Input to the model for a prediction + class Input + include Google::Apis::Core::Hashable + + # A list of input features, these can be strings or doubles. + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + end + end + end + + # + class Output + include Google::Apis::Core::Hashable + + # The unique name for the predictive model. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The most likely class [Categorical models only]. + # Corresponds to the JSON property `outputLabel` + # @return [String] + attr_accessor :output_label + + # A list of classes with their estimated probabilities [Categorical models only]. + # Corresponds to the JSON property `outputMulti` + # @return [Array] + attr_accessor :output_multi + + # The estimated regression value [Regression models only]. + # Corresponds to the JSON property `outputValue` + # @return [Float] + attr_accessor :output_value + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @output_label = args[:output_label] if args.key?(:output_label) + @output_multi = args[:output_multi] if args.key?(:output_multi) + @output_value = args[:output_value] if args.key?(:output_value) + @self_link = args[:self_link] if args.key?(:self_link) + end + + # + class OutputMulti + include Google::Apis::Core::Hashable + + # The class label. + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + # The probability of the class. + # Corresponds to the JSON property `score` + # @return [Float] + attr_accessor :score + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label = args[:label] if args.key?(:label) + @score = args[:score] if args.key?(:score) + end + end + end + + # + class Training + include Google::Apis::Core::Hashable + + # The unique name for the predictive model. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Model metadata. + # Corresponds to the JSON property `modelInfo` + # @return [Google::Apis::PredictionV1_3::Training::ModelInfo] + attr_accessor :model_info + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The current status of the training job. This can be one of following: RUNNING; + # DONE; ERROR; ERROR: TRAINING JOB NOT FOUND + # Corresponds to the JSON property `trainingStatus` + # @return [String] + attr_accessor :training_status + + # A class weighting function, which allows the importance weights for classes to + # be specified [Categorical models only]. + # Corresponds to the JSON property `utility` + # @return [Array>] + attr_accessor :utility + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @model_info = args[:model_info] if args.key?(:model_info) + @self_link = args[:self_link] if args.key?(:self_link) + @training_status = args[:training_status] if args.key?(:training_status) + @utility = args[:utility] if args.key?(:utility) + end + + # Model metadata. + class ModelInfo + include Google::Apis::Core::Hashable + + # Estimated accuracy of model taking utility weights into account [Categorical + # models only]. + # Corresponds to the JSON property `classWeightedAccuracy` + # @return [Float] + attr_accessor :class_weighted_accuracy + + # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, + # based on the amount and quality of the training data, of the estimated + # prediction accuracy. You can use this is a guide to decide whether the results + # are accurate enough for your needs. This estimate will be more reliable if + # your real input data is similar to your training data [Categorical models only] + # . + # Corresponds to the JSON property `classificationAccuracy` + # @return [Float] + attr_accessor :classification_accuracy + + # An output confusion matrix. This shows an estimate for how this model will do + # in predictions. This is first indexed by the true class label. For each true + # class label, this provides a pair `predicted_label, count`, where count is the + # estimated number of times the model will predict the predicted label given the + # true label. Will not output if more then 100 classes [Categorical models only]. + # Corresponds to the JSON property `confusionMatrix` + # @return [Hash>] + attr_accessor :confusion_matrix + + # A list of the confusion matrix row totals + # Corresponds to the JSON property `confusionMatrixRowTotals` + # @return [Hash] + attr_accessor :confusion_matrix_row_totals + + # An estimated mean squared error. The can be used to measure the quality of the + # predicted model [Regression models only]. + # Corresponds to the JSON property `meanSquaredError` + # @return [Float] + attr_accessor :mean_squared_error + + # Type of predictive model (CLASSIFICATION or REGRESSION) + # Corresponds to the JSON property `modelType` + # @return [String] + attr_accessor :model_type + + # Number of classes in the trained model [Categorical models only]. + # Corresponds to the JSON property `numberClasses` + # @return [Fixnum] + attr_accessor :number_classes + + # Number of valid data instances used in the trained model. + # Corresponds to the JSON property `numberInstances` + # @return [Fixnum] + attr_accessor :number_instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @class_weighted_accuracy = args[:class_weighted_accuracy] if args.key?(:class_weighted_accuracy) + @classification_accuracy = args[:classification_accuracy] if args.key?(:classification_accuracy) + @confusion_matrix = args[:confusion_matrix] if args.key?(:confusion_matrix) + @confusion_matrix_row_totals = args[:confusion_matrix_row_totals] if args.key?(:confusion_matrix_row_totals) + @mean_squared_error = args[:mean_squared_error] if args.key?(:mean_squared_error) + @model_type = args[:model_type] if args.key?(:model_type) + @number_classes = args[:number_classes] if args.key?(:number_classes) + @number_instances = args[:number_instances] if args.key?(:number_instances) + end + end + end + + # + class Update + include Google::Apis::Core::Hashable + + # The true class label of this instance + # Corresponds to the JSON property `classLabel` + # @return [String] + attr_accessor :class_label + + # The input features for this instance + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @class_label = args[:class_label] if args.key?(:class_label) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_3/representations.rb b/generated/google/apis/prediction_v1_3/representations.rb new file mode 100644 index 000000000..f68c3fcf1 --- /dev/null +++ b/generated/google/apis/prediction_v1_3/representations.rb @@ -0,0 +1,139 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_3 + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Output + class Representation < Google::Apis::Core::JsonRepresentation; end + + class OutputMulti + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Training + class Representation < Google::Apis::Core::JsonRepresentation; end + + class ModelInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Update + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input', class: Google::Apis::PredictionV1_3::Input::Input, decorator: Google::Apis::PredictionV1_3::Input::Input::Representation + + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :csv_instance, as: 'csvInstance' + end + end + end + + class Output + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :output_label, as: 'outputLabel' + collection :output_multi, as: 'outputMulti', class: Google::Apis::PredictionV1_3::Output::OutputMulti, decorator: Google::Apis::PredictionV1_3::Output::OutputMulti::Representation + + property :output_value, as: 'outputValue' + property :self_link, as: 'selfLink' + end + + class OutputMulti + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label, as: 'label' + property :score, as: 'score' + end + end + end + + class Training + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :model_info, as: 'modelInfo', class: Google::Apis::PredictionV1_3::Training::ModelInfo, decorator: Google::Apis::PredictionV1_3::Training::ModelInfo::Representation + + property :self_link, as: 'selfLink' + property :training_status, as: 'trainingStatus' + collection :utility, as: 'utility' + end + + class ModelInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :class_weighted_accuracy, as: 'classWeightedAccuracy' + property :classification_accuracy, as: 'classificationAccuracy' + hash :confusion_matrix, as: 'confusionMatrix' + hash :confusion_matrix_row_totals, as: 'confusionMatrixRowTotals' + property :mean_squared_error, as: 'meanSquaredError' + property :model_type, as: 'modelType' + property :number_classes, :numeric_string => true, as: 'numberClasses' + property :number_instances, :numeric_string => true, as: 'numberInstances' + end + end + end + + class Update + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :class_label, as: 'classLabel' + collection :csv_instance, as: 'csvInstance' + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_3/service.rb b/generated/google/apis/prediction_v1_3/service.rb new file mode 100644 index 000000000..7d16c4c18 --- /dev/null +++ b/generated/google/apis/prediction_v1_3/service.rb @@ -0,0 +1,284 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_3 + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @example + # require 'google/apis/prediction_v1_3' + # + # Prediction = Google::Apis::PredictionV1_3 # Alias the module + # service = Prediction::PredictionService.new + # + # @see https://developers.google.com/prediction/docs/developer-guide + class PredictionService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'prediction/v1.3/') + @batch_path = 'batch' + end + + # Submit input and request an output against a hosted model + # @param [String] hosted_model_name + # The name of a hosted model + # @param [Google::Apis::PredictionV1_3::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_3::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_3::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_hostedmodel(hosted_model_name, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'hostedmodels/{hostedModelName}/predict', options) + command.request_representation = Google::Apis::PredictionV1_3::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_3::Output::Representation + command.response_class = Google::Apis::PredictionV1_3::Output + command.params['hostedModelName'] = hosted_model_name unless hosted_model_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete a trained model + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_training(data, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'training/{data}', options) + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Check training status of your model + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_3::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_3::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_training(data, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'training/{data}', options) + command.response_representation = Google::Apis::PredictionV1_3::Training::Representation + command.response_class = Google::Apis::PredictionV1_3::Training + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Begin training your model + # @param [Google::Apis::PredictionV1_3::Training] training_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_3::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_3::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_training(training_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'training', options) + command.request_representation = Google::Apis::PredictionV1_3::Training::Representation + command.request_object = training_object + command.response_representation = Google::Apis::PredictionV1_3::Training::Representation + command.response_class = Google::Apis::PredictionV1_3::Training + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Submit data and request a prediction + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [Google::Apis::PredictionV1_3::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_3::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_3::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_training(data, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'training/{data}/predict', options) + command.request_representation = Google::Apis::PredictionV1_3::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_3::Output::Representation + command.response_class = Google::Apis::PredictionV1_3::Output + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Add new data to a trained model + # @param [String] data + # mybucket/mydata resource in Google Storage + # @param [Google::Apis::PredictionV1_3::Update] update_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_3::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_3::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_training(data, update_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'training/{data}', options) + command.request_representation = Google::Apis::PredictionV1_3::Update::Representation + command.request_object = update_object + command.response_representation = Google::Apis::PredictionV1_3::Training::Representation + command.response_class = Google::Apis::PredictionV1_3::Training + command.params['data'] = data unless data.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_4.rb b/generated/google/apis/prediction_v1_4.rb new file mode 100644 index 000000000..dc290dd3d --- /dev/null +++ b/generated/google/apis/prediction_v1_4.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/prediction_v1_4/service.rb' +require 'google/apis/prediction_v1_4/classes.rb' +require 'google/apis/prediction_v1_4/representations.rb' + +module Google + module Apis + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @see https://developers.google.com/prediction/docs/developer-guide + module PredictionV1_4 + VERSION = 'V1_4' + REVISION = '20160511' + + # Manage your data and permissions in Google Cloud Storage + AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control' + + # View your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only' + + # Manage your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write' + + # Manage your data in the Google Prediction API + AUTH_PREDICTION = 'https://www.googleapis.com/auth/prediction' + end + end +end diff --git a/generated/google/apis/prediction_v1_4/classes.rb b/generated/google/apis/prediction_v1_4/classes.rb new file mode 100644 index 000000000..4b3f2ebb7 --- /dev/null +++ b/generated/google/apis/prediction_v1_4/classes.rb @@ -0,0 +1,336 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_4 + + # + class Input + include Google::Apis::Core::Hashable + + # Input to the model for a prediction + # Corresponds to the JSON property `input` + # @return [Google::Apis::PredictionV1_4::Input::Input] + attr_accessor :input + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + end + + # Input to the model for a prediction + class Input + include Google::Apis::Core::Hashable + + # A list of input features, these can be strings or doubles. + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + end + end + end + + # + class Output + include Google::Apis::Core::Hashable + + # The unique name for the predictive model. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The most likely class label [Categorical models only]. + # Corresponds to the JSON property `outputLabel` + # @return [String] + attr_accessor :output_label + + # A list of class labels with their estimated probabilities [Categorical models + # only]. + # Corresponds to the JSON property `outputMulti` + # @return [Array] + attr_accessor :output_multi + + # The estimated regression value [Regression models only]. + # Corresponds to the JSON property `outputValue` + # @return [Float] + attr_accessor :output_value + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @output_label = args[:output_label] if args.key?(:output_label) + @output_multi = args[:output_multi] if args.key?(:output_multi) + @output_value = args[:output_value] if args.key?(:output_value) + @self_link = args[:self_link] if args.key?(:self_link) + end + + # + class OutputMulti + include Google::Apis::Core::Hashable + + # The class label. + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + # The probability of the class label. + # Corresponds to the JSON property `score` + # @return [Float] + attr_accessor :score + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label = args[:label] if args.key?(:label) + @score = args[:score] if args.key?(:score) + end + end + end + + # + class Training + include Google::Apis::Core::Hashable + + # Data Analysis. + # Corresponds to the JSON property `dataAnalysis` + # @return [Google::Apis::PredictionV1_4::Training::DataAnalysis] + attr_accessor :data_analysis + + # The unique name for the predictive model. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Model metadata. + # Corresponds to the JSON property `modelInfo` + # @return [Google::Apis::PredictionV1_4::Training::ModelInfo] + attr_accessor :model_info + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Google storage location of the training data file. + # Corresponds to the JSON property `storageDataLocation` + # @return [String] + attr_accessor :storage_data_location + + # Google storage location of the preprocessing pmml file. + # Corresponds to the JSON property `storagePMMLLocation` + # @return [String] + attr_accessor :storage_pmml_location + + # Google storage location of the pmml model file. + # Corresponds to the JSON property `storagePMMLModelLocation` + # @return [String] + attr_accessor :storage_pmml_model_location + + # The current status of the training job. This can be one of following: RUNNING; + # DONE; ERROR; ERROR: TRAINING JOB NOT FOUND + # Corresponds to the JSON property `trainingStatus` + # @return [String] + attr_accessor :training_status + + # A class weighting function, which allows the importance weights for class + # labels to be specified [Categorical models only]. + # Corresponds to the JSON property `utility` + # @return [Array>] + attr_accessor :utility + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data_analysis = args[:data_analysis] if args.key?(:data_analysis) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @model_info = args[:model_info] if args.key?(:model_info) + @self_link = args[:self_link] if args.key?(:self_link) + @storage_data_location = args[:storage_data_location] if args.key?(:storage_data_location) + @storage_pmml_location = args[:storage_pmml_location] if args.key?(:storage_pmml_location) + @storage_pmml_model_location = args[:storage_pmml_model_location] if args.key?(:storage_pmml_model_location) + @training_status = args[:training_status] if args.key?(:training_status) + @utility = args[:utility] if args.key?(:utility) + end + + # Data Analysis. + class DataAnalysis + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `warnings` + # @return [Array] + attr_accessor :warnings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @warnings = args[:warnings] if args.key?(:warnings) + end + end + + # Model metadata. + class ModelInfo + include Google::Apis::Core::Hashable + + # Estimated accuracy of model taking utility weights into account [Categorical + # models only]. + # Corresponds to the JSON property `classWeightedAccuracy` + # @return [Float] + attr_accessor :class_weighted_accuracy + + # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, + # based on the amount and quality of the training data, of the estimated + # prediction accuracy. You can use this is a guide to decide whether the results + # are accurate enough for your needs. This estimate will be more reliable if + # your real input data is similar to your training data [Categorical models only] + # . + # Corresponds to the JSON property `classificationAccuracy` + # @return [Float] + attr_accessor :classification_accuracy + + # An output confusion matrix. This shows an estimate for how this model will do + # in predictions. This is first indexed by the true class label. For each true + # class label, this provides a pair `predicted_label, count`, where count is the + # estimated number of times the model will predict the predicted label given the + # true label. Will not output if more then 100 classes [Categorical models only]. + # Corresponds to the JSON property `confusionMatrix` + # @return [Hash>] + attr_accessor :confusion_matrix + + # A list of the confusion matrix row totals + # Corresponds to the JSON property `confusionMatrixRowTotals` + # @return [Hash] + attr_accessor :confusion_matrix_row_totals + + # An estimated mean squared error. The can be used to measure the quality of the + # predicted model [Regression models only]. + # Corresponds to the JSON property `meanSquaredError` + # @return [Float] + attr_accessor :mean_squared_error + + # Type of predictive model (CLASSIFICATION or REGRESSION) + # Corresponds to the JSON property `modelType` + # @return [String] + attr_accessor :model_type + + # Number of valid data instances used in the trained model. + # Corresponds to the JSON property `numberInstances` + # @return [Fixnum] + attr_accessor :number_instances + + # Number of class labels in the trained model [Categorical models only]. + # Corresponds to the JSON property `numberLabels` + # @return [Fixnum] + attr_accessor :number_labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @class_weighted_accuracy = args[:class_weighted_accuracy] if args.key?(:class_weighted_accuracy) + @classification_accuracy = args[:classification_accuracy] if args.key?(:classification_accuracy) + @confusion_matrix = args[:confusion_matrix] if args.key?(:confusion_matrix) + @confusion_matrix_row_totals = args[:confusion_matrix_row_totals] if args.key?(:confusion_matrix_row_totals) + @mean_squared_error = args[:mean_squared_error] if args.key?(:mean_squared_error) + @model_type = args[:model_type] if args.key?(:model_type) + @number_instances = args[:number_instances] if args.key?(:number_instances) + @number_labels = args[:number_labels] if args.key?(:number_labels) + end + end + end + + # + class Update + include Google::Apis::Core::Hashable + + # The input features for this instance + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + # The class label of this instance + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + # The generic output value - could be regression value or class label + # Corresponds to the JSON property `output` + # @return [String] + attr_accessor :output + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + @label = args[:label] if args.key?(:label) + @output = args[:output] if args.key?(:output) + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_4/representations.rb b/generated/google/apis/prediction_v1_4/representations.rb new file mode 100644 index 000000000..927009c06 --- /dev/null +++ b/generated/google/apis/prediction_v1_4/representations.rb @@ -0,0 +1,158 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_4 + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Output + class Representation < Google::Apis::Core::JsonRepresentation; end + + class OutputMulti + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Training + class Representation < Google::Apis::Core::JsonRepresentation; end + + class DataAnalysis + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ModelInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Update + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input', class: Google::Apis::PredictionV1_4::Input::Input, decorator: Google::Apis::PredictionV1_4::Input::Input::Representation + + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :csv_instance, as: 'csvInstance' + end + end + end + + class Output + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :output_label, as: 'outputLabel' + collection :output_multi, as: 'outputMulti', class: Google::Apis::PredictionV1_4::Output::OutputMulti, decorator: Google::Apis::PredictionV1_4::Output::OutputMulti::Representation + + property :output_value, as: 'outputValue' + property :self_link, as: 'selfLink' + end + + class OutputMulti + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label, as: 'label' + property :score, as: 'score' + end + end + end + + class Training + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data_analysis, as: 'dataAnalysis', class: Google::Apis::PredictionV1_4::Training::DataAnalysis, decorator: Google::Apis::PredictionV1_4::Training::DataAnalysis::Representation + + property :id, as: 'id' + property :kind, as: 'kind' + property :model_info, as: 'modelInfo', class: Google::Apis::PredictionV1_4::Training::ModelInfo, decorator: Google::Apis::PredictionV1_4::Training::ModelInfo::Representation + + property :self_link, as: 'selfLink' + property :storage_data_location, as: 'storageDataLocation' + property :storage_pmml_location, as: 'storagePMMLLocation' + property :storage_pmml_model_location, as: 'storagePMMLModelLocation' + property :training_status, as: 'trainingStatus' + collection :utility, as: 'utility' + end + + class DataAnalysis + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :warnings, as: 'warnings' + end + end + + class ModelInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :class_weighted_accuracy, as: 'classWeightedAccuracy' + property :classification_accuracy, as: 'classificationAccuracy' + hash :confusion_matrix, as: 'confusionMatrix' + hash :confusion_matrix_row_totals, as: 'confusionMatrixRowTotals' + property :mean_squared_error, as: 'meanSquaredError' + property :model_type, as: 'modelType' + property :number_instances, :numeric_string => true, as: 'numberInstances' + property :number_labels, :numeric_string => true, as: 'numberLabels' + end + end + end + + class Update + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :csv_instance, as: 'csvInstance' + property :label, as: 'label' + property :output, as: 'output' + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_4/service.rb b/generated/google/apis/prediction_v1_4/service.rb new file mode 100644 index 000000000..e9335e069 --- /dev/null +++ b/generated/google/apis/prediction_v1_4/service.rb @@ -0,0 +1,284 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_4 + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @example + # require 'google/apis/prediction_v1_4' + # + # Prediction = Google::Apis::PredictionV1_4 # Alias the module + # service = Prediction::PredictionService.new + # + # @see https://developers.google.com/prediction/docs/developer-guide + class PredictionService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'prediction/v1.4/') + @batch_path = 'batch' + end + + # Submit input and request an output against a hosted model. + # @param [String] hosted_model_name + # The name of a hosted model. + # @param [Google::Apis::PredictionV1_4::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_4::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_4::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_hostedmodel(hosted_model_name, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'hostedmodels/{hostedModelName}/predict', options) + command.request_representation = Google::Apis::PredictionV1_4::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_4::Output::Representation + command.response_class = Google::Apis::PredictionV1_4::Output + command.params['hostedModelName'] = hosted_model_name unless hosted_model_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete a trained model. + # @param [String] id + # The unique name for the predictive model. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_trainedmodel(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'trainedmodels/{id}', options) + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Check training status of your model. + # @param [String] id + # The unique name for the predictive model. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_4::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_4::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_trainedmodel(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'trainedmodels/{id}', options) + command.response_representation = Google::Apis::PredictionV1_4::Training::Representation + command.response_class = Google::Apis::PredictionV1_4::Training + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Begin training your model. + # @param [Google::Apis::PredictionV1_4::Training] training_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_4::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_4::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_trainedmodel(training_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'trainedmodels', options) + command.request_representation = Google::Apis::PredictionV1_4::Training::Representation + command.request_object = training_object + command.response_representation = Google::Apis::PredictionV1_4::Training::Representation + command.response_class = Google::Apis::PredictionV1_4::Training + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Submit model id and request a prediction + # @param [String] id + # The unique name for the predictive model. + # @param [Google::Apis::PredictionV1_4::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_4::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_4::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_trainedmodel(id, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'trainedmodels/{id}/predict', options) + command.request_representation = Google::Apis::PredictionV1_4::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_4::Output::Representation + command.response_class = Google::Apis::PredictionV1_4::Output + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Add new data to a trained model. + # @param [String] id + # The unique name for the predictive model. + # @param [Google::Apis::PredictionV1_4::Update] update_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_4::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_4::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_trainedmodel(id, update_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'trainedmodels/{id}', options) + command.request_representation = Google::Apis::PredictionV1_4::Update::Representation + command.request_object = update_object + command.response_representation = Google::Apis::PredictionV1_4::Training::Representation + command.response_class = Google::Apis::PredictionV1_4::Training + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_5.rb b/generated/google/apis/prediction_v1_5.rb new file mode 100644 index 000000000..559823f17 --- /dev/null +++ b/generated/google/apis/prediction_v1_5.rb @@ -0,0 +1,44 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/prediction_v1_5/service.rb' +require 'google/apis/prediction_v1_5/classes.rb' +require 'google/apis/prediction_v1_5/representations.rb' + +module Google + module Apis + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @see https://developers.google.com/prediction/docs/developer-guide + module PredictionV1_5 + VERSION = 'V1_5' + REVISION = '20160511' + + # Manage your data and permissions in Google Cloud Storage + AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control' + + # View your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only' + + # Manage your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write' + + # Manage your data in the Google Prediction API + AUTH_PREDICTION = 'https://www.googleapis.com/auth/prediction' + end + end +end diff --git a/generated/google/apis/prediction_v1_5/classes.rb b/generated/google/apis/prediction_v1_5/classes.rb new file mode 100644 index 000000000..a15a4e432 --- /dev/null +++ b/generated/google/apis/prediction_v1_5/classes.rb @@ -0,0 +1,708 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_5 + + # + class Analyze + include Google::Apis::Core::Hashable + + # Description of the data the model was trained on. + # Corresponds to the JSON property `dataDescription` + # @return [Google::Apis::PredictionV1_5::Analyze::DataDescription] + attr_accessor :data_description + + # List of errors with the data. + # Corresponds to the JSON property `errors` + # @return [Array>] + attr_accessor :errors + + # The unique name for the predictive model. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Description of the model. + # Corresponds to the JSON property `modelDescription` + # @return [Google::Apis::PredictionV1_5::Analyze::ModelDescription] + attr_accessor :model_description + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data_description = args[:data_description] if args.key?(:data_description) + @errors = args[:errors] if args.key?(:errors) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @model_description = args[:model_description] if args.key?(:model_description) + @self_link = args[:self_link] if args.key?(:self_link) + end + + # Description of the data the model was trained on. + class DataDescription + include Google::Apis::Core::Hashable + + # Description of the input features in the data set. + # Corresponds to the JSON property `features` + # @return [Array] + attr_accessor :features + + # Description of the output value or label. + # Corresponds to the JSON property `outputFeature` + # @return [Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature] + attr_accessor :output_feature + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @features = args[:features] if args.key?(:features) + @output_feature = args[:output_feature] if args.key?(:output_feature) + end + + # + class Feature + include Google::Apis::Core::Hashable + + # Description of the categorical values of this feature. + # Corresponds to the JSON property `categorical` + # @return [Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Categorical] + attr_accessor :categorical + + # The feature index. + # Corresponds to the JSON property `index` + # @return [Fixnum] + attr_accessor :index + + # Description of the numeric values of this feature. + # Corresponds to the JSON property `numeric` + # @return [Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Numeric] + attr_accessor :numeric + + # Description of multiple-word text values of this feature. + # Corresponds to the JSON property `text` + # @return [Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Text] + attr_accessor :text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @categorical = args[:categorical] if args.key?(:categorical) + @index = args[:index] if args.key?(:index) + @numeric = args[:numeric] if args.key?(:numeric) + @text = args[:text] if args.key?(:text) + end + + # Description of the categorical values of this feature. + class Categorical + include Google::Apis::Core::Hashable + + # Number of categorical values for this feature in the data. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # List of all the categories for this feature in the data set. + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @values = args[:values] if args.key?(:values) + end + + # + class Value + include Google::Apis::Core::Hashable + + # Number of times this feature had this value. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # The category name. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @value = args[:value] if args.key?(:value) + end + end + end + + # Description of the numeric values of this feature. + class Numeric + include Google::Apis::Core::Hashable + + # Number of numeric values for this feature in the data set. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # Mean of the numeric values of this feature in the data set. + # Corresponds to the JSON property `mean` + # @return [Float] + attr_accessor :mean + + # Variance of the numeric values of this feature in the data set. + # Corresponds to the JSON property `variance` + # @return [Float] + attr_accessor :variance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @mean = args[:mean] if args.key?(:mean) + @variance = args[:variance] if args.key?(:variance) + end + end + + # Description of multiple-word text values of this feature. + class Text + include Google::Apis::Core::Hashable + + # Number of multiple-word text values for this feature. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + end + end + end + + # Description of the output value or label. + class OutputFeature + include Google::Apis::Core::Hashable + + # Description of the output values in the data set. + # Corresponds to the JSON property `numeric` + # @return [Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature::Numeric] + attr_accessor :numeric + + # Description of the output labels in the data set. + # Corresponds to the JSON property `text` + # @return [Array] + attr_accessor :text + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @numeric = args[:numeric] if args.key?(:numeric) + @text = args[:text] if args.key?(:text) + end + + # Description of the output values in the data set. + class Numeric + include Google::Apis::Core::Hashable + + # Number of numeric output values in the data set. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # Mean of the output values in the data set. + # Corresponds to the JSON property `mean` + # @return [Float] + attr_accessor :mean + + # Variance of the output values in the data set. + # Corresponds to the JSON property `variance` + # @return [Float] + attr_accessor :variance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @mean = args[:mean] if args.key?(:mean) + @variance = args[:variance] if args.key?(:variance) + end + end + + # + class Text + include Google::Apis::Core::Hashable + + # Number of times the output label occurred in the data set. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # The output label. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @value = args[:value] if args.key?(:value) + end + end + end + end + + # Description of the model. + class ModelDescription + include Google::Apis::Core::Hashable + + # An output confusion matrix. This shows an estimate for how this model will do + # in predictions. This is first indexed by the true class label. For each true + # class label, this provides a pair `predicted_label, count`, where count is the + # estimated number of times the model will predict the predicted label given the + # true label. Will not output if more then 100 classes [Categorical models only]. + # Corresponds to the JSON property `confusionMatrix` + # @return [Hash>] + attr_accessor :confusion_matrix + + # A list of the confusion matrix row totals + # Corresponds to the JSON property `confusionMatrixRowTotals` + # @return [Hash] + attr_accessor :confusion_matrix_row_totals + + # Basic information about the model. + # Corresponds to the JSON property `modelinfo` + # @return [Google::Apis::PredictionV1_5::Training] + attr_accessor :modelinfo + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @confusion_matrix = args[:confusion_matrix] if args.key?(:confusion_matrix) + @confusion_matrix_row_totals = args[:confusion_matrix_row_totals] if args.key?(:confusion_matrix_row_totals) + @modelinfo = args[:modelinfo] if args.key?(:modelinfo) + end + end + end + + # + class Input + include Google::Apis::Core::Hashable + + # Input to the model for a prediction + # Corresponds to the JSON property `input` + # @return [Google::Apis::PredictionV1_5::Input::Input] + attr_accessor :input + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + end + + # Input to the model for a prediction + class Input + include Google::Apis::Core::Hashable + + # A list of input features, these can be strings or doubles. + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + end + end + end + + # + class List + include Google::Apis::Core::Hashable + + # List of models. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Pagination token to fetch the next page, if one exists. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # + class Output + include Google::Apis::Core::Hashable + + # The unique name for the predictive model. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The most likely class label [Categorical models only]. + # Corresponds to the JSON property `outputLabel` + # @return [String] + attr_accessor :output_label + + # A list of class labels with their estimated probabilities [Categorical models + # only]. + # Corresponds to the JSON property `outputMulti` + # @return [Array] + attr_accessor :output_multi + + # The estimated regression value [Regression models only]. + # Corresponds to the JSON property `outputValue` + # @return [Float] + attr_accessor :output_value + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @output_label = args[:output_label] if args.key?(:output_label) + @output_multi = args[:output_multi] if args.key?(:output_multi) + @output_value = args[:output_value] if args.key?(:output_value) + @self_link = args[:self_link] if args.key?(:self_link) + end + + # + class OutputMulti + include Google::Apis::Core::Hashable + + # The class label. + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + # The probability of the class label. + # Corresponds to the JSON property `score` + # @return [Float] + attr_accessor :score + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @label = args[:label] if args.key?(:label) + @score = args[:score] if args.key?(:score) + end + end + end + + # + class Training + include Google::Apis::Core::Hashable + + # Insert time of the model (as a RFC 3339 timestamp). + # Corresponds to the JSON property `created` + # @return [DateTime] + attr_accessor :created + + # The unique name for the predictive model. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # What kind of resource this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Model metadata. + # Corresponds to the JSON property `modelInfo` + # @return [Google::Apis::PredictionV1_5::Training::ModelInfo] + attr_accessor :model_info + + # Type of predictive model (classification or regression) + # Corresponds to the JSON property `modelType` + # @return [String] + attr_accessor :model_type + + # A URL to re-request this resource. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Google storage location of the training data file. + # Corresponds to the JSON property `storageDataLocation` + # @return [String] + attr_accessor :storage_data_location + + # Google storage location of the preprocessing pmml file. + # Corresponds to the JSON property `storagePMMLLocation` + # @return [String] + attr_accessor :storage_pmml_location + + # Google storage location of the pmml model file. + # Corresponds to the JSON property `storagePMMLModelLocation` + # @return [String] + attr_accessor :storage_pmml_model_location + + # Training completion time (as a RFC 3339 timestamp). + # Corresponds to the JSON property `trainingComplete` + # @return [DateTime] + attr_accessor :training_complete + + # Instances to train model on. + # Corresponds to the JSON property `trainingInstances` + # @return [Array] + attr_accessor :training_instances + + # The current status of the training job. This can be one of following: RUNNING; + # DONE; ERROR; ERROR: TRAINING JOB NOT FOUND + # Corresponds to the JSON property `trainingStatus` + # @return [String] + attr_accessor :training_status + + # A class weighting function, which allows the importance weights for class + # labels to be specified [Categorical models only]. + # Corresponds to the JSON property `utility` + # @return [Array>] + attr_accessor :utility + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @created = args[:created] if args.key?(:created) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @model_info = args[:model_info] if args.key?(:model_info) + @model_type = args[:model_type] if args.key?(:model_type) + @self_link = args[:self_link] if args.key?(:self_link) + @storage_data_location = args[:storage_data_location] if args.key?(:storage_data_location) + @storage_pmml_location = args[:storage_pmml_location] if args.key?(:storage_pmml_location) + @storage_pmml_model_location = args[:storage_pmml_model_location] if args.key?(:storage_pmml_model_location) + @training_complete = args[:training_complete] if args.key?(:training_complete) + @training_instances = args[:training_instances] if args.key?(:training_instances) + @training_status = args[:training_status] if args.key?(:training_status) + @utility = args[:utility] if args.key?(:utility) + end + + # Model metadata. + class ModelInfo + include Google::Apis::Core::Hashable + + # Estimated accuracy of model taking utility weights into account [Categorical + # models only]. + # Corresponds to the JSON property `classWeightedAccuracy` + # @return [Float] + attr_accessor :class_weighted_accuracy + + # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, + # based on the amount and quality of the training data, of the estimated + # prediction accuracy. You can use this is a guide to decide whether the results + # are accurate enough for your needs. This estimate will be more reliable if + # your real input data is similar to your training data [Categorical models only] + # . + # Corresponds to the JSON property `classificationAccuracy` + # @return [Float] + attr_accessor :classification_accuracy + + # An estimated mean squared error. The can be used to measure the quality of the + # predicted model [Regression models only]. + # Corresponds to the JSON property `meanSquaredError` + # @return [Float] + attr_accessor :mean_squared_error + + # Type of predictive model (CLASSIFICATION or REGRESSION) + # Corresponds to the JSON property `modelType` + # @return [String] + attr_accessor :model_type + + # Number of valid data instances used in the trained model. + # Corresponds to the JSON property `numberInstances` + # @return [Fixnum] + attr_accessor :number_instances + + # Number of class labels in the trained model [Categorical models only]. + # Corresponds to the JSON property `numberLabels` + # @return [Fixnum] + attr_accessor :number_labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @class_weighted_accuracy = args[:class_weighted_accuracy] if args.key?(:class_weighted_accuracy) + @classification_accuracy = args[:classification_accuracy] if args.key?(:classification_accuracy) + @mean_squared_error = args[:mean_squared_error] if args.key?(:mean_squared_error) + @model_type = args[:model_type] if args.key?(:model_type) + @number_instances = args[:number_instances] if args.key?(:number_instances) + @number_labels = args[:number_labels] if args.key?(:number_labels) + end + end + + # + class TrainingInstance + include Google::Apis::Core::Hashable + + # The input features for this instance + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + # The generic output value - could be regression or class label + # Corresponds to the JSON property `output` + # @return [String] + attr_accessor :output + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + @output = args[:output] if args.key?(:output) + end + end + end + + # + class Update + include Google::Apis::Core::Hashable + + # The input features for this instance + # Corresponds to the JSON property `csvInstance` + # @return [Array] + attr_accessor :csv_instance + + # The class label of this instance + # Corresponds to the JSON property `label` + # @return [String] + attr_accessor :label + + # The generic output value - could be regression value or class label + # Corresponds to the JSON property `output` + # @return [String] + attr_accessor :output + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @csv_instance = args[:csv_instance] if args.key?(:csv_instance) + @label = args[:label] if args.key?(:label) + @output = args[:output] if args.key?(:output) + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_5/representations.rb b/generated/google/apis/prediction_v1_5/representations.rb new file mode 100644 index 000000000..1e2b49f35 --- /dev/null +++ b/generated/google/apis/prediction_v1_5/representations.rb @@ -0,0 +1,352 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_5 + + class Analyze + class Representation < Google::Apis::Core::JsonRepresentation; end + + class DataDescription + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Feature + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Categorical + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Value + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Numeric + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Text + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class OutputFeature + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Numeric + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Text + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ModelDescription + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Input + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class List + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Output + class Representation < Google::Apis::Core::JsonRepresentation; end + + class OutputMulti + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Training + class Representation < Google::Apis::Core::JsonRepresentation; end + + class ModelInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TrainingInstance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Update + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Analyze + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data_description, as: 'dataDescription', class: Google::Apis::PredictionV1_5::Analyze::DataDescription, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::Representation + + collection :errors, as: 'errors' + property :id, as: 'id' + property :kind, as: 'kind' + property :model_description, as: 'modelDescription', class: Google::Apis::PredictionV1_5::Analyze::ModelDescription, decorator: Google::Apis::PredictionV1_5::Analyze::ModelDescription::Representation + + property :self_link, as: 'selfLink' + end + + class DataDescription + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :features, as: 'features', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Representation + + property :output_feature, as: 'outputFeature', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature::Representation + + end + + class Feature + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :categorical, as: 'categorical', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Categorical, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Categorical::Representation + + property :index, :numeric_string => true, as: 'index' + property :numeric, as: 'numeric', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Numeric, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Numeric::Representation + + property :text, as: 'text', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Text, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Text::Representation + + end + + class Categorical + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + collection :values, as: 'values', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Categorical::Value, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::Feature::Categorical::Value::Representation + + end + + class Value + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :value, as: 'value' + end + end + end + + class Numeric + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :mean, as: 'mean' + property :variance, as: 'variance' + end + end + + class Text + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + end + end + end + + class OutputFeature + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :numeric, as: 'numeric', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature::Numeric, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature::Numeric::Representation + + collection :text, as: 'text', class: Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature::Text, decorator: Google::Apis::PredictionV1_5::Analyze::DataDescription::OutputFeature::Text::Representation + + end + + class Numeric + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :mean, as: 'mean' + property :variance, as: 'variance' + end + end + + class Text + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :value, as: 'value' + end + end + end + end + + class ModelDescription + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :confusion_matrix, as: 'confusionMatrix' + hash :confusion_matrix_row_totals, as: 'confusionMatrixRowTotals' + property :modelinfo, as: 'modelinfo', class: Google::Apis::PredictionV1_5::Training, decorator: Google::Apis::PredictionV1_5::Training::Representation + + end + end + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input', class: Google::Apis::PredictionV1_5::Input::Input, decorator: Google::Apis::PredictionV1_5::Input::Input::Representation + + end + + class Input + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :csv_instance, as: 'csvInstance' + end + end + end + + class List + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::PredictionV1_5::Training, decorator: Google::Apis::PredictionV1_5::Training::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + property :self_link, as: 'selfLink' + end + end + + class Output + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + property :output_label, as: 'outputLabel' + collection :output_multi, as: 'outputMulti', class: Google::Apis::PredictionV1_5::Output::OutputMulti, decorator: Google::Apis::PredictionV1_5::Output::OutputMulti::Representation + + property :output_value, as: 'outputValue' + property :self_link, as: 'selfLink' + end + + class OutputMulti + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :label, as: 'label' + property :score, as: 'score' + end + end + end + + class Training + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :created, as: 'created', type: DateTime + + property :id, as: 'id' + property :kind, as: 'kind' + property :model_info, as: 'modelInfo', class: Google::Apis::PredictionV1_5::Training::ModelInfo, decorator: Google::Apis::PredictionV1_5::Training::ModelInfo::Representation + + property :model_type, as: 'modelType' + property :self_link, as: 'selfLink' + property :storage_data_location, as: 'storageDataLocation' + property :storage_pmml_location, as: 'storagePMMLLocation' + property :storage_pmml_model_location, as: 'storagePMMLModelLocation' + property :training_complete, as: 'trainingComplete', type: DateTime + + collection :training_instances, as: 'trainingInstances', class: Google::Apis::PredictionV1_5::Training::TrainingInstance, decorator: Google::Apis::PredictionV1_5::Training::TrainingInstance::Representation + + property :training_status, as: 'trainingStatus' + collection :utility, as: 'utility' + end + + class ModelInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :class_weighted_accuracy, as: 'classWeightedAccuracy' + property :classification_accuracy, as: 'classificationAccuracy' + property :mean_squared_error, as: 'meanSquaredError' + property :model_type, as: 'modelType' + property :number_instances, :numeric_string => true, as: 'numberInstances' + property :number_labels, :numeric_string => true, as: 'numberLabels' + end + end + + class TrainingInstance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :csv_instance, as: 'csvInstance' + property :output, as: 'output' + end + end + end + + class Update + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :csv_instance, as: 'csvInstance' + property :label, as: 'label' + property :output, as: 'output' + end + end + end + end +end diff --git a/generated/google/apis/prediction_v1_5/service.rb b/generated/google/apis/prediction_v1_5/service.rb new file mode 100644 index 000000000..39c0b23b6 --- /dev/null +++ b/generated/google/apis/prediction_v1_5/service.rb @@ -0,0 +1,357 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PredictionV1_5 + # Prediction API + # + # Lets you access a cloud hosted machine learning service that makes it easy to + # build smart apps + # + # @example + # require 'google/apis/prediction_v1_5' + # + # Prediction = Google::Apis::PredictionV1_5 # Alias the module + # service = Prediction::PredictionService.new + # + # @see https://developers.google.com/prediction/docs/developer-guide + class PredictionService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'prediction/v1.5/') + @batch_path = 'batch' + end + + # Submit input and request an output against a hosted model. + # @param [String] hosted_model_name + # The name of a hosted model. + # @param [Google::Apis::PredictionV1_5::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_5::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_5::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_hostedmodel(hosted_model_name, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'hostedmodels/{hostedModelName}/predict', options) + command.request_representation = Google::Apis::PredictionV1_5::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_5::Output::Representation + command.response_class = Google::Apis::PredictionV1_5::Output + command.params['hostedModelName'] = hosted_model_name unless hosted_model_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get analysis of the model and the data the model was trained on. + # @param [String] id + # The unique name for the predictive model. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_5::Analyze] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_5::Analyze] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def analyze_trainedmodel(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'trainedmodels/{id}/analyze', options) + command.response_representation = Google::Apis::PredictionV1_5::Analyze::Representation + command.response_class = Google::Apis::PredictionV1_5::Analyze + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete a trained model. + # @param [String] id + # The unique name for the predictive model. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_trainedmodel(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'trainedmodels/{id}', options) + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Check training status of your model. + # @param [String] id + # The unique name for the predictive model. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_5::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_5::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_trainedmodel(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'trainedmodels/{id}', options) + command.response_representation = Google::Apis::PredictionV1_5::Training::Representation + command.response_class = Google::Apis::PredictionV1_5::Training + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Begin training your model. + # @param [Google::Apis::PredictionV1_5::Training] training_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_5::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_5::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_trainedmodel(training_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'trainedmodels', options) + command.request_representation = Google::Apis::PredictionV1_5::Training::Representation + command.request_object = training_object + command.response_representation = Google::Apis::PredictionV1_5::Training::Representation + command.response_class = Google::Apis::PredictionV1_5::Training + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List available models. + # @param [Fixnum] max_results + # Maximum number of results to return + # @param [String] page_token + # Pagination token + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_5::List] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_5::List] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_trainedmodels(max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'trainedmodels/list', options) + command.response_representation = Google::Apis::PredictionV1_5::List::Representation + command.response_class = Google::Apis::PredictionV1_5::List + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Submit model id and request a prediction. + # @param [String] id + # The unique name for the predictive model. + # @param [Google::Apis::PredictionV1_5::Input] input_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_5::Output] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_5::Output] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def predict_trainedmodel(id, input_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'trainedmodels/{id}/predict', options) + command.request_representation = Google::Apis::PredictionV1_5::Input::Representation + command.request_object = input_object + command.response_representation = Google::Apis::PredictionV1_5::Output::Representation + command.response_class = Google::Apis::PredictionV1_5::Output + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Add new data to a trained model. + # @param [String] id + # The unique name for the predictive model. + # @param [Google::Apis::PredictionV1_5::Update] update_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PredictionV1_5::Training] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PredictionV1_5::Training] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_trainedmodel(id, update_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'trainedmodels/{id}', options) + command.request_representation = Google::Apis::PredictionV1_5::Update::Representation + command.request_object = update_object + command.response_representation = Google::Apis::PredictionV1_5::Training::Representation + command.response_class = Google::Apis::PredictionV1_5::Training + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/pubsub_v1beta1a.rb b/generated/google/apis/pubsub_v1beta1a.rb new file mode 100644 index 000000000..566bcfd6e --- /dev/null +++ b/generated/google/apis/pubsub_v1beta1a.rb @@ -0,0 +1,37 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/pubsub_v1beta1a/service.rb' +require 'google/apis/pubsub_v1beta1a/classes.rb' +require 'google/apis/pubsub_v1beta1a/representations.rb' + +module Google + module Apis + # Google Cloud Pub/Sub API + # + # Provides reliable, many-to-many, asynchronous messaging between applications. + # + # @see https://cloud.google.com/pubsub/docs + module PubsubV1beta1a + VERSION = 'V1beta1a' + REVISION = '20170329' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View and manage Pub/Sub topics and subscriptions + AUTH_PUBSUB = 'https://www.googleapis.com/auth/pubsub' + end + end +end diff --git a/generated/google/apis/pubsub_v1beta1a/classes.rb b/generated/google/apis/pubsub_v1beta1a/classes.rb new file mode 100644 index 000000000..d3c6c0096 --- /dev/null +++ b/generated/google/apis/pubsub_v1beta1a/classes.rb @@ -0,0 +1,605 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PubsubV1beta1a + + # Request for the Acknowledge method. + class AcknowledgeRequest + include Google::Apis::Core::Hashable + + # The acknowledgment ID for the message being acknowledged. This was + # returned by the Pub/Sub system in the Pull response. + # Corresponds to the JSON property `ackId` + # @return [Array] + attr_accessor :ack_id + + # The subscription whose message is being acknowledged. + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_id = args[:ack_id] if args.key?(:ack_id) + @subscription = args[:subscription] if args.key?(:subscription) + end + end + + # An empty message that you can re-use to avoid defining duplicated empty + # messages in your project. A typical example is to use it as argument or the + # return value of a service API. For instance: + # service Foo ` + # rpc Bar (proto2.Empty) returns (proto2.Empty) ` `; + # `; + # BEGIN GOOGLE-INTERNAL + # The difference between this one and net/rpc/empty-message.proto is that + # 1) The generated message here is in proto2 C++ API. + # 2) The proto2.Empty has minimum dependencies + # (no message_set or net/rpc dependencies) + # END GOOGLE-INTERNAL + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # A key-value pair applied to a given object. + class Label + include Google::Apis::Core::Hashable + + # The key of a label is a syntactically valid URL (as per RFC 1738) with + # the "scheme" and initial slashes omitted and with the additional + # restrictions noted below. Each key should be globally unique. The + # "host" portion is called the "namespace" and is not necessarily + # resolvable to a network endpoint. Instead, the namespace indicates what + # system or entity defines the semantics of the label. Namespaces do not + # restrict the set of objects to which a label may be associated. + # Keys are defined by the following grammar: + # key = hostname "/" kpath + # kpath = ksegment *[ "/" ksegment ] + # ksegment = alphadigit | *[ alphadigit | "-" | "_" | "." ] + # where "hostname" and "alphadigit" are defined as in RFC 1738. + # Example key: + # spanner.google.com/universe + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # An integer value. + # Corresponds to the JSON property `numValue` + # @return [Fixnum] + attr_accessor :num_value + + # A string value. + # Corresponds to the JSON property `strValue` + # @return [String] + attr_accessor :str_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @num_value = args[:num_value] if args.key?(:num_value) + @str_value = args[:str_value] if args.key?(:str_value) + end + end + + # Response for the ListSubscriptions method. + class ListSubscriptionsResponse + include Google::Apis::Core::Hashable + + # If not empty, indicates that there are more subscriptions that match the + # request and this value should be passed to the next + # ListSubscriptionsRequest to continue. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The subscriptions that match the request. + # Corresponds to the JSON property `subscription` + # @return [Array] + attr_accessor :subscription + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @subscription = args[:subscription] if args.key?(:subscription) + end + end + + # Response for the ListTopics method. + class ListTopicsResponse + include Google::Apis::Core::Hashable + + # If not empty, indicates that there are more topics that match the request, + # and this value should be passed to the next ListTopicsRequest + # to continue. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The resulting topics. + # Corresponds to the JSON property `topic` + # @return [Array] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @topic = args[:topic] if args.key?(:topic) + end + end + + # Request for the ModifyAckDeadline method. + class ModifyAckDeadlineRequest + include Google::Apis::Core::Hashable + + # The new ack deadline with respect to the time this request was sent to the + # Pub/Sub system. Must be >= 0. For example, if the value is 10, the new ack + # deadline will expire 10 seconds after the ModifyAckDeadline call was made. + # Specifying zero may immediately make the message available for another pull + # request. + # Corresponds to the JSON property `ackDeadlineSeconds` + # @return [Fixnum] + attr_accessor :ack_deadline_seconds + + # The acknowledgment ID. Either this or ack_ids must be populated, + # not both. + # Corresponds to the JSON property `ackId` + # @return [String] + attr_accessor :ack_id + + # List of acknowledgment IDs. Either this field or ack_id + # should be populated, not both. + # Corresponds to the JSON property `ackIds` + # @return [Array] + attr_accessor :ack_ids + + # Next Index: 5 + # The name of the subscription from which messages are being pulled. + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_deadline_seconds = args[:ack_deadline_seconds] if args.key?(:ack_deadline_seconds) + @ack_id = args[:ack_id] if args.key?(:ack_id) + @ack_ids = args[:ack_ids] if args.key?(:ack_ids) + @subscription = args[:subscription] if args.key?(:subscription) + end + end + + # Request for the ModifyPushConfig method. + class ModifyPushConfigRequest + include Google::Apis::Core::Hashable + + # Configuration for a push delivery endpoint. + # Corresponds to the JSON property `pushConfig` + # @return [Google::Apis::PubsubV1beta1a::PushConfig] + attr_accessor :push_config + + # The name of the subscription. + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @push_config = args[:push_config] if args.key?(:push_config) + @subscription = args[:subscription] if args.key?(:subscription) + end + end + + # Request for the PublishBatch method. + class PublishBatchRequest + include Google::Apis::Core::Hashable + + # The messages to publish. + # Corresponds to the JSON property `messages` + # @return [Array] + attr_accessor :messages + + # The messages in the request will be published on this topic. + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @messages = args[:messages] if args.key?(:messages) + @topic = args[:topic] if args.key?(:topic) + end + end + + # Response for the PublishBatch method. + class PublishBatchResponse + include Google::Apis::Core::Hashable + + # The server-assigned ID of each published message, in the same order as + # the messages in the request. IDs are guaranteed to be unique within + # the topic. + # Corresponds to the JSON property `messageIds` + # @return [Array] + attr_accessor :message_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @message_ids = args[:message_ids] if args.key?(:message_ids) + end + end + + # Request for the Publish method. + class PublishRequest + include Google::Apis::Core::Hashable + + # A message data and its labels. + # Corresponds to the JSON property `message` + # @return [Google::Apis::PubsubV1beta1a::PubsubMessage] + attr_accessor :message + + # The message in the request will be published on this topic. + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @message = args[:message] if args.key?(:message) + @topic = args[:topic] if args.key?(:topic) + end + end + + # An event indicating a received message or truncation event. + class PubsubEvent + include Google::Apis::Core::Hashable + + # Indicates that this subscription has been deleted. (Note that pull + # subscribers will always receive NOT_FOUND in response in their pull + # request on the subscription, rather than seeing this boolean.) + # Corresponds to the JSON property `deleted` + # @return [Boolean] + attr_accessor :deleted + alias_method :deleted?, :deleted + + # A message data and its labels. + # Corresponds to the JSON property `message` + # @return [Google::Apis::PubsubV1beta1a::PubsubMessage] + attr_accessor :message + + # The subscription that received the event. + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + # Indicates that this subscription has been truncated. + # Corresponds to the JSON property `truncated` + # @return [Boolean] + attr_accessor :truncated + alias_method :truncated?, :truncated + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deleted = args[:deleted] if args.key?(:deleted) + @message = args[:message] if args.key?(:message) + @subscription = args[:subscription] if args.key?(:subscription) + @truncated = args[:truncated] if args.key?(:truncated) + end + end + + # A message data and its labels. + class PubsubMessage + include Google::Apis::Core::Hashable + + # The message payload. + # Corresponds to the JSON property `data` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :data + + # Optional list of labels for this message. Keys in this collection must + # be unique. + # Corresponds to the JSON property `label` + # @return [Array] + attr_accessor :label + + # ID of this message assigned by the server at publication time. Guaranteed + # to be unique within the topic. This value may be read by a subscriber + # that receives a PubsubMessage via a Pull call or a push delivery. It must + # not be populated by a publisher in a Publish call. + # Corresponds to the JSON property `messageId` + # @return [String] + attr_accessor :message_id + + # The time at which the message was published. + # The time is milliseconds since the UNIX epoch. + # Corresponds to the JSON property `publishTime` + # @return [Fixnum] + attr_accessor :publish_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data = args[:data] if args.key?(:data) + @label = args[:label] if args.key?(:label) + @message_id = args[:message_id] if args.key?(:message_id) + @publish_time = args[:publish_time] if args.key?(:publish_time) + end + end + + # Request for the PullBatch method. + class PullBatchRequest + include Google::Apis::Core::Hashable + + # The maximum number of PubsubEvents returned for this request. The Pub/Sub + # system may return fewer than the number of events specified. + # Corresponds to the JSON property `maxEvents` + # @return [Fixnum] + attr_accessor :max_events + + # If this is specified as true the system will respond immediately even if + # it is not able to return a message in the Pull response. Otherwise the + # system is allowed to wait until at least one message is available rather + # than returning no messages. The client may cancel the request if it does + # not wish to wait any longer for the response. + # Corresponds to the JSON property `returnImmediately` + # @return [Boolean] + attr_accessor :return_immediately + alias_method :return_immediately?, :return_immediately + + # The subscription from which messages should be pulled. + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_events = args[:max_events] if args.key?(:max_events) + @return_immediately = args[:return_immediately] if args.key?(:return_immediately) + @subscription = args[:subscription] if args.key?(:subscription) + end + end + + # Response for the PullBatch method. + class PullBatchResponse + include Google::Apis::Core::Hashable + + # Received Pub/Sub messages or status events. The Pub/Sub system will return + # zero messages if there are no more messages available in the backlog. The + # Pub/Sub system may return fewer than the max_events requested even if + # there are more messages available in the backlog. + # Corresponds to the JSON property `pullResponses` + # @return [Array] + attr_accessor :pull_responses + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @pull_responses = args[:pull_responses] if args.key?(:pull_responses) + end + end + + # Request for the Pull method. + class PullRequest + include Google::Apis::Core::Hashable + + # If this is specified as true the system will respond immediately even if + # it is not able to return a message in the Pull response. Otherwise the + # system is allowed to wait until at least one message is available rather + # than returning FAILED_PRECONDITION. The client may cancel the request if + # it does not wish to wait any longer for the response. + # Corresponds to the JSON property `returnImmediately` + # @return [Boolean] + attr_accessor :return_immediately + alias_method :return_immediately?, :return_immediately + + # The subscription from which a message should be pulled. + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @return_immediately = args[:return_immediately] if args.key?(:return_immediately) + @subscription = args[:subscription] if args.key?(:subscription) + end + end + + # Either a PubsubMessage or a truncation event. One of these two + # must be populated. + class PullResponse + include Google::Apis::Core::Hashable + + # This ID must be used to acknowledge the received event or message. + # Corresponds to the JSON property `ackId` + # @return [String] + attr_accessor :ack_id + + # An event indicating a received message or truncation event. + # Corresponds to the JSON property `pubsubEvent` + # @return [Google::Apis::PubsubV1beta1a::PubsubEvent] + attr_accessor :pubsub_event + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_id = args[:ack_id] if args.key?(:ack_id) + @pubsub_event = args[:pubsub_event] if args.key?(:pubsub_event) + end + end + + # Configuration for a push delivery endpoint. + class PushConfig + include Google::Apis::Core::Hashable + + # A URL locating the endpoint to which messages should be pushed. + # For example, a Webhook endpoint might use "https://example.com/push". + # Corresponds to the JSON property `pushEndpoint` + # @return [String] + attr_accessor :push_endpoint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @push_endpoint = args[:push_endpoint] if args.key?(:push_endpoint) + end + end + + # A subscription resource. + class Subscription + include Google::Apis::Core::Hashable + + # For either push or pull delivery, the value is the maximum time after a + # subscriber receives a message before the subscriber should acknowledge or + # Nack the message. If the Ack deadline for a message passes without an + # Ack or a Nack, the Pub/Sub system will eventually redeliver the message. + # If a subscriber acknowledges after the deadline, the Pub/Sub system may + # accept the Ack, but it is possible that the message has been already + # delivered again. Multiple Acks to the message are allowed and will + # succeed. + # For push delivery, this value is used to set the request timeout for + # the call to the push endpoint. + # For pull delivery, this value is used as the initial value for the Ack + # deadline. It may be overridden for each message using its corresponding + # ack_id with ModifyAckDeadline. + # While a message is outstanding (i.e. it has been delivered to a pull + # subscriber and the subscriber has not yet Acked or Nacked), the Pub/Sub + # system will not deliver that message to another pull subscriber + # (on a best-effort basis). + # Corresponds to the JSON property `ackDeadlineSeconds` + # @return [Fixnum] + attr_accessor :ack_deadline_seconds + + # Name of the subscription. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Configuration for a push delivery endpoint. + # Corresponds to the JSON property `pushConfig` + # @return [Google::Apis::PubsubV1beta1a::PushConfig] + attr_accessor :push_config + + # The name of the topic from which this subscription is receiving messages. + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_deadline_seconds = args[:ack_deadline_seconds] if args.key?(:ack_deadline_seconds) + @name = args[:name] if args.key?(:name) + @push_config = args[:push_config] if args.key?(:push_config) + @topic = args[:topic] if args.key?(:topic) + end + end + + # A topic resource. + class Topic + include Google::Apis::Core::Hashable + + # Name of the topic. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + end + end +end diff --git a/generated/google/apis/pubsub_v1beta1a/representations.rb b/generated/google/apis/pubsub_v1beta1a/representations.rb new file mode 100644 index 000000000..4ff27e5f8 --- /dev/null +++ b/generated/google/apis/pubsub_v1beta1a/representations.rb @@ -0,0 +1,306 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PubsubV1beta1a + + class AcknowledgeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Label + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListSubscriptionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListTopicsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ModifyAckDeadlineRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ModifyPushConfigRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublishBatchRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublishBatchResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublishRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PubsubEvent + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PubsubMessage + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PullBatchRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PullBatchResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PullRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PullResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PushConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Subscription + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Topic + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcknowledgeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ack_id, as: 'ackId' + property :subscription, as: 'subscription' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class Label + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :num_value, :numeric_string => true, as: 'numValue' + property :str_value, as: 'strValue' + end + end + + class ListSubscriptionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :subscription, as: 'subscription', class: Google::Apis::PubsubV1beta1a::Subscription, decorator: Google::Apis::PubsubV1beta1a::Subscription::Representation + + end + end + + class ListTopicsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :topic, as: 'topic', class: Google::Apis::PubsubV1beta1a::Topic, decorator: Google::Apis::PubsubV1beta1a::Topic::Representation + + end + end + + class ModifyAckDeadlineRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ack_deadline_seconds, as: 'ackDeadlineSeconds' + property :ack_id, as: 'ackId' + collection :ack_ids, as: 'ackIds' + property :subscription, as: 'subscription' + end + end + + class ModifyPushConfigRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :push_config, as: 'pushConfig', class: Google::Apis::PubsubV1beta1a::PushConfig, decorator: Google::Apis::PubsubV1beta1a::PushConfig::Representation + + property :subscription, as: 'subscription' + end + end + + class PublishBatchRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :messages, as: 'messages', class: Google::Apis::PubsubV1beta1a::PubsubMessage, decorator: Google::Apis::PubsubV1beta1a::PubsubMessage::Representation + + property :topic, as: 'topic' + end + end + + class PublishBatchResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :message_ids, as: 'messageIds' + end + end + + class PublishRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :message, as: 'message', class: Google::Apis::PubsubV1beta1a::PubsubMessage, decorator: Google::Apis::PubsubV1beta1a::PubsubMessage::Representation + + property :topic, as: 'topic' + end + end + + class PubsubEvent + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :deleted, as: 'deleted' + property :message, as: 'message', class: Google::Apis::PubsubV1beta1a::PubsubMessage, decorator: Google::Apis::PubsubV1beta1a::PubsubMessage::Representation + + property :subscription, as: 'subscription' + property :truncated, as: 'truncated' + end + end + + class PubsubMessage + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data, :base64 => true, as: 'data' + collection :label, as: 'label', class: Google::Apis::PubsubV1beta1a::Label, decorator: Google::Apis::PubsubV1beta1a::Label::Representation + + property :message_id, as: 'messageId' + property :publish_time, :numeric_string => true, as: 'publishTime' + end + end + + class PullBatchRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_events, as: 'maxEvents' + property :return_immediately, as: 'returnImmediately' + property :subscription, as: 'subscription' + end + end + + class PullBatchResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :pull_responses, as: 'pullResponses', class: Google::Apis::PubsubV1beta1a::PullResponse, decorator: Google::Apis::PubsubV1beta1a::PullResponse::Representation + + end + end + + class PullRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :return_immediately, as: 'returnImmediately' + property :subscription, as: 'subscription' + end + end + + class PullResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ack_id, as: 'ackId' + property :pubsub_event, as: 'pubsubEvent', class: Google::Apis::PubsubV1beta1a::PubsubEvent, decorator: Google::Apis::PubsubV1beta1a::PubsubEvent::Representation + + end + end + + class PushConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :push_endpoint, as: 'pushEndpoint' + end + end + + class Subscription + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ack_deadline_seconds, as: 'ackDeadlineSeconds' + property :name, as: 'name' + property :push_config, as: 'pushConfig', class: Google::Apis::PubsubV1beta1a::PushConfig, decorator: Google::Apis::PubsubV1beta1a::PushConfig::Representation + + property :topic, as: 'topic' + end + end + + class Topic + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + end + end +end diff --git a/generated/google/apis/pubsub_v1beta1a/service.rb b/generated/google/apis/pubsub_v1beta1a/service.rb new file mode 100644 index 000000000..0d9fedddf --- /dev/null +++ b/generated/google/apis/pubsub_v1beta1a/service.rb @@ -0,0 +1,549 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PubsubV1beta1a + # Google Cloud Pub/Sub API + # + # Provides reliable, many-to-many, asynchronous messaging between applications. + # + # @example + # require 'google/apis/pubsub_v1beta1a' + # + # Pubsub = Google::Apis::PubsubV1beta1a # Alias the module + # service = Pubsub::PubsubService.new + # + # @see https://cloud.google.com/pubsub/docs + class PubsubService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://pubsub.googleapis.com/', '') + @batch_path = 'batch' + end + + # Acknowledges a particular received message: the Pub/Sub system can remove + # the given message from the subscription. Acknowledging a message whose + # Ack deadline has expired may succeed, but the message could have been + # already redelivered. Acknowledging a message more than once will not + # result in an error. This is only used for messages received via pull. + # @param [Google::Apis::PubsubV1beta1a::AcknowledgeRequest] acknowledge_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def acknowledge_subscription(acknowledge_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/subscriptions/acknowledge', options) + command.request_representation = Google::Apis::PubsubV1beta1a::AcknowledgeRequest::Representation + command.request_object = acknowledge_request_object + command.response_representation = Google::Apis::PubsubV1beta1a::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Empty + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a subscription on a given topic for a given subscriber. + # If the subscription already exists, returns ALREADY_EXISTS. + # If the corresponding topic doesn't exist, returns NOT_FOUND. + # If the name is not provided in the request, the server will assign a random + # name for this subscription on the same project as the topic. + # @param [Google::Apis::PubsubV1beta1a::Subscription] subscription_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Subscription] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Subscription] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_subscription(subscription_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/subscriptions', options) + command.request_representation = Google::Apis::PubsubV1beta1a::Subscription::Representation + command.request_object = subscription_object + command.response_representation = Google::Apis::PubsubV1beta1a::Subscription::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Subscription + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an existing subscription. All pending messages in the subscription + # are immediately dropped. Calls to Pull after deletion will return + # NOT_FOUND. + # @param [String] subscription + # The subscription to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_subscription(subscription, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1a/subscriptions/{+subscription}', options) + command.response_representation = Google::Apis::PubsubV1beta1a::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Empty + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the configuration details of a subscription. + # @param [String] subscription + # The name of the subscription to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Subscription] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Subscription] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_subscription(subscription, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1a/subscriptions/{+subscription}', options) + command.response_representation = Google::Apis::PubsubV1beta1a::Subscription::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Subscription + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists matching subscriptions. + # @param [Fixnum] max_results + # Maximum number of subscriptions to return. + # @param [String] page_token + # The value obtained in the last ListSubscriptionsResponse + # for continuation. + # @param [String] query + # A valid label query expression. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::ListSubscriptionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::ListSubscriptionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_subscriptions(max_results: nil, page_token: nil, query: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1a/subscriptions', options) + command.response_representation = Google::Apis::PubsubV1beta1a::ListSubscriptionsResponse::Representation + command.response_class = Google::Apis::PubsubV1beta1a::ListSubscriptionsResponse + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['query'] = query unless query.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Modifies the Ack deadline for a message received from a pull request. + # @param [Google::Apis::PubsubV1beta1a::ModifyAckDeadlineRequest] modify_ack_deadline_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def modify_subscription_ack_deadline(modify_ack_deadline_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/subscriptions/modifyAckDeadline', options) + command.request_representation = Google::Apis::PubsubV1beta1a::ModifyAckDeadlineRequest::Representation + command.request_object = modify_ack_deadline_request_object + command.response_representation = Google::Apis::PubsubV1beta1a::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Empty + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Modifies the PushConfig for a specified subscription. + # This method can be used to suspend the flow of messages to an endpoint + # by clearing the PushConfig field in the request. Messages + # will be accumulated for delivery even if no push configuration is + # defined or while the configuration is modified. + # @param [Google::Apis::PubsubV1beta1a::ModifyPushConfigRequest] modify_push_config_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def modify_subscription_push_config(modify_push_config_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/subscriptions/modifyPushConfig', options) + command.request_representation = Google::Apis::PubsubV1beta1a::ModifyPushConfigRequest::Representation + command.request_object = modify_push_config_request_object + command.response_representation = Google::Apis::PubsubV1beta1a::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Empty + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Pulls a single message from the server. + # If return_immediately is true, and no messages are available in the + # subscription, this method returns FAILED_PRECONDITION. The system is free + # to return an UNAVAILABLE error if no messages are available in a + # reasonable amount of time (to reduce system load). + # @param [Google::Apis::PubsubV1beta1a::PullRequest] pull_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::PullResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::PullResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def pull_subscription(pull_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/subscriptions/pull', options) + command.request_representation = Google::Apis::PubsubV1beta1a::PullRequest::Representation + command.request_object = pull_request_object + command.response_representation = Google::Apis::PubsubV1beta1a::PullResponse::Representation + command.response_class = Google::Apis::PubsubV1beta1a::PullResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Pulls messages from the server. Returns an empty list if there are no + # messages available in the backlog. The system is free to return UNAVAILABLE + # if there are too many pull requests outstanding for the given subscription. + # @param [Google::Apis::PubsubV1beta1a::PullBatchRequest] pull_batch_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::PullBatchResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::PullBatchResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def pull_subscription_batch(pull_batch_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/subscriptions/pullBatch', options) + command.request_representation = Google::Apis::PubsubV1beta1a::PullBatchRequest::Representation + command.request_object = pull_batch_request_object + command.response_representation = Google::Apis::PubsubV1beta1a::PullBatchResponse::Representation + command.response_class = Google::Apis::PubsubV1beta1a::PullBatchResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates the given topic with the given name. + # @param [Google::Apis::PubsubV1beta1a::Topic] topic_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Topic] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Topic] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_topic(topic_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/topics', options) + command.request_representation = Google::Apis::PubsubV1beta1a::Topic::Representation + command.request_object = topic_object + command.response_representation = Google::Apis::PubsubV1beta1a::Topic::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Topic + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the topic with the given name. Returns NOT_FOUND if the topic does + # not exist. After a topic is deleted, a new topic may be created with the + # same name. + # @param [String] topic + # Name of the topic to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_topic(topic, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1a/topics/{+topic}', options) + command.response_representation = Google::Apis::PubsubV1beta1a::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Empty + command.params['topic'] = topic unless topic.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the configuration of a topic. Since the topic only has the name + # attribute, this method is only useful to check the existence of a topic. + # If other attributes are added in the future, they will be returned here. + # @param [String] topic + # The name of the topic to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Topic] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Topic] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_topic(topic, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1a/topics/{+topic}', options) + command.response_representation = Google::Apis::PubsubV1beta1a::Topic::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Topic + command.params['topic'] = topic unless topic.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists matching topics. + # @param [Fixnum] max_results + # Maximum number of topics to return. + # @param [String] page_token + # The value obtained in the last ListTopicsResponse + # for continuation. + # @param [String] query + # A valid label query expression. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::ListTopicsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::ListTopicsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_topics(max_results: nil, page_token: nil, query: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1a/topics', options) + command.response_representation = Google::Apis::PubsubV1beta1a::ListTopicsResponse::Representation + command.response_class = Google::Apis::PubsubV1beta1a::ListTopicsResponse + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['query'] = query unless query.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Adds a message to the topic. Returns NOT_FOUND if the topic does not + # exist. + # @param [Google::Apis::PubsubV1beta1a::PublishRequest] publish_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def publish_topic(publish_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/topics/publish', options) + command.request_representation = Google::Apis::PubsubV1beta1a::PublishRequest::Representation + command.request_object = publish_request_object + command.response_representation = Google::Apis::PubsubV1beta1a::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta1a::Empty + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Adds one or more messages to the topic. Returns NOT_FOUND if the topic does + # not exist. + # @param [Google::Apis::PubsubV1beta1a::PublishBatchRequest] publish_batch_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta1a::PublishBatchResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta1a::PublishBatchResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def publish_topic_batch(publish_batch_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1a/topics/publishBatch', options) + command.request_representation = Google::Apis::PubsubV1beta1a::PublishBatchRequest::Representation + command.request_object = publish_batch_request_object + command.response_representation = Google::Apis::PubsubV1beta1a::PublishBatchResponse::Representation + command.response_class = Google::Apis::PubsubV1beta1a::PublishBatchResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/pubsub_v1beta2.rb b/generated/google/apis/pubsub_v1beta2.rb new file mode 100644 index 000000000..89a365be7 --- /dev/null +++ b/generated/google/apis/pubsub_v1beta2.rb @@ -0,0 +1,37 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/pubsub_v1beta2/service.rb' +require 'google/apis/pubsub_v1beta2/classes.rb' +require 'google/apis/pubsub_v1beta2/representations.rb' + +module Google + module Apis + # Google Cloud Pub/Sub API + # + # Provides reliable, many-to-many, asynchronous messaging between applications. + # + # @see https://cloud.google.com/pubsub/docs + module PubsubV1beta2 + VERSION = 'V1beta2' + REVISION = '20170607' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View and manage Pub/Sub topics and subscriptions + AUTH_PUBSUB = 'https://www.googleapis.com/auth/pubsub' + end + end +end diff --git a/generated/google/apis/pubsub_v1beta2/classes.rb b/generated/google/apis/pubsub_v1beta2/classes.rb new file mode 100644 index 000000000..9dd104a0d --- /dev/null +++ b/generated/google/apis/pubsub_v1beta2/classes.rb @@ -0,0 +1,679 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PubsubV1beta2 + + # Request for the Acknowledge method. + class AcknowledgeRequest + include Google::Apis::Core::Hashable + + # The acknowledgment ID for the messages being acknowledged that was returned + # by the Pub/Sub system in the `Pull` response. Must not be empty. + # Corresponds to the JSON property `ackIds` + # @return [Array] + attr_accessor :ack_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_ids = args[:ack_ids] if args.key?(:ack_ids) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. + # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + # Required + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Response for the `ListSubscriptions` method. + class ListSubscriptionsResponse + include Google::Apis::Core::Hashable + + # If not empty, indicates that there may be more subscriptions that match + # the request; this value should be passed in a new + # `ListSubscriptionsRequest` to get more subscriptions. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The subscriptions that match the request. + # Corresponds to the JSON property `subscriptions` + # @return [Array] + attr_accessor :subscriptions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @subscriptions = args[:subscriptions] if args.key?(:subscriptions) + end + end + + # Response for the `ListTopicSubscriptions` method. + class ListTopicSubscriptionsResponse + include Google::Apis::Core::Hashable + + # If not empty, indicates that there may be more subscriptions that match + # the request; this value should be passed in a new + # `ListTopicSubscriptionsRequest` to get more subscriptions. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The names of the subscriptions that match the request. + # Corresponds to the JSON property `subscriptions` + # @return [Array] + attr_accessor :subscriptions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @subscriptions = args[:subscriptions] if args.key?(:subscriptions) + end + end + + # Response for the `ListTopics` method. + class ListTopicsResponse + include Google::Apis::Core::Hashable + + # If not empty, indicates that there may be more topics that match the + # request; this value should be passed in a new `ListTopicsRequest`. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The resulting topics. + # Corresponds to the JSON property `topics` + # @return [Array] + attr_accessor :topics + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @topics = args[:topics] if args.key?(:topics) + end + end + + # Request for the ModifyAckDeadline method. + class ModifyAckDeadlineRequest + include Google::Apis::Core::Hashable + + # The new ack deadline with respect to the time this request was sent to + # the Pub/Sub system. Must be >= 0. For example, if the value is 10, the new + # ack deadline will expire 10 seconds after the `ModifyAckDeadline` call + # was made. Specifying zero may immediately make the message available for + # another pull request. + # Corresponds to the JSON property `ackDeadlineSeconds` + # @return [Fixnum] + attr_accessor :ack_deadline_seconds + + # The acknowledgment ID. Either this or ack_ids must be populated, but not + # both. + # Corresponds to the JSON property `ackId` + # @return [String] + attr_accessor :ack_id + + # List of acknowledgment IDs. + # Corresponds to the JSON property `ackIds` + # @return [Array] + attr_accessor :ack_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_deadline_seconds = args[:ack_deadline_seconds] if args.key?(:ack_deadline_seconds) + @ack_id = args[:ack_id] if args.key?(:ack_id) + @ack_ids = args[:ack_ids] if args.key?(:ack_ids) + end + end + + # Request for the ModifyPushConfig method. + class ModifyPushConfigRequest + include Google::Apis::Core::Hashable + + # Configuration for a push delivery endpoint. + # Corresponds to the JSON property `pushConfig` + # @return [Google::Apis::PubsubV1beta2::PushConfig] + attr_accessor :push_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @push_config = args[:push_config] if args.key?(:push_config) + end + end + + # 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). + class Policy + include Google::Apis::Core::Hashable + + # Associates a list of `members` to a `role`. + # `bindings` with no members will result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + end + end + + # Request for the Publish method. + class PublishRequest + include Google::Apis::Core::Hashable + + # The messages to publish. + # Corresponds to the JSON property `messages` + # @return [Array] + attr_accessor :messages + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @messages = args[:messages] if args.key?(:messages) + end + end + + # Response for the `Publish` method. + class PublishResponse + include Google::Apis::Core::Hashable + + # The server-assigned ID of each published message, in the same order as + # the messages in the request. IDs are guaranteed to be unique within + # the topic. + # Corresponds to the JSON property `messageIds` + # @return [Array] + attr_accessor :message_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @message_ids = args[:message_ids] if args.key?(:message_ids) + end + end + + # A message data and its attributes. The message payload must not be empty; + # it must contain either a non-empty data field, or at least one attribute. + class PubsubMessage + include Google::Apis::Core::Hashable + + # Optional attributes for this message. + # Corresponds to the JSON property `attributes` + # @return [Hash] + attr_accessor :attributes + + # The message payload. For JSON requests, the value of this field must be + # [base64-encoded](https://tools.ietf.org/html/rfc4648). + # Corresponds to the JSON property `data` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :data + + # ID of this message, assigned by the server when the message is published. + # Guaranteed to be unique within the topic. This value may be read by a + # subscriber that receives a `PubsubMessage` via a `Pull` call or a push + # delivery. It must not be populated by the publisher in a `Publish` call. + # Corresponds to the JSON property `messageId` + # @return [String] + attr_accessor :message_id + + # The time at which the message was published, populated by the server when + # it receives the `Publish` call. It must not be populated by the + # publisher in a `Publish` call. + # Corresponds to the JSON property `publishTime` + # @return [String] + attr_accessor :publish_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @attributes = args[:attributes] if args.key?(:attributes) + @data = args[:data] if args.key?(:data) + @message_id = args[:message_id] if args.key?(:message_id) + @publish_time = args[:publish_time] if args.key?(:publish_time) + end + end + + # Request for the `Pull` method. + class PullRequest + include Google::Apis::Core::Hashable + + # The maximum number of messages returned for this request. The Pub/Sub + # system may return fewer than the number specified. + # Corresponds to the JSON property `maxMessages` + # @return [Fixnum] + attr_accessor :max_messages + + # If this is specified as true the system will respond immediately even if + # it is not able to return a message in the `Pull` response. Otherwise the + # system is allowed to wait until at least one message is available rather + # than returning no messages. The client may cancel the request if it does + # not wish to wait any longer for the response. + # Corresponds to the JSON property `returnImmediately` + # @return [Boolean] + attr_accessor :return_immediately + alias_method :return_immediately?, :return_immediately + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_messages = args[:max_messages] if args.key?(:max_messages) + @return_immediately = args[:return_immediately] if args.key?(:return_immediately) + end + end + + # Response for the `Pull` method. + class PullResponse + include Google::Apis::Core::Hashable + + # Received Pub/Sub messages. The Pub/Sub system will return zero messages if + # there are no more available in the backlog. The Pub/Sub system may return + # fewer than the `maxMessages` requested even if there are more messages + # available in the backlog. + # Corresponds to the JSON property `receivedMessages` + # @return [Array] + attr_accessor :received_messages + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @received_messages = args[:received_messages] if args.key?(:received_messages) + end + end + + # Configuration for a push delivery endpoint. + class PushConfig + include Google::Apis::Core::Hashable + + # Endpoint configuration attributes. + # Every endpoint has a set of API supported attributes that can be used to + # control different aspects of the message delivery. + # The currently supported attribute is `x-goog-version`, which you can + # use to change the format of the push message. This attribute + # indicates the version of the data expected by the endpoint. This + # controls the shape of the envelope (i.e. its fields and metadata). + # The endpoint version is based on the version of the Pub/Sub + # API. + # If not present during the `CreateSubscription` call, it will default to + # the version of the API used to make such call. If not present during a + # `ModifyPushConfig` call, its value will not be changed. `GetSubscription` + # calls will always return a valid version, even if the subscription was + # created without this attribute. + # The possible values for this attribute are: + # * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API. + # * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API. + # Corresponds to the JSON property `attributes` + # @return [Hash] + attr_accessor :attributes + + # A URL locating the endpoint to which messages should be pushed. + # For example, a Webhook endpoint might use "https://example.com/push". + # Corresponds to the JSON property `pushEndpoint` + # @return [String] + attr_accessor :push_endpoint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @attributes = args[:attributes] if args.key?(:attributes) + @push_endpoint = args[:push_endpoint] if args.key?(:push_endpoint) + end + end + + # A message and its corresponding acknowledgment ID. + class ReceivedMessage + include Google::Apis::Core::Hashable + + # This ID can be used to acknowledge the received message. + # Corresponds to the JSON property `ackId` + # @return [String] + attr_accessor :ack_id + + # A message data and its attributes. The message payload must not be empty; + # it must contain either a non-empty data field, or at least one attribute. + # Corresponds to the JSON property `message` + # @return [Google::Apis::PubsubV1beta2::PubsubMessage] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_id = args[:ack_id] if args.key?(:ack_id) + @message = args[:message] if args.key?(:message) + end + end + + # Request message for `SetIamPolicy` method. + class SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # 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). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::PubsubV1beta2::Policy] + attr_accessor :policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + end + end + + # A subscription resource. + class Subscription + include Google::Apis::Core::Hashable + + # This value is the maximum time after a subscriber receives a message + # before the subscriber should acknowledge the message. After message + # delivery but before the ack deadline expires and before the message is + # acknowledged, it is an outstanding message and will not be delivered + # again during that time (on a best-effort basis). + # For pull subscriptions, this value is used as the initial value for the ack + # deadline. To override this value for a given message, call + # `ModifyAckDeadline` with the corresponding `ack_id` if using pull. + # The maximum custom deadline you can specify is 600 seconds (10 minutes). + # For push delivery, this value is also used to set the request timeout for + # the call to the push endpoint. + # If the subscriber never acknowledges the message, the Pub/Sub + # system will eventually redeliver the message. + # If this parameter is 0, a default value of 10 seconds is used. + # Corresponds to the JSON property `ackDeadlineSeconds` + # @return [Fixnum] + attr_accessor :ack_deadline_seconds + + # The name of the subscription. It must have the format + # `"projects/`project`/subscriptions/`subscription`"`. ``subscription`` must + # start with a letter, and contain only letters (`[A-Za-z]`), numbers + # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`), + # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters + # in length, and it must not start with `"goog"`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Configuration for a push delivery endpoint. + # Corresponds to the JSON property `pushConfig` + # @return [Google::Apis::PubsubV1beta2::PushConfig] + attr_accessor :push_config + + # The name of the topic from which this subscription is receiving messages. + # The value of this field will be `_deleted-topic_` if the topic has been + # deleted. + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ack_deadline_seconds = args[:ack_deadline_seconds] if args.key?(:ack_deadline_seconds) + @name = args[:name] if args.key?(:name) + @push_config = args[:push_config] if args.key?(:push_config) + @topic = args[:topic] if args.key?(:topic) + end + end + + # Request message for `TestIamPermissions` method. + class TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Response message for `TestIamPermissions` method. + class TestIamPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # A topic resource. + class Topic + include Google::Apis::Core::Hashable + + # The name of the topic. It must have the format + # `"projects/`project`/topics/`topic`"`. ``topic`` must start with a letter, + # and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), + # underscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent + # signs (`%`). It must be between 3 and 255 characters in length, and it + # must not start with `"goog"`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + end + end +end diff --git a/generated/google/apis/pubsub_v1beta2/representations.rb b/generated/google/apis/pubsub_v1beta2/representations.rb new file mode 100644 index 000000000..40f6e2f90 --- /dev/null +++ b/generated/google/apis/pubsub_v1beta2/representations.rb @@ -0,0 +1,324 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PubsubV1beta2 + + class AcknowledgeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListSubscriptionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListTopicSubscriptionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListTopicsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ModifyAckDeadlineRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ModifyPushConfigRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublishRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublishResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PubsubMessage + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PullRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PullResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PushConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReceivedMessage + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Subscription + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Topic + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AcknowledgeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ack_ids, as: 'ackIds' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ListSubscriptionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :subscriptions, as: 'subscriptions', class: Google::Apis::PubsubV1beta2::Subscription, decorator: Google::Apis::PubsubV1beta2::Subscription::Representation + + end + end + + class ListTopicSubscriptionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :subscriptions, as: 'subscriptions' + end + end + + class ListTopicsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :topics, as: 'topics', class: Google::Apis::PubsubV1beta2::Topic, decorator: Google::Apis::PubsubV1beta2::Topic::Representation + + end + end + + class ModifyAckDeadlineRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ack_deadline_seconds, as: 'ackDeadlineSeconds' + property :ack_id, as: 'ackId' + collection :ack_ids, as: 'ackIds' + end + end + + class ModifyPushConfigRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :push_config, as: 'pushConfig', class: Google::Apis::PubsubV1beta2::PushConfig, decorator: Google::Apis::PubsubV1beta2::PushConfig::Representation + + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :bindings, as: 'bindings', class: Google::Apis::PubsubV1beta2::Binding, decorator: Google::Apis::PubsubV1beta2::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :version, as: 'version' + end + end + + class PublishRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :messages, as: 'messages', class: Google::Apis::PubsubV1beta2::PubsubMessage, decorator: Google::Apis::PubsubV1beta2::PubsubMessage::Representation + + end + end + + class PublishResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :message_ids, as: 'messageIds' + end + end + + class PubsubMessage + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :attributes, as: 'attributes' + property :data, :base64 => true, as: 'data' + property :message_id, as: 'messageId' + property :publish_time, as: 'publishTime' + end + end + + class PullRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_messages, as: 'maxMessages' + property :return_immediately, as: 'returnImmediately' + end + end + + class PullResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :received_messages, as: 'receivedMessages', class: Google::Apis::PubsubV1beta2::ReceivedMessage, decorator: Google::Apis::PubsubV1beta2::ReceivedMessage::Representation + + end + end + + class PushConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :attributes, as: 'attributes' + property :push_endpoint, as: 'pushEndpoint' + end + end + + class ReceivedMessage + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ack_id, as: 'ackId' + property :message, as: 'message', class: Google::Apis::PubsubV1beta2::PubsubMessage, decorator: Google::Apis::PubsubV1beta2::PubsubMessage::Representation + + end + end + + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::PubsubV1beta2::Policy, decorator: Google::Apis::PubsubV1beta2::Policy::Representation + + end + end + + class Subscription + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ack_deadline_seconds, as: 'ackDeadlineSeconds' + property :name, as: 'name' + property :push_config, as: 'pushConfig', class: Google::Apis::PubsubV1beta2::PushConfig, decorator: Google::Apis::PubsubV1beta2::PushConfig::Representation + + property :topic, as: 'topic' + end + end + + class TestIamPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestIamPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class Topic + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + end + end +end diff --git a/generated/google/apis/pubsub_v1beta2/service.rb b/generated/google/apis/pubsub_v1beta2/service.rb new file mode 100644 index 000000000..075431d76 --- /dev/null +++ b/generated/google/apis/pubsub_v1beta2/service.rb @@ -0,0 +1,779 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module PubsubV1beta2 + # Google Cloud Pub/Sub API + # + # Provides reliable, many-to-many, asynchronous messaging between applications. + # + # @example + # require 'google/apis/pubsub_v1beta2' + # + # Pubsub = Google::Apis::PubsubV1beta2 # Alias the module + # service = Pubsub::PubsubService.new + # + # @see https://cloud.google.com/pubsub/docs + class PubsubService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://pubsub.googleapis.com/', '') + @batch_path = 'batch' + end + + # Acknowledges the messages associated with the `ack_ids` in the + # `AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages + # from the subscription. + # Acknowledging a message whose ack deadline has expired may succeed, + # but such a message may be redelivered later. Acknowledging a message more + # than once will not result in an error. + # @param [String] subscription + # The subscription whose message is being acknowledged. + # @param [Google::Apis::PubsubV1beta2::AcknowledgeRequest] acknowledge_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def acknowledge_subscription(subscription, acknowledge_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+subscription}:acknowledge', options) + command.request_representation = Google::Apis::PubsubV1beta2::AcknowledgeRequest::Representation + command.request_object = acknowledge_request_object + command.response_representation = Google::Apis::PubsubV1beta2::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta2::Empty + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a subscription to a given topic. + # If the subscription already exists, returns `ALREADY_EXISTS`. + # If the corresponding topic doesn't exist, returns `NOT_FOUND`. + # If the name is not provided in the request, the server will assign a random + # name for this subscription on the same project as the topic. Note that + # for REST API requests, you must specify a name. + # @param [String] name + # The name of the subscription. It must have the format + # `"projects/`project`/subscriptions/`subscription`"`. ``subscription`` must + # start with a letter, and contain only letters (`[A-Za-z]`), numbers + # (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`), + # plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters + # in length, and it must not start with `"goog"`. + # @param [Google::Apis::PubsubV1beta2::Subscription] subscription_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Subscription] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Subscription] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_subscription(name, subscription_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta2/{+name}', options) + command.request_representation = Google::Apis::PubsubV1beta2::Subscription::Representation + command.request_object = subscription_object + command.response_representation = Google::Apis::PubsubV1beta2::Subscription::Representation + command.response_class = Google::Apis::PubsubV1beta2::Subscription + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an existing subscription. All pending messages in the subscription + # are immediately dropped. Calls to `Pull` after deletion will return + # `NOT_FOUND`. After a subscription is deleted, a new one may be created with + # the same name, but the new one has no association with the old + # subscription, or its topic unless the same topic is specified. + # @param [String] subscription + # The subscription to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_subscription(subscription, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta2/{+subscription}', options) + command.response_representation = Google::Apis::PubsubV1beta2::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta2::Empty + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the configuration details of a subscription. + # @param [String] subscription + # The name of the subscription to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Subscription] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Subscription] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_subscription(subscription, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+subscription}', options) + command.response_representation = Google::Apis::PubsubV1beta2::Subscription::Representation + command.response_class = Google::Apis::PubsubV1beta2::Subscription + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. + # Returns an empty policy if the resource exists and does not have a policy + # set. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_subscription_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::PubsubV1beta2::Policy::Representation + command.response_class = Google::Apis::PubsubV1beta2::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists matching subscriptions. + # @param [String] project + # The name of the cloud project that subscriptions belong to. + # @param [Fixnum] page_size + # Maximum number of subscriptions to return. + # @param [String] page_token + # The value returned by the last `ListSubscriptionsResponse`; indicates that + # this is a continuation of a prior `ListSubscriptions` call, and that the + # system should return the next page of data. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::ListSubscriptionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::ListSubscriptionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_subscriptions(project, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+project}/subscriptions', options) + command.response_representation = Google::Apis::PubsubV1beta2::ListSubscriptionsResponse::Representation + command.response_class = Google::Apis::PubsubV1beta2::ListSubscriptionsResponse + command.params['project'] = project unless project.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Modifies the ack deadline for a specific message. This method is useful + # to indicate that more time is needed to process a message by the + # subscriber, or to make the message available for redelivery if the + # processing was interrupted. Note that this does not modify the + # subscription-level `ackDeadlineSeconds` used for subsequent messages. + # @param [String] subscription + # The name of the subscription. + # @param [Google::Apis::PubsubV1beta2::ModifyAckDeadlineRequest] modify_ack_deadline_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def modify_subscription_ack_deadline(subscription, modify_ack_deadline_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+subscription}:modifyAckDeadline', options) + command.request_representation = Google::Apis::PubsubV1beta2::ModifyAckDeadlineRequest::Representation + command.request_object = modify_ack_deadline_request_object + command.response_representation = Google::Apis::PubsubV1beta2::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta2::Empty + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Modifies the `PushConfig` for a specified subscription. + # This may be used to change a push subscription to a pull one (signified by + # an empty `PushConfig`) or vice versa, or change the endpoint URL and other + # attributes of a push subscription. Messages will accumulate for delivery + # continuously through the call regardless of changes to the `PushConfig`. + # @param [String] subscription + # The name of the subscription. + # @param [Google::Apis::PubsubV1beta2::ModifyPushConfigRequest] modify_push_config_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def modify_subscription_push_config(subscription, modify_push_config_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+subscription}:modifyPushConfig', options) + command.request_representation = Google::Apis::PubsubV1beta2::ModifyPushConfigRequest::Representation + command.request_object = modify_push_config_request_object + command.response_representation = Google::Apis::PubsubV1beta2::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta2::Empty + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Pulls messages from the server. Returns an empty list if there are no + # messages available in the backlog. The server may return `UNAVAILABLE` if + # there are too many concurrent pull requests pending for the given + # subscription. + # @param [String] subscription + # The subscription from which messages should be pulled. + # @param [Google::Apis::PubsubV1beta2::PullRequest] pull_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::PullResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::PullResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def pull_subscription(subscription, pull_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+subscription}:pull', options) + command.request_representation = Google::Apis::PubsubV1beta2::PullRequest::Representation + command.request_object = pull_request_object + command.response_representation = Google::Apis::PubsubV1beta2::PullResponse::Representation + command.response_class = Google::Apis::PubsubV1beta2::PullResponse + command.params['subscription'] = subscription unless subscription.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::PubsubV1beta2::SetIamPolicyRequest] set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_subscription_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::PubsubV1beta2::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::PubsubV1beta2::Policy::Representation + command.response_class = Google::Apis::PubsubV1beta2::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::PubsubV1beta2::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_subscription_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::PubsubV1beta2::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::PubsubV1beta2::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::PubsubV1beta2::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates the given topic with the given name. + # @param [String] name + # The name of the topic. It must have the format + # `"projects/`project`/topics/`topic`"`. ``topic`` must start with a letter, + # and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), + # underscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent + # signs (`%`). It must be between 3 and 255 characters in length, and it + # must not start with `"goog"`. + # @param [Google::Apis::PubsubV1beta2::Topic] topic_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Topic] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Topic] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_topic(name, topic_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta2/{+name}', options) + command.request_representation = Google::Apis::PubsubV1beta2::Topic::Representation + command.request_object = topic_object + command.response_representation = Google::Apis::PubsubV1beta2::Topic::Representation + command.response_class = Google::Apis::PubsubV1beta2::Topic + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the topic with the given name. Returns `NOT_FOUND` if the topic + # does not exist. After a topic is deleted, a new topic may be created with + # the same name; this is an entirely new topic with none of the old + # configuration or subscriptions. Existing subscriptions to this topic are + # not deleted, but their `topic` field is set to `_deleted-topic_`. + # @param [String] topic + # Name of the topic to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_topic(topic, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta2/{+topic}', options) + command.response_representation = Google::Apis::PubsubV1beta2::Empty::Representation + command.response_class = Google::Apis::PubsubV1beta2::Empty + command.params['topic'] = topic unless topic.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the configuration of a topic. + # @param [String] topic + # The name of the topic to get. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Topic] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Topic] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_topic(topic, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+topic}', options) + command.response_representation = Google::Apis::PubsubV1beta2::Topic::Representation + command.response_class = Google::Apis::PubsubV1beta2::Topic + command.params['topic'] = topic unless topic.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. + # Returns an empty policy if the resource exists and does not have a policy + # set. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_topic_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::PubsubV1beta2::Policy::Representation + command.response_class = Google::Apis::PubsubV1beta2::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists matching topics. + # @param [String] project + # The name of the cloud project that topics belong to. + # @param [Fixnum] page_size + # Maximum number of topics to return. + # @param [String] page_token + # The value returned by the last `ListTopicsResponse`; indicates that this is + # a continuation of a prior `ListTopics` call, and that the system should + # return the next page of data. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::ListTopicsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::ListTopicsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_topics(project, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+project}/topics', options) + command.response_representation = Google::Apis::PubsubV1beta2::ListTopicsResponse::Representation + command.response_class = Google::Apis::PubsubV1beta2::ListTopicsResponse + command.params['project'] = project unless project.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic + # does not exist. The message payload must not be empty; it must contain + # either a non-empty data field, or at least one attribute. + # @param [String] topic + # The messages in the request will be published on this topic. + # @param [Google::Apis::PubsubV1beta2::PublishRequest] publish_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::PublishResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::PublishResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def publish_topic(topic, publish_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+topic}:publish', options) + command.request_representation = Google::Apis::PubsubV1beta2::PublishRequest::Representation + command.request_object = publish_request_object + command.response_representation = Google::Apis::PubsubV1beta2::PublishResponse::Representation + command.response_class = Google::Apis::PubsubV1beta2::PublishResponse + command.params['topic'] = topic unless topic.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::PubsubV1beta2::SetIamPolicyRequest] set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_topic_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::PubsubV1beta2::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::PubsubV1beta2::Policy::Representation + command.response_class = Google::Apis::PubsubV1beta2::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::PubsubV1beta2::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_topic_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta2/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::PubsubV1beta2::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::PubsubV1beta2::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::PubsubV1beta2::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the name of the subscriptions for this topic. + # @param [String] topic + # The name of the topic that subscriptions are attached to. + # @param [Fixnum] page_size + # Maximum number of subscription names to return. + # @param [String] page_token + # The value returned by the last `ListTopicSubscriptionsResponse`; indicates + # that this is a continuation of a prior `ListTopicSubscriptions` call, and + # that the system should return the next page of data. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::PubsubV1beta2::ListTopicSubscriptionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1beta2::ListTopicSubscriptionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_topic_subscriptions(topic, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta2/{+topic}/subscriptions', options) + command.response_representation = Google::Apis::PubsubV1beta2::ListTopicSubscriptionsResponse::Representation + command.response_class = Google::Apis::PubsubV1beta2::ListTopicSubscriptionsResponse + command.params['topic'] = topic unless topic.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/replicapool_v1beta1.rb b/generated/google/apis/replicapool_v1beta1.rb new file mode 100644 index 000000000..8d3b72181 --- /dev/null +++ b/generated/google/apis/replicapool_v1beta1.rb @@ -0,0 +1,50 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/replicapool_v1beta1/service.rb' +require 'google/apis/replicapool_v1beta1/classes.rb' +require 'google/apis/replicapool_v1beta1/representations.rb' + +module Google + module Apis + # Replica Pool API + # + # The Replica Pool API allows users to declaratively provision and manage groups + # of Google Compute Engine instances based on a common template. + # + # @see https://developers.google.com/compute/docs/replica-pool/ + module ReplicapoolV1beta1 + VERSION = 'V1beta1' + REVISION = '20160512' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + + # View and manage your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN = 'https://www.googleapis.com/auth/ndev.cloudman' + + # View your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN_READONLY = 'https://www.googleapis.com/auth/ndev.cloudman.readonly' + + # View and manage replica pools + AUTH_REPLICAPOOL = 'https://www.googleapis.com/auth/replicapool' + + # View replica pools + AUTH_REPLICAPOOL_READONLY = 'https://www.googleapis.com/auth/replicapool.readonly' + end + end +end diff --git a/generated/google/apis/replicapool_v1beta1/classes.rb b/generated/google/apis/replicapool_v1beta1/classes.rb new file mode 100644 index 000000000..8fa5440f6 --- /dev/null +++ b/generated/google/apis/replicapool_v1beta1/classes.rb @@ -0,0 +1,918 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ReplicapoolV1beta1 + + # A Compute Engine network accessConfig. Identical to the accessConfig on + # corresponding Compute Engine resource. + class AccessConfig + include Google::Apis::Core::Hashable + + # Name of this access configuration. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # An external IP address associated with this instance. + # Corresponds to the JSON property `natIp` + # @return [String] + attr_accessor :nat_ip + + # Type of this access configuration file. Currently only ONE_TO_ONE_NAT is + # supported. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @nat_ip = args[:nat_ip] if args.key?(:nat_ip) + @type = args[:type] if args.key?(:type) + end + end + + # An action that gets executed during initialization of the replicas. + class Action + include Google::Apis::Core::Hashable + + # A list of commands to run, one per line. If any command fails, the whole + # action is considered a failure and no further actions are run. This also marks + # the virtual machine or replica as a failure. + # Corresponds to the JSON property `commands` + # @return [Array] + attr_accessor :commands + + # A list of environment variables to use for the commands in this action. + # Corresponds to the JSON property `envVariables` + # @return [Array] + attr_accessor :env_variables + + # If an action's commands on a particular replica do not finish in the specified + # timeoutMilliSeconds, the replica is considered to be in a FAILING state. No + # efforts are made to stop any processes that were spawned or created as the + # result of running the action's commands. The default is the max allowed value, + # 1 hour (i.e. 3600000 milliseconds). + # Corresponds to the JSON property `timeoutMilliSeconds` + # @return [Fixnum] + attr_accessor :timeout_milli_seconds + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @commands = args[:commands] if args.key?(:commands) + @env_variables = args[:env_variables] if args.key?(:env_variables) + @timeout_milli_seconds = args[:timeout_milli_seconds] if args.key?(:timeout_milli_seconds) + end + end + + # Specifies how to attach a disk to a Replica. + class DiskAttachment + include Google::Apis::Core::Hashable + + # The device name of this disk. + # Corresponds to the JSON property `deviceName` + # @return [String] + attr_accessor :device_name + + # A zero-based index to assign to this disk, where 0 is reserved for the boot + # disk. If not specified, this is assigned by the server. + # Corresponds to the JSON property `index` + # @return [Fixnum] + attr_accessor :index + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @device_name = args[:device_name] if args.key?(:device_name) + @index = args[:index] if args.key?(:index) + end + end + + # An environment variable to set for an action. + class EnvVariable + include Google::Apis::Core::Hashable + + # Deprecated, do not use. + # Corresponds to the JSON property `hidden` + # @return [Boolean] + attr_accessor :hidden + alias_method :hidden?, :hidden + + # The name of the environment variable. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The value of the variable. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hidden = args[:hidden] if args.key?(:hidden) + @name = args[:name] if args.key?(:name) + @value = args[:value] if args.key?(:value) + end + end + + # A pre-existing persistent disk that will be attached to every Replica in the + # Pool in READ_ONLY mode. + class ExistingDisk + include Google::Apis::Core::Hashable + + # Specifies how to attach a disk to a Replica. + # Corresponds to the JSON property `attachment` + # @return [Google::Apis::ReplicapoolV1beta1::DiskAttachment] + attr_accessor :attachment + + # The name of the Persistent Disk resource. The Persistent Disk resource must be + # in the same zone as the Pool. + # Corresponds to the JSON property `source` + # @return [String] + attr_accessor :source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @attachment = args[:attachment] if args.key?(:attachment) + @source = args[:source] if args.key?(:source) + end + end + + # + class HealthCheck + include Google::Apis::Core::Hashable + + # How often (in seconds) to make HTTP requests for this healthcheck. The default + # value is 5 seconds. + # Corresponds to the JSON property `checkIntervalSec` + # @return [Fixnum] + attr_accessor :check_interval_sec + + # The description for this health check. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The number of consecutive health check requests that need to succeed before + # the replica is considered healthy again. The default value is 2. + # Corresponds to the JSON property `healthyThreshold` + # @return [Fixnum] + attr_accessor :healthy_threshold + + # The value of the host header in the HTTP health check request. If left empty ( + # default value), the localhost IP 127.0.0.1 will be used. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # The name of this health check. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The localhost request path to send this health check, in the format /path/to/ + # use. For example, /healthcheck. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + # The TCP port for the health check requests. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # How long (in seconds) to wait before a timeout failure for this healthcheck. + # The default value is 5 seconds. + # Corresponds to the JSON property `timeoutSec` + # @return [Fixnum] + attr_accessor :timeout_sec + + # The number of consecutive health check requests that need to fail in order to + # consider the replica unhealthy. The default value is 2. + # Corresponds to the JSON property `unhealthyThreshold` + # @return [Fixnum] + attr_accessor :unhealthy_threshold + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @check_interval_sec = args[:check_interval_sec] if args.key?(:check_interval_sec) + @description = args[:description] if args.key?(:description) + @healthy_threshold = args[:healthy_threshold] if args.key?(:healthy_threshold) + @host = args[:host] if args.key?(:host) + @name = args[:name] if args.key?(:name) + @path = args[:path] if args.key?(:path) + @port = args[:port] if args.key?(:port) + @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec) + @unhealthy_threshold = args[:unhealthy_threshold] if args.key?(:unhealthy_threshold) + end + end + + # A label to apply to this replica pool. + class Label + include Google::Apis::Core::Hashable + + # The key for this label. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # The value of this label. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A Compute Engine metadata entry. Identical to the metadata on the + # corresponding Compute Engine resource. + class Metadata + include Google::Apis::Core::Hashable + + # The fingerprint of the metadata. Required for updating the metadata entries + # for this instance. + # Corresponds to the JSON property `fingerPrint` + # @return [String] + attr_accessor :finger_print + + # A list of metadata items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @finger_print = args[:finger_print] if args.key?(:finger_print) + @items = args[:items] if args.key?(:items) + end + end + + # A Compute Engine metadata item, defined as a key:value pair. Identical to the + # metadata on the corresponding Compute Engine resource. + class MetadataItem + include Google::Apis::Core::Hashable + + # A metadata key. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # A metadata value. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # A Compute Engine NetworkInterface resource. Identical to the NetworkInterface + # on the corresponding Compute Engine resource. + class NetworkInterface + include Google::Apis::Core::Hashable + + # An array of configurations for this interface. This specifies how this + # interface is configured to interact with other network services. + # Corresponds to the JSON property `accessConfigs` + # @return [Array] + attr_accessor :access_configs + + # Name the Network resource to which this interface applies. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # An optional IPV4 internal network address to assign to the instance for this + # network interface. + # Corresponds to the JSON property `networkIp` + # @return [String] + attr_accessor :network_ip + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_configs = args[:access_configs] if args.key?(:access_configs) + @network = args[:network] if args.key?(:network) + @network_ip = args[:network_ip] if args.key?(:network_ip) + end + end + + # A Persistent Disk resource that will be created and attached to each Replica + # in the Pool. Each Replica will have a unique persistent disk that is created + # and attached to that Replica in READ_WRITE mode. + class NewDisk + include Google::Apis::Core::Hashable + + # Specifies how to attach a disk to a Replica. + # Corresponds to the JSON property `attachment` + # @return [Google::Apis::ReplicapoolV1beta1::DiskAttachment] + attr_accessor :attachment + + # If true, then this disk will be deleted when the instance is deleted. The + # default value is true. + # Corresponds to the JSON property `autoDelete` + # @return [Boolean] + attr_accessor :auto_delete + alias_method :auto_delete?, :auto_delete + + # If true, indicates that this is the root persistent disk. + # Corresponds to the JSON property `boot` + # @return [Boolean] + attr_accessor :boot + alias_method :boot?, :boot + + # Initialization parameters for creating a new disk. + # Corresponds to the JSON property `initializeParams` + # @return [Google::Apis::ReplicapoolV1beta1::NewDiskInitializeParams] + attr_accessor :initialize_params + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @attachment = args[:attachment] if args.key?(:attachment) + @auto_delete = args[:auto_delete] if args.key?(:auto_delete) + @boot = args[:boot] if args.key?(:boot) + @initialize_params = args[:initialize_params] if args.key?(:initialize_params) + end + end + + # Initialization parameters for creating a new disk. + class NewDiskInitializeParams + include Google::Apis::Core::Hashable + + # The size of the created disk in gigabytes. + # Corresponds to the JSON property `diskSizeGb` + # @return [Fixnum] + attr_accessor :disk_size_gb + + # Name of the disk type resource describing which disk type to use to create the + # disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard' + # Corresponds to the JSON property `diskType` + # @return [String] + attr_accessor :disk_type + + # The name or fully-qualified URL of a source image to use to create this disk. + # If you provide a name of the source image, Replica Pool will look for an image + # with that name in your project. If you are specifying an image provided by + # Compute Engine, you will need to provide the full URL with the correct project, + # such as: + # http://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/ + # debian-wheezy-7-vYYYYMMDD + # Corresponds to the JSON property `sourceImage` + # @return [String] + attr_accessor :source_image + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) + @disk_type = args[:disk_type] if args.key?(:disk_type) + @source_image = args[:source_image] if args.key?(:source_image) + end + end + + # + class Pool + include Google::Apis::Core::Hashable + + # Whether replicas in this pool should be restarted if they experience a failure. + # The default value is true. + # Corresponds to the JSON property `autoRestart` + # @return [Boolean] + attr_accessor :auto_restart + alias_method :auto_restart?, :auto_restart + + # The base instance name to use for the replicas in this pool. This must match + # the regex [a-z]([-a-z0-9]*[a-z0-9])?. If specified, the instances in this + # replica pool will be named in the format -. The + # postfix will be a four character alphanumeric identifier generated by the + # service. + # If this is not specified by the user, a random base instance name is generated + # by the service. + # Corresponds to the JSON property `baseInstanceName` + # @return [String] + attr_accessor :base_instance_name + + # [Output Only] The current number of replicas in the pool. + # Corresponds to the JSON property `currentNumReplicas` + # @return [Fixnum] + attr_accessor :current_num_replicas + + # An optional description of the replica pool. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Deprecated. Please use template[].healthChecks instead. + # Corresponds to the JSON property `healthChecks` + # @return [Array] + attr_accessor :health_checks + + # The initial number of replicas this pool should have. You must provide a value + # greater than or equal to 0. + # Corresponds to the JSON property `initialNumReplicas` + # @return [Fixnum] + attr_accessor :initial_num_replicas + + # A list of labels to attach to this replica pool and all created virtual + # machines in this replica pool. + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # The name of the replica pool. Must follow the regex [a-z]([-a-z0-9]*[a-z0-9])? + # and be 1-28 characters long. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Deprecated! Use initial_num_replicas instead. + # Corresponds to the JSON property `numReplicas` + # @return [Fixnum] + attr_accessor :num_replicas + + # The list of resource views that should be updated with all the replicas that + # are managed by this pool. + # Corresponds to the JSON property `resourceViews` + # @return [Array] + attr_accessor :resource_views + + # [Output Only] A self-link to the replica pool. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Deprecated, please use target_pools instead. + # Corresponds to the JSON property `targetPool` + # @return [String] + attr_accessor :target_pool + + # A list of target pools to update with the replicas that are managed by this + # pool. If specified, the replicas in this replica pool will be added to the + # specified target pools for load balancing purposes. The replica pool must live + # in the same region as the specified target pools. These values must be the + # target pool resource names, and not fully qualified URLs. + # Corresponds to the JSON property `targetPools` + # @return [Array] + attr_accessor :target_pools + + # The template used for creating replicas in the pool. + # Corresponds to the JSON property `template` + # @return [Google::Apis::ReplicapoolV1beta1::Template] + attr_accessor :template + + # Deprecated! Do not set. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auto_restart = args[:auto_restart] if args.key?(:auto_restart) + @base_instance_name = args[:base_instance_name] if args.key?(:base_instance_name) + @current_num_replicas = args[:current_num_replicas] if args.key?(:current_num_replicas) + @description = args[:description] if args.key?(:description) + @health_checks = args[:health_checks] if args.key?(:health_checks) + @initial_num_replicas = args[:initial_num_replicas] if args.key?(:initial_num_replicas) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @num_replicas = args[:num_replicas] if args.key?(:num_replicas) + @resource_views = args[:resource_views] if args.key?(:resource_views) + @self_link = args[:self_link] if args.key?(:self_link) + @target_pool = args[:target_pool] if args.key?(:target_pool) + @target_pools = args[:target_pools] if args.key?(:target_pools) + @template = args[:template] if args.key?(:template) + @type = args[:type] if args.key?(:type) + end + end + + # + class PoolsDeleteRequest + include Google::Apis::Core::Hashable + + # If there are instances you would like to keep, you can specify them here. + # These instances won't be deleted, but the associated replica objects will be + # removed. + # Corresponds to the JSON property `abandonInstances` + # @return [Array] + attr_accessor :abandon_instances + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @abandon_instances = args[:abandon_instances] if args.key?(:abandon_instances) + end + end + + # + class PoolsListResponse + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resources = args[:resources] if args.key?(:resources) + end + end + + # An individual Replica within a Pool. Replicas are automatically created by the + # replica pool, using the template provided by the user. You cannot directly + # create replicas. + class Replica + include Google::Apis::Core::Hashable + + # [Output Only] The name of the Replica object. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Output Only] The self-link of the Replica. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The current status of a Replica. + # Corresponds to the JSON property `status` + # @return [Google::Apis::ReplicapoolV1beta1::ReplicaStatus] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @self_link = args[:self_link] if args.key?(:self_link) + @status = args[:status] if args.key?(:status) + end + end + + # The current status of a Replica. + class ReplicaStatus + include Google::Apis::Core::Hashable + + # [Output Only] Human-readable details about the current state of the replica + # Corresponds to the JSON property `details` + # @return [String] + attr_accessor :details + + # [Output Only] The state of the Replica. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # [Output Only] The template used to build the replica. + # Corresponds to the JSON property `templateVersion` + # @return [String] + attr_accessor :template_version + + # [Output Only] Link to the virtual machine that this Replica represents. + # Corresponds to the JSON property `vmLink` + # @return [String] + attr_accessor :vm_link + + # [Output Only] The time that this Replica got to the RUNNING state, in RFC 3339 + # format. If the start time is unknown, UNKNOWN is returned. + # Corresponds to the JSON property `vmStartTime` + # @return [String] + attr_accessor :vm_start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @state = args[:state] if args.key?(:state) + @template_version = args[:template_version] if args.key?(:template_version) + @vm_link = args[:vm_link] if args.key?(:vm_link) + @vm_start_time = args[:vm_start_time] if args.key?(:vm_start_time) + end + end + + # + class ReplicasDeleteRequest + include Google::Apis::Core::Hashable + + # Whether the instance resource represented by this replica should be deleted or + # abandoned. If abandoned, the replica will be deleted but the virtual machine + # instance will remain. By default, this is set to false and the instance will + # be deleted along with the replica. + # Corresponds to the JSON property `abandonInstance` + # @return [Boolean] + attr_accessor :abandon_instance + alias_method :abandon_instance?, :abandon_instance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @abandon_instance = args[:abandon_instance] if args.key?(:abandon_instance) + end + end + + # + class ReplicasListResponse + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resources = args[:resources] if args.key?(:resources) + end + end + + # A Compute Engine service account, identical to the Compute Engine resource. + class ServiceAccount + include Google::Apis::Core::Hashable + + # The service account email address, for example: 123845678986@project. + # gserviceaccount.com + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The list of OAuth2 scopes to obtain for the service account, for example: + # https://www.googleapis.com/auth/devstorage.full_control + # Corresponds to the JSON property `scopes` + # @return [Array] + attr_accessor :scopes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @email = args[:email] if args.key?(:email) + @scopes = args[:scopes] if args.key?(:scopes) + end + end + + # A Compute Engine Instance tag, identical to the tags on the corresponding + # Compute Engine Instance resource. + class Tag + include Google::Apis::Core::Hashable + + # The fingerprint of the tag. Required for updating the list of tags. + # Corresponds to the JSON property `fingerPrint` + # @return [String] + attr_accessor :finger_print + + # Items contained in this tag. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @finger_print = args[:finger_print] if args.key?(:finger_print) + @items = args[:items] if args.key?(:items) + end + end + + # The template used for creating replicas in the pool. + class Template + include Google::Apis::Core::Hashable + + # An action that gets executed during initialization of the replicas. + # Corresponds to the JSON property `action` + # @return [Google::Apis::ReplicapoolV1beta1::Action] + attr_accessor :action + + # A list of HTTP Health Checks to configure for this replica pool and all + # virtual machines in this replica pool. + # Corresponds to the JSON property `healthChecks` + # @return [Array] + attr_accessor :health_checks + + # A free-form string describing the version of this template. You can provide + # any versioning string you would like. For example, version1 or template-v1. + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + # Parameters for creating a Compute Engine Instance resource. Most fields are + # identical to the corresponding Compute Engine resource. + # Corresponds to the JSON property `vmParams` + # @return [Google::Apis::ReplicapoolV1beta1::VmParams] + attr_accessor :vm_params + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @health_checks = args[:health_checks] if args.key?(:health_checks) + @version = args[:version] if args.key?(:version) + @vm_params = args[:vm_params] if args.key?(:vm_params) + end + end + + # Parameters for creating a Compute Engine Instance resource. Most fields are + # identical to the corresponding Compute Engine resource. + class VmParams + include Google::Apis::Core::Hashable + + # Deprecated. Please use baseInstanceName instead. + # Corresponds to the JSON property `baseInstanceName` + # @return [String] + attr_accessor :base_instance_name + + # Enables IP Forwarding, which allows this instance to receive packets destined + # for a different IP address, and send packets with a different source IP. See + # IP Forwarding for more information. + # Corresponds to the JSON property `canIpForward` + # @return [Boolean] + attr_accessor :can_ip_forward + alias_method :can_ip_forward?, :can_ip_forward + + # An optional textual description of the instance. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # A list of existing Persistent Disk resources to attach to each replica in the + # pool. Each disk will be attached in read-only mode to every replica. + # Corresponds to the JSON property `disksToAttach` + # @return [Array] + attr_accessor :disks_to_attach + + # A list of Disk resources to create and attach to each Replica in the Pool. + # Currently, you can only define one disk and it must be a root persistent disk. + # Note that Replica Pool will create a root persistent disk for each replica. + # Corresponds to the JSON property `disksToCreate` + # @return [Array] + attr_accessor :disks_to_create + + # The machine type for this instance. The resource name (e.g. n1-standard-1). + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + # A Compute Engine metadata entry. Identical to the metadata on the + # corresponding Compute Engine resource. + # Corresponds to the JSON property `metadata` + # @return [Google::Apis::ReplicapoolV1beta1::Metadata] + attr_accessor :metadata + + # A list of network interfaces for the instance. Currently only one interface is + # supported by Google Compute Engine, ONE_TO_ONE_NAT. + # Corresponds to the JSON property `networkInterfaces` + # @return [Array] + attr_accessor :network_interfaces + + # + # Corresponds to the JSON property `onHostMaintenance` + # @return [String] + attr_accessor :on_host_maintenance + + # A list of Service Accounts to enable for this instance. + # Corresponds to the JSON property `serviceAccounts` + # @return [Array] + attr_accessor :service_accounts + + # A Compute Engine Instance tag, identical to the tags on the corresponding + # Compute Engine Instance resource. + # Corresponds to the JSON property `tags` + # @return [Google::Apis::ReplicapoolV1beta1::Tag] + attr_accessor :tags + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @base_instance_name = args[:base_instance_name] if args.key?(:base_instance_name) + @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward) + @description = args[:description] if args.key?(:description) + @disks_to_attach = args[:disks_to_attach] if args.key?(:disks_to_attach) + @disks_to_create = args[:disks_to_create] if args.key?(:disks_to_create) + @machine_type = args[:machine_type] if args.key?(:machine_type) + @metadata = args[:metadata] if args.key?(:metadata) + @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces) + @on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance) + @service_accounts = args[:service_accounts] if args.key?(:service_accounts) + @tags = args[:tags] if args.key?(:tags) + end + end + end + end +end diff --git a/generated/google/apis/replicapool_v1beta1/representations.rb b/generated/google/apis/replicapool_v1beta1/representations.rb new file mode 100644 index 000000000..af277ebdc --- /dev/null +++ b/generated/google/apis/replicapool_v1beta1/representations.rb @@ -0,0 +1,409 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ReplicapoolV1beta1 + + class AccessConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Action + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DiskAttachment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EnvVariable + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ExistingDisk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HealthCheck + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Label + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Metadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MetadataItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkInterface + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NewDisk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NewDiskInitializeParams + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Pool + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PoolsDeleteRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PoolsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Replica + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReplicaStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReplicasDeleteRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReplicasListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ServiceAccount + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Tag + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Template + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class VmParams + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AccessConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :nat_ip, as: 'natIp' + property :type, as: 'type' + end + end + + class Action + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :commands, as: 'commands' + collection :env_variables, as: 'envVariables', class: Google::Apis::ReplicapoolV1beta1::EnvVariable, decorator: Google::Apis::ReplicapoolV1beta1::EnvVariable::Representation + + property :timeout_milli_seconds, as: 'timeoutMilliSeconds' + end + end + + class DiskAttachment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :device_name, as: 'deviceName' + property :index, as: 'index' + end + end + + class EnvVariable + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hidden, as: 'hidden' + property :name, as: 'name' + property :value, as: 'value' + end + end + + class ExistingDisk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :attachment, as: 'attachment', class: Google::Apis::ReplicapoolV1beta1::DiskAttachment, decorator: Google::Apis::ReplicapoolV1beta1::DiskAttachment::Representation + + property :source, as: 'source' + end + end + + class HealthCheck + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :check_interval_sec, as: 'checkIntervalSec' + property :description, as: 'description' + property :healthy_threshold, as: 'healthyThreshold' + property :host, as: 'host' + property :name, as: 'name' + property :path, as: 'path' + property :port, as: 'port' + property :timeout_sec, as: 'timeoutSec' + property :unhealthy_threshold, as: 'unhealthyThreshold' + end + end + + class Label + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class Metadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :finger_print, as: 'fingerPrint' + collection :items, as: 'items', class: Google::Apis::ReplicapoolV1beta1::MetadataItem, decorator: Google::Apis::ReplicapoolV1beta1::MetadataItem::Representation + + end + end + + class MetadataItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class NetworkInterface + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :access_configs, as: 'accessConfigs', class: Google::Apis::ReplicapoolV1beta1::AccessConfig, decorator: Google::Apis::ReplicapoolV1beta1::AccessConfig::Representation + + property :network, as: 'network' + property :network_ip, as: 'networkIp' + end + end + + class NewDisk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :attachment, as: 'attachment', class: Google::Apis::ReplicapoolV1beta1::DiskAttachment, decorator: Google::Apis::ReplicapoolV1beta1::DiskAttachment::Representation + + property :auto_delete, as: 'autoDelete' + property :boot, as: 'boot' + property :initialize_params, as: 'initializeParams', class: Google::Apis::ReplicapoolV1beta1::NewDiskInitializeParams, decorator: Google::Apis::ReplicapoolV1beta1::NewDiskInitializeParams::Representation + + end + end + + class NewDiskInitializeParams + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disk_size_gb, :numeric_string => true, as: 'diskSizeGb' + property :disk_type, as: 'diskType' + property :source_image, as: 'sourceImage' + end + end + + class Pool + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :auto_restart, as: 'autoRestart' + property :base_instance_name, as: 'baseInstanceName' + property :current_num_replicas, as: 'currentNumReplicas' + property :description, as: 'description' + collection :health_checks, as: 'healthChecks', class: Google::Apis::ReplicapoolV1beta1::HealthCheck, decorator: Google::Apis::ReplicapoolV1beta1::HealthCheck::Representation + + property :initial_num_replicas, as: 'initialNumReplicas' + collection :labels, as: 'labels', class: Google::Apis::ReplicapoolV1beta1::Label, decorator: Google::Apis::ReplicapoolV1beta1::Label::Representation + + property :name, as: 'name' + property :num_replicas, as: 'numReplicas' + collection :resource_views, as: 'resourceViews' + property :self_link, as: 'selfLink' + property :target_pool, as: 'targetPool' + collection :target_pools, as: 'targetPools' + property :template, as: 'template', class: Google::Apis::ReplicapoolV1beta1::Template, decorator: Google::Apis::ReplicapoolV1beta1::Template::Representation + + property :type, as: 'type' + end + end + + class PoolsDeleteRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :abandon_instances, as: 'abandonInstances' + end + end + + class PoolsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resources, as: 'resources', class: Google::Apis::ReplicapoolV1beta1::Pool, decorator: Google::Apis::ReplicapoolV1beta1::Pool::Representation + + end + end + + class Replica + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :self_link, as: 'selfLink' + property :status, as: 'status', class: Google::Apis::ReplicapoolV1beta1::ReplicaStatus, decorator: Google::Apis::ReplicapoolV1beta1::ReplicaStatus::Representation + + end + end + + class ReplicaStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :details, as: 'details' + property :state, as: 'state' + property :template_version, as: 'templateVersion' + property :vm_link, as: 'vmLink' + property :vm_start_time, as: 'vmStartTime' + end + end + + class ReplicasDeleteRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :abandon_instance, as: 'abandonInstance' + end + end + + class ReplicasListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resources, as: 'resources', class: Google::Apis::ReplicapoolV1beta1::Replica, decorator: Google::Apis::ReplicapoolV1beta1::Replica::Representation + + end + end + + class ServiceAccount + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :email, as: 'email' + collection :scopes, as: 'scopes' + end + end + + class Tag + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :finger_print, as: 'fingerPrint' + collection :items, as: 'items' + end + end + + class Template + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action', class: Google::Apis::ReplicapoolV1beta1::Action, decorator: Google::Apis::ReplicapoolV1beta1::Action::Representation + + collection :health_checks, as: 'healthChecks', class: Google::Apis::ReplicapoolV1beta1::HealthCheck, decorator: Google::Apis::ReplicapoolV1beta1::HealthCheck::Representation + + property :version, as: 'version' + property :vm_params, as: 'vmParams', class: Google::Apis::ReplicapoolV1beta1::VmParams, decorator: Google::Apis::ReplicapoolV1beta1::VmParams::Representation + + end + end + + class VmParams + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :base_instance_name, as: 'baseInstanceName' + property :can_ip_forward, as: 'canIpForward' + property :description, as: 'description' + collection :disks_to_attach, as: 'disksToAttach', class: Google::Apis::ReplicapoolV1beta1::ExistingDisk, decorator: Google::Apis::ReplicapoolV1beta1::ExistingDisk::Representation + + collection :disks_to_create, as: 'disksToCreate', class: Google::Apis::ReplicapoolV1beta1::NewDisk, decorator: Google::Apis::ReplicapoolV1beta1::NewDisk::Representation + + property :machine_type, as: 'machineType' + property :metadata, as: 'metadata', class: Google::Apis::ReplicapoolV1beta1::Metadata, decorator: Google::Apis::ReplicapoolV1beta1::Metadata::Representation + + collection :network_interfaces, as: 'networkInterfaces', class: Google::Apis::ReplicapoolV1beta1::NetworkInterface, decorator: Google::Apis::ReplicapoolV1beta1::NetworkInterface::Representation + + property :on_host_maintenance, as: 'onHostMaintenance' + collection :service_accounts, as: 'serviceAccounts', class: Google::Apis::ReplicapoolV1beta1::ServiceAccount, decorator: Google::Apis::ReplicapoolV1beta1::ServiceAccount::Representation + + property :tags, as: 'tags', class: Google::Apis::ReplicapoolV1beta1::Tag, decorator: Google::Apis::ReplicapoolV1beta1::Tag::Representation + + end + end + end + end +end diff --git a/generated/google/apis/replicapool_v1beta1/service.rb b/generated/google/apis/replicapool_v1beta1/service.rb new file mode 100644 index 000000000..76f6b9e4d --- /dev/null +++ b/generated/google/apis/replicapool_v1beta1/service.rb @@ -0,0 +1,511 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ReplicapoolV1beta1 + # Replica Pool API + # + # The Replica Pool API allows users to declaratively provision and manage groups + # of Google Compute Engine instances based on a common template. + # + # @example + # require 'google/apis/replicapool_v1beta1' + # + # Replicapool = Google::Apis::ReplicapoolV1beta1 # Alias the module + # service = Replicapool::ReplicapoolService.new + # + # @see https://developers.google.com/compute/docs/replica-pool/ + class ReplicapoolService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'replicapool/v1beta1/projects/') + @batch_path = 'batch' + end + + # Deletes a replica pool. + # @param [String] project_name + # The project ID for this replica pool. + # @param [String] zone + # The zone for this replica pool. + # @param [String] pool_name + # The name of the replica pool for this request. + # @param [Google::Apis::ReplicapoolV1beta1::PoolsDeleteRequest] pools_delete_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_pool(project_name, zone, pool_name, pools_delete_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/pools/{poolName}', options) + command.request_representation = Google::Apis::ReplicapoolV1beta1::PoolsDeleteRequest::Representation + command.request_object = pools_delete_request_object + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a single replica pool. + # @param [String] project_name + # The project ID for this replica pool. + # @param [String] zone + # The zone for this replica pool. + # @param [String] pool_name + # The name of the replica pool for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::Pool] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::Pool] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_pool(project_name, zone, pool_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/zones/{zone}/pools/{poolName}', options) + command.response_representation = Google::Apis::ReplicapoolV1beta1::Pool::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::Pool + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Inserts a new replica pool. + # @param [String] project_name + # The project ID for this replica pool. + # @param [String] zone + # The zone for this replica pool. + # @param [Google::Apis::ReplicapoolV1beta1::Pool] pool_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::Pool] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::Pool] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_pool(project_name, zone, pool_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/pools', options) + command.request_representation = Google::Apis::ReplicapoolV1beta1::Pool::Representation + command.request_object = pool_object + command.response_representation = Google::Apis::ReplicapoolV1beta1::Pool::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::Pool + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List all replica pools. + # @param [String] project_name + # The project ID for this request. + # @param [String] zone + # The zone for this replica pool. + # @param [Fixnum] max_results + # Maximum count of results to be returned. Acceptable values are 0 to 100, + # inclusive. (Default: 50) + # @param [String] page_token + # Set this to the nextPageToken value returned by a previous list request to + # obtain the next page of results from the previous list request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::PoolsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::PoolsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_pools(project_name, zone, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/zones/{zone}/pools', options) + command.response_representation = Google::Apis::ReplicapoolV1beta1::PoolsListResponse::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::PoolsListResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Resize a pool. This is an asynchronous operation, and multiple overlapping + # resize requests can be made. Replica Pools will use the information from the + # last resize request. + # @param [String] project_name + # The project ID for this replica pool. + # @param [String] zone + # The zone for this replica pool. + # @param [String] pool_name + # The name of the replica pool for this request. + # @param [Fixnum] num_replicas + # The desired number of replicas to resize to. If this number is larger than the + # existing number of replicas, new replicas will be added. If the number is + # smaller, then existing replicas will be deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::Pool] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::Pool] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def resize_pool(project_name, zone, pool_name, num_replicas: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/pools/{poolName}/resize', options) + command.response_representation = Google::Apis::ReplicapoolV1beta1::Pool::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::Pool + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.query['numReplicas'] = num_replicas unless num_replicas.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Update the template used by the pool. + # @param [String] project_name + # The project ID for this replica pool. + # @param [String] zone + # The zone for this replica pool. + # @param [String] pool_name + # The name of the replica pool for this request. + # @param [Google::Apis::ReplicapoolV1beta1::Template] template_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def updatetemplate_pool(project_name, zone, pool_name, template_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/pools/{poolName}/updateTemplate', options) + command.request_representation = Google::Apis::ReplicapoolV1beta1::Template::Representation + command.request_object = template_object + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a replica from the pool. + # @param [String] project_name + # The project ID for this request. + # @param [String] zone + # The zone where the replica lives. + # @param [String] pool_name + # The replica pool name for this request. + # @param [String] replica_name + # The name of the replica for this request. + # @param [Google::Apis::ReplicapoolV1beta1::ReplicasDeleteRequest] replicas_delete_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::Replica] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::Replica] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_replica(project_name, zone, pool_name, replica_name, replicas_delete_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}', options) + command.request_representation = Google::Apis::ReplicapoolV1beta1::ReplicasDeleteRequest::Representation + command.request_object = replicas_delete_request_object + command.response_representation = Google::Apis::ReplicapoolV1beta1::Replica::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::Replica + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.params['replicaName'] = replica_name unless replica_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a specific replica. + # @param [String] project_name + # The project ID for this request. + # @param [String] zone + # The zone where the replica lives. + # @param [String] pool_name + # The replica pool name for this request. + # @param [String] replica_name + # The name of the replica for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::Replica] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::Replica] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_replica(project_name, zone, pool_name, replica_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}', options) + command.response_representation = Google::Apis::ReplicapoolV1beta1::Replica::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::Replica + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.params['replicaName'] = replica_name unless replica_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all replicas in a pool. + # @param [String] project_name + # The project ID for this request. + # @param [String] zone + # The zone where the replica pool lives. + # @param [String] pool_name + # The replica pool name for this request. + # @param [Fixnum] max_results + # Maximum count of results to be returned. Acceptable values are 0 to 100, + # inclusive. (Default: 50) + # @param [String] page_token + # Set this to the nextPageToken value returned by a previous list request to + # obtain the next page of results from the previous list request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::ReplicasListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::ReplicasListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_replicas(project_name, zone, pool_name, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/zones/{zone}/pools/{poolName}/replicas', options) + command.response_representation = Google::Apis::ReplicapoolV1beta1::ReplicasListResponse::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::ReplicasListResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Restarts a replica in a pool. + # @param [String] project_name + # The project ID for this request. + # @param [String] zone + # The zone where the replica lives. + # @param [String] pool_name + # The replica pool name for this request. + # @param [String] replica_name + # The name of the replica for this request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ReplicapoolV1beta1::Replica] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ReplicapoolV1beta1::Replica] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def restart_replica(project_name, zone, pool_name, replica_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/pools/{poolName}/replicas/{replicaName}/restart', options) + command.response_representation = Google::Apis::ReplicapoolV1beta1::Replica::Representation + command.response_class = Google::Apis::ReplicapoolV1beta1::Replica + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['poolName'] = pool_name unless pool_name.nil? + command.params['replicaName'] = replica_name unless replica_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/resourceviews_v1beta1.rb b/generated/google/apis/resourceviews_v1beta1.rb new file mode 100644 index 000000000..dbff2707a --- /dev/null +++ b/generated/google/apis/resourceviews_v1beta1.rb @@ -0,0 +1,50 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/resourceviews_v1beta1/service.rb' +require 'google/apis/resourceviews_v1beta1/classes.rb' +require 'google/apis/resourceviews_v1beta1/representations.rb' + +module Google + module Apis + # Resource Views API + # + # The Resource View API allows users to create and manage logical sets of Google + # Compute Engine instances. + # + # @see https://developers.google.com/compute/ + module ResourceviewsV1beta1 + VERSION = 'V1beta1' + REVISION = '20160512' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + + # View and manage your Google Compute Engine resources + AUTH_COMPUTE = 'https://www.googleapis.com/auth/compute' + + # View your Google Compute Engine resources + AUTH_COMPUTE_READONLY = 'https://www.googleapis.com/auth/compute.readonly' + + # View and manage your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN = 'https://www.googleapis.com/auth/ndev.cloudman' + + # View your Google Cloud Platform management resources and deployment status information + AUTH_NDEV_CLOUDMAN_READONLY = 'https://www.googleapis.com/auth/ndev.cloudman.readonly' + end + end +end diff --git a/generated/google/apis/resourceviews_v1beta1/classes.rb b/generated/google/apis/resourceviews_v1beta1/classes.rb new file mode 100644 index 000000000..23be42a26 --- /dev/null +++ b/generated/google/apis/resourceviews_v1beta1/classes.rb @@ -0,0 +1,338 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ResourceviewsV1beta1 + + # The Label to be applied to the resource views. + class Label + include Google::Apis::Core::Hashable + + # Key of the label. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Value of the label. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # The request to add resources to the resource view. + class RegionViewsAddResourcesRequest + include Google::Apis::Core::Hashable + + # The list of resources to be added. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resources = args[:resources] if args.key?(:resources) + end + end + + # The response to a resource view insert request. + class RegionViewsInsertResponse + include Google::Apis::Core::Hashable + + # The resource view object. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ResourceviewsV1beta1::ResourceView] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # The response to the list resource request. + class RegionViewsListResourcesResponse + include Google::Apis::Core::Hashable + + # The resources in the view. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # A token used for pagination. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @members = args[:members] if args.key?(:members) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response to the list resource view request. + class RegionViewsListResponse + include Google::Apis::Core::Hashable + + # A token used for pagination. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The list of resource views that meet the criteria. + # Corresponds to the JSON property `resourceViews` + # @return [Array] + attr_accessor :resource_views + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resource_views = args[:resource_views] if args.key?(:resource_views) + end + end + + # The request to remove resources from the resource view. + class RegionViewsRemoveResourcesRequest + include Google::Apis::Core::Hashable + + # The list of resources to be removed. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resources = args[:resources] if args.key?(:resources) + end + end + + # The resource view object. + class ResourceView + include Google::Apis::Core::Hashable + + # The creation time of the resource view. + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + + # The detailed description of the resource view. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # [Output Only] The ID of the resource view. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Type of the resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The labels for events. + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # The last modified time of the view. Not supported yet. + # Corresponds to the JSON property `lastModified` + # @return [String] + attr_accessor :last_modified + + # A list of all resources in the resource view. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # The name of the resource view. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The total number of resources in the resource view. + # Corresponds to the JSON property `numMembers` + # @return [Fixnum] + attr_accessor :num_members + + # [Output Only] A self-link to the resource view. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @labels = args[:labels] if args.key?(:labels) + @last_modified = args[:last_modified] if args.key?(:last_modified) + @members = args[:members] if args.key?(:members) + @name = args[:name] if args.key?(:name) + @num_members = args[:num_members] if args.key?(:num_members) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # The request to add resources to the resource view. + class ZoneViewsAddResourcesRequest + include Google::Apis::Core::Hashable + + # The list of resources to be added. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resources = args[:resources] if args.key?(:resources) + end + end + + # The response to an insert request. + class ZoneViewsInsertResponse + include Google::Apis::Core::Hashable + + # The resource view object. + # Corresponds to the JSON property `resource` + # @return [Google::Apis::ResourceviewsV1beta1::ResourceView] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource = args[:resource] if args.key?(:resource) + end + end + + # The response to a list resource request. + class ZoneViewsListResourcesResponse + include Google::Apis::Core::Hashable + + # The full URL of resources in the view. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # A token used for pagination. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @members = args[:members] if args.key?(:members) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response to a list request. + class ZoneViewsListResponse + include Google::Apis::Core::Hashable + + # A token used for pagination. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The result that contains all resource views that meet the criteria. + # Corresponds to the JSON property `resourceViews` + # @return [Array] + attr_accessor :resource_views + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resource_views = args[:resource_views] if args.key?(:resource_views) + end + end + + # The request to remove resources from the resource view. + class ZoneViewsRemoveResourcesRequest + include Google::Apis::Core::Hashable + + # The list of resources to be removed. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resources = args[:resources] if args.key?(:resources) + end + end + end + end +end diff --git a/generated/google/apis/resourceviews_v1beta1/representations.rb b/generated/google/apis/resourceviews_v1beta1/representations.rb new file mode 100644 index 000000000..a12819abb --- /dev/null +++ b/generated/google/apis/resourceviews_v1beta1/representations.rb @@ -0,0 +1,201 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ResourceviewsV1beta1 + + class Label + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionViewsAddResourcesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionViewsInsertResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionViewsListResourcesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionViewsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RegionViewsRemoveResourcesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResourceView + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZoneViewsAddResourcesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZoneViewsInsertResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZoneViewsListResourcesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZoneViewsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ZoneViewsRemoveResourcesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Label + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class RegionViewsAddResourcesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :resources, as: 'resources' + end + end + + class RegionViewsInsertResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ResourceviewsV1beta1::ResourceView, decorator: Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + + end + end + + class RegionViewsListResourcesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :members, as: 'members' + property :next_page_token, as: 'nextPageToken' + end + end + + class RegionViewsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resource_views, as: 'resourceViews', class: Google::Apis::ResourceviewsV1beta1::ResourceView, decorator: Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + + end + end + + class RegionViewsRemoveResourcesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :resources, as: 'resources' + end + end + + class ResourceView + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_time, as: 'creationTime' + property :description, as: 'description' + property :id, as: 'id' + property :kind, as: 'kind' + collection :labels, as: 'labels', class: Google::Apis::ResourceviewsV1beta1::Label, decorator: Google::Apis::ResourceviewsV1beta1::Label::Representation + + property :last_modified, as: 'lastModified' + collection :members, as: 'members' + property :name, as: 'name' + property :num_members, as: 'numMembers' + property :self_link, as: 'selfLink' + end + end + + class ZoneViewsAddResourcesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :resources, as: 'resources' + end + end + + class ZoneViewsInsertResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource, as: 'resource', class: Google::Apis::ResourceviewsV1beta1::ResourceView, decorator: Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + + end + end + + class ZoneViewsListResourcesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :members, as: 'members' + property :next_page_token, as: 'nextPageToken' + end + end + + class ZoneViewsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resource_views, as: 'resourceViews', class: Google::Apis::ResourceviewsV1beta1::ResourceView, decorator: Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + + end + end + + class ZoneViewsRemoveResourcesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :resources, as: 'resources' + end + end + end + end +end diff --git a/generated/google/apis/resourceviews_v1beta1/service.rb b/generated/google/apis/resourceviews_v1beta1/service.rb new file mode 100644 index 000000000..efc1ee88d --- /dev/null +++ b/generated/google/apis/resourceviews_v1beta1/service.rb @@ -0,0 +1,667 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ResourceviewsV1beta1 + # Resource Views API + # + # The Resource View API allows users to create and manage logical sets of Google + # Compute Engine instances. + # + # @example + # require 'google/apis/resourceviews_v1beta1' + # + # Resourceviews = Google::Apis::ResourceviewsV1beta1 # Alias the module + # service = Resourceviews::ResourceviewsService.new + # + # @see https://developers.google.com/compute/ + class ResourceviewsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'resourceviews/v1beta1/projects/') + @batch_path = 'batch' + end + + # Add resources to the view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] region + # The region name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [Google::Apis::ResourceviewsV1beta1::RegionViewsAddResourcesRequest] region_views_add_resources_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def addresources_region_view(project_name, region, resource_view_name, region_views_add_resources_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/regions/{region}/resourceViews/{resourceViewName}/addResources', options) + command.request_representation = Google::Apis::ResourceviewsV1beta1::RegionViewsAddResourcesRequest::Representation + command.request_object = region_views_add_resources_request_object + command.params['projectName'] = project_name unless project_name.nil? + command.params['region'] = region unless region.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete a resource view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] region + # The region name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_region_view(project_name, region, resource_view_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{projectName}/regions/{region}/resourceViews/{resourceViewName}', options) + command.params['projectName'] = project_name unless project_name.nil? + command.params['region'] = region unless region.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get the information of a resource view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] region + # The region name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::ResourceView] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::ResourceView] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_region_view(project_name, region, resource_view_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/regions/{region}/resourceViews/{resourceViewName}', options) + command.response_representation = Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::ResourceView + command.params['projectName'] = project_name unless project_name.nil? + command.params['region'] = region unless region.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Create a resource view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] region + # The region name of the resource view. + # @param [Google::Apis::ResourceviewsV1beta1::ResourceView] resource_view_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::RegionViewsInsertResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::RegionViewsInsertResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_region_view(project_name, region, resource_view_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/regions/{region}/resourceViews', options) + command.request_representation = Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + command.request_object = resource_view_object + command.response_representation = Google::Apis::ResourceviewsV1beta1::RegionViewsInsertResponse::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::RegionViewsInsertResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['region'] = region unless region.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List resource views. + # @param [String] project_name + # The project name of the resource view. + # @param [String] region + # The region name of the resource view. + # @param [Fixnum] max_results + # Maximum count of results to be returned. Acceptable values are 0 to 5000, + # inclusive. (Default: 5000) + # @param [String] page_token + # Specifies a nextPageToken returned by a previous list request. This token can + # be used to request the next page of results from a previous list request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::RegionViewsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::RegionViewsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_region_views(project_name, region, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/regions/{region}/resourceViews', options) + command.response_representation = Google::Apis::ResourceviewsV1beta1::RegionViewsListResponse::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::RegionViewsListResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['region'] = region unless region.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the resources in the view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] region + # The region name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [Fixnum] max_results + # Maximum count of results to be returned. Acceptable values are 0 to 5000, + # inclusive. (Default: 5000) + # @param [String] page_token + # Specifies a nextPageToken returned by a previous list request. This token can + # be used to request the next page of results from a previous list request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::RegionViewsListResourcesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::RegionViewsListResourcesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def listresources_region_view(project_name, region, resource_view_name, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/regions/{region}/resourceViews/{resourceViewName}/resources', options) + command.response_representation = Google::Apis::ResourceviewsV1beta1::RegionViewsListResourcesResponse::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::RegionViewsListResourcesResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['region'] = region unless region.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Remove resources from the view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] region + # The region name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [Google::Apis::ResourceviewsV1beta1::RegionViewsRemoveResourcesRequest] region_views_remove_resources_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def removeresources_region_view(project_name, region, resource_view_name, region_views_remove_resources_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/regions/{region}/resourceViews/{resourceViewName}/removeResources', options) + command.request_representation = Google::Apis::ResourceviewsV1beta1::RegionViewsRemoveResourcesRequest::Representation + command.request_object = region_views_remove_resources_request_object + command.params['projectName'] = project_name unless project_name.nil? + command.params['region'] = region unless region.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Add resources to the view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] zone + # The zone name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [Google::Apis::ResourceviewsV1beta1::ZoneViewsAddResourcesRequest] zone_views_add_resources_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def addresources_zone_view(project_name, zone, resource_view_name, zone_views_add_resources_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/resourceViews/{resourceViewName}/addResources', options) + command.request_representation = Google::Apis::ResourceviewsV1beta1::ZoneViewsAddResourcesRequest::Representation + command.request_object = zone_views_add_resources_request_object + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete a resource view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] zone + # The zone name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_zone_view(project_name, zone, resource_view_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{projectName}/zones/{zone}/resourceViews/{resourceViewName}', options) + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get the information of a zonal resource view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] zone + # The zone name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::ResourceView] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::ResourceView] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_zone_view(project_name, zone, resource_view_name, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/zones/{zone}/resourceViews/{resourceViewName}', options) + command.response_representation = Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::ResourceView + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Create a resource view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] zone + # The zone name of the resource view. + # @param [Google::Apis::ResourceviewsV1beta1::ResourceView] resource_view_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::ZoneViewsInsertResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::ZoneViewsInsertResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_zone_view(project_name, zone, resource_view_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/resourceViews', options) + command.request_representation = Google::Apis::ResourceviewsV1beta1::ResourceView::Representation + command.request_object = resource_view_object + command.response_representation = Google::Apis::ResourceviewsV1beta1::ZoneViewsInsertResponse::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::ZoneViewsInsertResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List resource views. + # @param [String] project_name + # The project name of the resource view. + # @param [String] zone + # The zone name of the resource view. + # @param [Fixnum] max_results + # Maximum count of results to be returned. Acceptable values are 0 to 5000, + # inclusive. (Default: 5000) + # @param [String] page_token + # Specifies a nextPageToken returned by a previous list request. This token can + # be used to request the next page of results from a previous list request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::ZoneViewsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::ZoneViewsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_zone_views(project_name, zone, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectName}/zones/{zone}/resourceViews', options) + command.response_representation = Google::Apis::ResourceviewsV1beta1::ZoneViewsListResponse::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::ZoneViewsListResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List the resources of the resource view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] zone + # The zone name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [Fixnum] max_results + # Maximum count of results to be returned. Acceptable values are 0 to 5000, + # inclusive. (Default: 5000) + # @param [String] page_token + # Specifies a nextPageToken returned by a previous list request. This token can + # be used to request the next page of results from a previous list request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ResourceviewsV1beta1::ZoneViewsListResourcesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ResourceviewsV1beta1::ZoneViewsListResourcesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def listresources_zone_view(project_name, zone, resource_view_name, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/resourceViews/{resourceViewName}/resources', options) + command.response_representation = Google::Apis::ResourceviewsV1beta1::ZoneViewsListResourcesResponse::Representation + command.response_class = Google::Apis::ResourceviewsV1beta1::ZoneViewsListResourcesResponse + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Remove resources from the view. + # @param [String] project_name + # The project name of the resource view. + # @param [String] zone + # The zone name of the resource view. + # @param [String] resource_view_name + # The name of the resource view. + # @param [Google::Apis::ResourceviewsV1beta1::ZoneViewsRemoveResourcesRequest] zone_views_remove_resources_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def removeresources_zone_view(project_name, zone, resource_view_name, zone_views_remove_resources_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectName}/zones/{zone}/resourceViews/{resourceViewName}/removeResources', options) + command.request_representation = Google::Apis::ResourceviewsV1beta1::ZoneViewsRemoveResourcesRequest::Representation + command.request_object = zone_views_remove_resources_request_object + command.params['projectName'] = project_name unless project_name.nil? + command.params['zone'] = zone unless zone.nil? + command.params['resourceViewName'] = resource_view_name unless resource_view_name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/runtimeconfig_v1beta1.rb b/generated/google/apis/runtimeconfig_v1beta1.rb new file mode 100644 index 000000000..af698c450 --- /dev/null +++ b/generated/google/apis/runtimeconfig_v1beta1.rb @@ -0,0 +1,40 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/runtimeconfig_v1beta1/service.rb' +require 'google/apis/runtimeconfig_v1beta1/classes.rb' +require 'google/apis/runtimeconfig_v1beta1/representations.rb' + +module Google + module Apis + # Google Cloud Runtime Configuration API + # + # The Runtime Configurator allows you to dynamically configure and expose + # variables through Google Cloud Platform. In addition, you can also set + # Watchers and Waiters that will watch for changes to your data and return based + # on certain conditions. + # + # @see https://cloud.google.com/deployment-manager/runtime-configurator/ + module RuntimeconfigV1beta1 + VERSION = 'V1beta1' + REVISION = '20170808' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # Manage your Google Cloud Platform services' runtime configuration + AUTH_CLOUDRUNTIMECONFIG = 'https://www.googleapis.com/auth/cloudruntimeconfig' + end + end +end diff --git a/generated/google/apis/runtimeconfig_v1beta1/classes.rb b/generated/google/apis/runtimeconfig_v1beta1/classes.rb new file mode 100644 index 000000000..2ffe992f6 --- /dev/null +++ b/generated/google/apis/runtimeconfig_v1beta1/classes.rb @@ -0,0 +1,805 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module RuntimeconfigV1beta1 + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # 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`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. + # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + # Required + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # A Cardinality condition for the Waiter resource. A cardinality condition is + # met when the number of variables under a specified path prefix reaches a + # predefined number. For example, if you set a Cardinality condition where + # the `path` is set to `/foo` and the number of paths is set to 2, the + # following variables would meet the condition in a RuntimeConfig resource: + # + `/foo/variable1 = "value1"` + # + `/foo/variable2 = "value2"` + # + `/bar/variable3 = "value3"` + # It would not would not satisify the same condition with the `number` set to + # 3, however, because there is only 2 paths that start with `/foo`. + # Cardinality conditions are recursive; all subtrees under the specific + # path prefix are counted. + class Cardinality + include Google::Apis::Core::Hashable + + # The number variables under the `path` that must exist to meet this + # condition. Defaults to 1 if not specified. + # Corresponds to the JSON property `number` + # @return [Fixnum] + attr_accessor :number + + # The root of the variable subtree to monitor. For example, `/foo`. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @number = args[:number] if args.key?(:number) + @path = args[:path] if args.key?(:path) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The condition that a Waiter resource is waiting for. + class EndCondition + include Google::Apis::Core::Hashable + + # A Cardinality condition for the Waiter resource. A cardinality condition is + # met when the number of variables under a specified path prefix reaches a + # predefined number. For example, if you set a Cardinality condition where + # the `path` is set to `/foo` and the number of paths is set to 2, the + # following variables would meet the condition in a RuntimeConfig resource: + # + `/foo/variable1 = "value1"` + # + `/foo/variable2 = "value2"` + # + `/bar/variable3 = "value3"` + # It would not would not satisify the same condition with the `number` set to + # 3, however, because there is only 2 paths that start with `/foo`. + # Cardinality conditions are recursive; all subtrees under the specific + # path prefix are counted. + # Corresponds to the JSON property `cardinality` + # @return [Google::Apis::RuntimeconfigV1beta1::Cardinality] + attr_accessor :cardinality + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cardinality = args[:cardinality] if args.key?(:cardinality) + end + end + + # `ListConfigs()` returns the following response. The order of returned + # objects is arbitrary; that is, it is not ordered in any particular way. + class ListConfigsResponse + include Google::Apis::Core::Hashable + + # A list of the configurations in the project. The order of returned + # objects is arbitrary; that is, it is not ordered in any particular way. + # Corresponds to the JSON property `configs` + # @return [Array] + attr_accessor :configs + + # This token allows you to get the next page of results for list requests. + # If the number of results is larger than `pageSize`, use the `nextPageToken` + # as a value for the query parameter `pageToken` in the next list request. + # Subsequent list requests will have their own `nextPageToken` to continue + # paging through the results + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @configs = args[:configs] if args.key?(:configs) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response for the `ListVariables()` method. + class ListVariablesResponse + include Google::Apis::Core::Hashable + + # This token allows you to get the next page of results for list requests. + # If the number of results is larger than `pageSize`, use the `nextPageToken` + # as a value for the query parameter `pageToken` in the next list request. + # Subsequent list requests will have their own `nextPageToken` to continue + # paging through the results + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of variables and their values. The order of returned variable + # objects is arbitrary. + # Corresponds to the JSON property `variables` + # @return [Array] + attr_accessor :variables + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @variables = args[:variables] if args.key?(:variables) + end + end + + # Response for the `ListWaiters()` method. + # Order of returned waiter objects is arbitrary. + class ListWaitersResponse + include Google::Apis::Core::Hashable + + # This token allows you to get the next page of results for list requests. + # If the number of results is larger than `pageSize`, use the `nextPageToken` + # as a value for the query parameter `pageToken` in the next list request. + # Subsequent list requests will have their own `nextPageToken` to continue + # paging through the results + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Found waiters in the project. + # Corresponds to the JSON property `waiters` + # @return [Array] + attr_accessor :waiters + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @waiters = args[:waiters] if args.key?(:waiters) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::RuntimeconfigV1beta1::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # 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). + class Policy + include Google::Apis::Core::Hashable + + # Associates a list of `members` to a `role`. + # `bindings` with no members will result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `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. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + end + end + + # A RuntimeConfig resource is the primary resource in the Cloud RuntimeConfig + # service. A RuntimeConfig resource consists of metadata and a hierarchy of + # variables. + class RuntimeConfig + include Google::Apis::Core::Hashable + + # An optional description of the RuntimeConfig object. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The resource name of a runtime config. The name must have the format: + # projects/[PROJECT_ID]/configs/[CONFIG_NAME] + # The `[PROJECT_ID]` must be a valid project ID, and `[CONFIG_NAME]` is an + # arbitrary name that matches RFC 1035 segment specification. The length of + # `[CONFIG_NAME]` must be less than 64 bytes. + # You pick the RuntimeConfig resource name, but the server will validate that + # the name adheres to this format. After you create the resource, you cannot + # change the resource's name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @name = args[:name] if args.key?(:name) + end + end + + # Request message for `SetIamPolicy` method. + class SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # 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). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::RuntimeconfigV1beta1::Policy] + attr_accessor :policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Request message for `TestIamPermissions` method. + class TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Response message for `TestIamPermissions` method. + class TestIamPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Describes a single variable within a RuntimeConfig resource. + # The name denotes the hierarchical variable name. For example, + # `ports/serving_port` is a valid variable name. The variable value is an + # opaque string and only leaf variables can have values (that is, variables + # that do not have any child variables). + class Variable + include Google::Apis::Core::Hashable + + # The name of the variable resource, in the format: + # projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME] + # The `[PROJECT_ID]` must be a valid project ID, `[CONFIG_NAME]` must be a + # valid RuntimeConfig reource and `[VARIABLE_NAME]` follows Unix file system + # file path naming. + # The `[VARIABLE_NAME]` can contain ASCII letters, numbers, slashes and + # dashes. Slashes are used as path element separators and are not part of the + # `[VARIABLE_NAME]` itself, so `[VARIABLE_NAME]` must contain at least one + # non-slash character. Multiple slashes are coalesced into single slash + # character. Each path segment should follow RFC 1035 segment specification. + # The length of a `[VARIABLE_NAME]` must be less than 256 bytes. + # Once you create a variable, you cannot change the variable name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # [Ouput only] The current state of the variable. The variable state indicates + # the outcome of the `variables().watch` call and is visible through the + # `get` and `list` calls. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # The string value of the variable. The length of the value must be less + # than 4096 bytes. Empty values are also accepted. For example, + # `text: "my text value"`. The string must be valid UTF-8. + # Corresponds to the JSON property `text` + # @return [String] + attr_accessor :text + + # [Output Only] The time of the last variable update. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + # The binary value of the variable. The length of the value must be less + # than 4096 bytes. Empty values are also accepted. The value must be + # base64 encoded. Only one of `value` or `text` can be set. + # Corresponds to the JSON property `value` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @state = args[:state] if args.key?(:state) + @text = args[:text] if args.key?(:text) + @update_time = args[:update_time] if args.key?(:update_time) + @value = args[:value] if args.key?(:value) + end + end + + # A Waiter resource waits for some end condition within a RuntimeConfig resource + # to be met before it returns. For example, assume you have a distributed + # system where each node writes to a Variable resource indidicating the node's + # readiness as part of the startup process. + # You then configure a Waiter resource with the success condition set to wait + # until some number of nodes have checked in. Afterwards, your application + # runs some arbitrary code after the condition has been met and the waiter + # returns successfully. + # Once created, a Waiter resource is immutable. + # To learn more about using waiters, read the + # [Creating a Waiter](/deployment-manager/runtime-configurator/creating-a-waiter) + # documentation. + class Waiter + include Google::Apis::Core::Hashable + + # [Output Only] The instant at which this Waiter resource was created. Adding + # the value of `timeout` to this instant yields the timeout deadline for the + # waiter. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # [Output Only] If the value is `false`, it means the waiter is still waiting + # for one of its conditions to be met. + # If true, the waiter has finished. If the waiter finished due to a timeout + # or failure, `error` will be set. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::RuntimeconfigV1beta1::Status] + attr_accessor :error + + # The condition that a Waiter resource is waiting for. + # Corresponds to the JSON property `failure` + # @return [Google::Apis::RuntimeconfigV1beta1::EndCondition] + attr_accessor :failure + + # The name of the Waiter resource, in the format: + # projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME] + # The `[PROJECT_ID]` must be a valid Google Cloud project ID, + # the `[CONFIG_NAME]` must be a valid RuntimeConfig resource, the + # `[WAITER_NAME]` must match RFC 1035 segment specification, and the length + # of `[WAITER_NAME]` must be less than 64 bytes. + # After you create a Waiter resource, you cannot change the resource name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The condition that a Waiter resource is waiting for. + # Corresponds to the JSON property `success` + # @return [Google::Apis::RuntimeconfigV1beta1::EndCondition] + attr_accessor :success + + # [Required] Specifies the timeout of the waiter in seconds, beginning from + # the instant that `waiters().create` method is called. If this time elapses + # before the success or failure conditions are met, the waiter fails and sets + # the `error` code to `DEADLINE_EXCEEDED`. + # Corresponds to the JSON property `timeout` + # @return [String] + attr_accessor :timeout + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @failure = args[:failure] if args.key?(:failure) + @name = args[:name] if args.key?(:name) + @success = args[:success] if args.key?(:success) + @timeout = args[:timeout] if args.key?(:timeout) + end + end + + # Request for the `WatchVariable()` method. + class WatchVariableRequest + include Google::Apis::Core::Hashable + + # If specified, checks the current timestamp of the variable and if the + # current timestamp is newer than `newerThan` timestamp, the method returns + # immediately. + # If not specified or the variable has an older timestamp, the watcher waits + # for a the value to change before returning. + # Corresponds to the JSON property `newerThan` + # @return [String] + attr_accessor :newer_than + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @newer_than = args[:newer_than] if args.key?(:newer_than) + end + end + end + end +end diff --git a/generated/google/apis/runtimeconfig_v1beta1/representations.rb b/generated/google/apis/runtimeconfig_v1beta1/representations.rb new file mode 100644 index 000000000..7cfba2fde --- /dev/null +++ b/generated/google/apis/runtimeconfig_v1beta1/representations.rb @@ -0,0 +1,280 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module RuntimeconfigV1beta1 + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Cardinality + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EndCondition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListConfigsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListVariablesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListWaitersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RuntimeConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Variable + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Waiter + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WatchVariableRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class Cardinality + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :number, as: 'number' + property :path, as: 'path' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class EndCondition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cardinality, as: 'cardinality', class: Google::Apis::RuntimeconfigV1beta1::Cardinality, decorator: Google::Apis::RuntimeconfigV1beta1::Cardinality::Representation + + end + end + + class ListConfigsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :configs, as: 'configs', class: Google::Apis::RuntimeconfigV1beta1::RuntimeConfig, decorator: Google::Apis::RuntimeconfigV1beta1::RuntimeConfig::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListVariablesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :variables, as: 'variables', class: Google::Apis::RuntimeconfigV1beta1::Variable, decorator: Google::Apis::RuntimeconfigV1beta1::Variable::Representation + + end + end + + class ListWaitersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :waiters, as: 'waiters', class: Google::Apis::RuntimeconfigV1beta1::Waiter, decorator: Google::Apis::RuntimeconfigV1beta1::Waiter::Representation + + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::RuntimeconfigV1beta1::Status, decorator: Google::Apis::RuntimeconfigV1beta1::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :bindings, as: 'bindings', class: Google::Apis::RuntimeconfigV1beta1::Binding, decorator: Google::Apis::RuntimeconfigV1beta1::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :version, as: 'version' + end + end + + class RuntimeConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :name, as: 'name' + end + end + + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::RuntimeconfigV1beta1::Policy, decorator: Google::Apis::RuntimeconfigV1beta1::Policy::Representation + + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TestIamPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestIamPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class Variable + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :state, as: 'state' + property :text, as: 'text' + property :update_time, as: 'updateTime' + property :value, :base64 => true, as: 'value' + end + end + + class Waiter + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::RuntimeconfigV1beta1::Status, decorator: Google::Apis::RuntimeconfigV1beta1::Status::Representation + + property :failure, as: 'failure', class: Google::Apis::RuntimeconfigV1beta1::EndCondition, decorator: Google::Apis::RuntimeconfigV1beta1::EndCondition::Representation + + property :name, as: 'name' + property :success, as: 'success', class: Google::Apis::RuntimeconfigV1beta1::EndCondition, decorator: Google::Apis::RuntimeconfigV1beta1::EndCondition::Representation + + property :timeout, as: 'timeout' + end + end + + class WatchVariableRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :newer_than, as: 'newerThan' + end + end + end + end +end diff --git a/generated/google/apis/runtimeconfig_v1beta1/service.rb b/generated/google/apis/runtimeconfig_v1beta1/service.rb new file mode 100644 index 000000000..62b8badfc --- /dev/null +++ b/generated/google/apis/runtimeconfig_v1beta1/service.rb @@ -0,0 +1,903 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module RuntimeconfigV1beta1 + # Google Cloud Runtime Configuration API + # + # The Runtime Configurator allows you to dynamically configure and expose + # variables through Google Cloud Platform. In addition, you can also set + # Watchers and Waiters that will watch for changes to your data and return based + # on certain conditions. + # + # @example + # require 'google/apis/runtimeconfig_v1beta1' + # + # Runtimeconfig = Google::Apis::RuntimeconfigV1beta1 # Alias the module + # service = Runtimeconfig::CloudRuntimeConfigService.new + # + # @see https://cloud.google.com/deployment-manager/runtime-configurator/ + class CloudRuntimeConfigService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://runtimeconfig.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates a new RuntimeConfig resource. The configuration name must be + # unique within project. + # @param [String] parent + # The [project ID](https://support.google.com/cloud/answer/6158840?hl=en& + # ref_topic=6158848) + # for this request, in the format `projects/[PROJECT_ID]`. + # @param [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] runtime_config_object + # @param [String] request_id + # An optional but recommended unique `request_id`. If the server + # receives two `create()` requests with the same + # `request_id`, then the second request will be ignored and the + # first resource created and stored in the backend is returned. + # Empty `request_id` fields are ignored. + # It is responsibility of the client to ensure uniqueness of the + # `request_id` strings. + # `request_id` strings are limited to 64 characters. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_config(parent, runtime_config_object = nil, request_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/configs', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig::Representation + command.request_object = runtime_config_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig + command.params['parent'] = parent unless parent.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a RuntimeConfig resource. + # @param [String] name + # The RuntimeConfig resource to delete, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_config(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Empty::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a RuntimeConfig resource. + # @param [String] name + # The name of the RuntimeConfig resource to retrieve, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_config(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. + # Returns an empty policy if the resource exists and does not have a policy + # set. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_config_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Policy::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all the RuntimeConfig resources within project. + # @param [String] parent + # The [project ID](https://support.google.com/cloud/answer/6158840?hl=en& + # ref_topic=6158848) + # for this request, in the format `projects/[PROJECT_ID]`. + # @param [Fixnum] page_size + # Specifies the number of results to return per page. If there are fewer + # elements than the specified number, returns all elements. + # @param [String] page_token + # Specifies a page token to use. Set `pageToken` to a `nextPageToken` + # returned by a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::ListConfigsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::ListConfigsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_configs(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/configs', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::ListConfigsResponse::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::ListConfigsResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::RuntimeconfigV1beta1::SetIamPolicyRequest] set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_config_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Policy::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_config_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates a RuntimeConfig resource. The configuration must exist beforehand. + # @param [String] name + # The name of the RuntimeConfig resource to update, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` + # @param [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] runtime_config_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::RuntimeConfig] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_project_config(name, runtime_config_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta1/{+name}', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig::Representation + command.request_object = runtime_config_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::RuntimeConfig + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # 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. + # @param [String] name + # The name of the operation resource. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_config_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Operation::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_operation_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a variable within the given configuration. You cannot create + # a variable with a name that is a prefix of an existing variable name, or a + # name that has an existing variable name as a prefix. + # To learn more about creating a variable, read the + # [Setting and Getting Data](/deployment-manager/runtime-configurator/set-and- + # get-variables) + # documentation. + # @param [String] parent + # The path to the RutimeConfig resource that this variable should belong to. + # The configuration must exist beforehand; the path must by in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` + # @param [Google::Apis::RuntimeconfigV1beta1::Variable] variable_object + # @param [String] request_id + # An optional but recommended unique `request_id`. If the server + # receives two `create()` requests with the same + # `request_id`, then the second request will be ignored and the + # first resource created and stored in the backend is returned. + # Empty `request_id` fields are ignored. + # It is responsibility of the client to ensure uniqueness of the + # `request_id` strings. + # `request_id` strings are limited to 64 characters. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Variable] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Variable] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_config_variable(parent, variable_object = nil, request_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/variables', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::Variable::Representation + command.request_object = variable_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Variable::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Variable + command.params['parent'] = parent unless parent.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a variable or multiple variables. + # If you specify a variable name, then that variable is deleted. If you + # specify a prefix and `recursive` is true, then all variables with that + # prefix are deleted. You must set a `recursive` to true if you delete + # variables by prefix. + # @param [String] name + # The name of the variable to delete, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]` + # @param [Boolean] recursive + # Set to `true` to recursively delete multiple variables with the same + # prefix. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_config_variable(name, recursive: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Empty::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['recursive'] = recursive unless recursive.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a single variable. + # @param [String] name + # The name of the variable to return, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIBLE_NAME]` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Variable] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Variable] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_config_variable(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Variable::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Variable + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists variables within given a configuration, matching any provided filters. + # This only lists variable names, not the values, unless `return_values` is + # true, in which case only variables that user has IAM permission to GetVariable + # will be returned. + # @param [String] parent + # The path to the RuntimeConfig resource for which you want to list variables. + # The configuration must exist beforehand; the path must by in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` + # @param [String] filter + # Filters variables by matching the specified filter. For example: + # `projects/example-project/config/[CONFIG_NAME]/variables/example-variable`. + # @param [Fixnum] page_size + # Specifies the number of results to return per page. If there are fewer + # elements than the specified number, returns all elements. + # @param [String] page_token + # Specifies a page token to use. Set `pageToken` to a `nextPageToken` + # returned by a previous list request to get the next page of results. + # @param [Boolean] return_values + # The flag indicates whether the user wants to return values of variables. + # If true, then only those variables that user has IAM GetVariable permission + # will be returned along with their values. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::ListVariablesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::ListVariablesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_config_variables(parent, filter: nil, page_size: nil, page_token: nil, return_values: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/variables', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::ListVariablesResponse::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::ListVariablesResponse + command.params['parent'] = parent unless parent.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['returnValues'] = return_values unless return_values.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_variable_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing variable with a new value. + # @param [String] name + # The name of the variable to update, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_NAME]` + # @param [Google::Apis::RuntimeconfigV1beta1::Variable] variable_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Variable] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Variable] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_project_config_variable(name, variable_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1beta1/{+name}', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::Variable::Representation + command.request_object = variable_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Variable::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Variable + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Watches a specific variable and waits for a change in the variable's value. + # When there is a change, this method returns the new value or times out. + # If a variable is deleted while being watched, the `variableState` state is + # set to `DELETED` and the method returns the last known variable `value`. + # If you set the deadline for watching to a larger value than internal timeout + # (60 seconds), the current variable value is returned and the `variableState` + # will be `VARIABLE_STATE_UNSPECIFIED`. + # To learn more about creating a watcher, read the + # [Watching a Variable for Changes](/deployment-manager/runtime-configurator/ + # watching-a-variable) + # documentation. + # @param [String] name + # The name of the variable to watch, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` + # @param [Google::Apis::RuntimeconfigV1beta1::WatchVariableRequest] watch_variable_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Variable] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Variable] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def watch_variable(name, watch_variable_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:watch', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::WatchVariableRequest::Representation + command.request_object = watch_variable_request_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Variable::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Variable + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Waiter resource. This operation returns a long-running Operation + # resource which can be polled for completion. However, a waiter with the + # given name will exist (and can be retrieved) prior to the operation + # completing. If the operation fails, the failed Waiter resource will + # still exist and must be deleted prior to subsequent creation attempts. + # @param [String] parent + # The path to the configuration that will own the waiter. + # The configuration must exist beforehand; the path must by in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]`. + # @param [Google::Apis::RuntimeconfigV1beta1::Waiter] waiter_object + # @param [String] request_id + # An optional but recommended unique `request_id`. If the server + # receives two `create()` requests with the same + # `request_id`, then the second request will be ignored and the + # first resource created and stored in the backend is returned. + # Empty `request_id` fields are ignored. + # It is responsibility of the client to ensure uniqueness of the + # `request_id` strings. + # `request_id` strings are limited to 64 characters. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_config_waiter(parent, waiter_object = nil, request_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/waiters', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::Waiter::Representation + command.request_object = waiter_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Operation::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the waiter with the specified name. + # @param [String] name + # The Waiter resource to delete, in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_config_waiter(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Empty::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets information about a single waiter. + # @param [String] name + # The fully-qualified name of the Waiter resource object to retrieve, in the + # format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::Waiter] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::Waiter] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_config_waiter(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::Waiter::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::Waiter + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # List waiters within the given configuration. + # @param [String] parent + # The path to the configuration for which you want to get a list of waiters. + # The configuration must exist beforehand; the path must by in the format: + # `projects/[PROJECT_ID]/configs/[CONFIG_NAME]` + # @param [Fixnum] page_size + # Specifies the number of results to return per page. If there are fewer + # elements than the specified number, returns all elements. + # @param [String] page_token + # Specifies a page token to use. Set `pageToken` to a `nextPageToken` + # returned by a previous list request to get the next page of results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::ListWaitersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::ListWaitersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_config_waiters(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/waiters', options) + command.response_representation = Google::Apis::RuntimeconfigV1beta1::ListWaitersResponse::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::ListWaitersResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_waiter_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::RuntimeconfigV1beta1::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/speech_v1beta1.rb b/generated/google/apis/speech_v1beta1.rb index 4b6d9a41d..dc0cc9819 100644 --- a/generated/google/apis/speech_v1beta1.rb +++ b/generated/google/apis/speech_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/speech/ module SpeechV1beta1 VERSION = 'V1beta1' - REVISION = '20170705' + REVISION = '20170807' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/speech_v1beta1/classes.rb b/generated/google/apis/speech_v1beta1/classes.rb index 6c8440d02..90ea53266 100644 --- a/generated/google/apis/speech_v1beta1/classes.rb +++ b/generated/google/apis/speech_v1beta1/classes.rb @@ -22,8 +22,8 @@ module Google module Apis module SpeechV1beta1 - # The top-level message sent by the client for the `SyncRecognize` method. - class SyncRecognizeRequest + # The top-level message sent by the client for the `AsyncRecognize` method. + class AsyncRecognizeRequest include Google::Apis::Core::Hashable # Contains audio data in the encoding specified in the `RecognitionConfig`. @@ -51,100 +51,6 @@ module Google end end - # The `Status` type defines a logical error model that is suitable for different - # programming environments, including REST APIs and RPC APIs. It is used by - # [gRPC](https://github.com/grpc). The error model is designed to be: - # - Simple to use and understand for most users - # - Flexible enough to meet unexpected needs - # # Overview - # The `Status` message contains three pieces of data: error code, error message, - # and error details. The error code should be an enum value of - # google.rpc.Code, but it may accept additional error codes if needed. The - # error message should be a developer-facing English message that helps - # developers *understand* and *resolve* the error. If a localized user-facing - # error message is needed, put the localized message in the error details or - # localize it in the client. The optional error details may contain arbitrary - # information about the error. There is a predefined set of error detail types - # in the package `google.rpc` that can be used for common error conditions. - # # Language mapping - # The `Status` message is the logical representation of the error model, but it - # is not necessarily the actual wire format. When the `Status` message is - # exposed in different client libraries and different wire protocols, it can be - # mapped differently. For example, it will likely be mapped to some exceptions - # in Java, but more likely mapped to some error codes in C. - # # Other uses - # The error model and the `Status` message can be used in a variety of - # environments, either with or without APIs, to provide a - # consistent developer experience across different environments. - # Example uses of this error model include: - # - Partial errors. If a service needs to return partial errors to the client, - # it may embed the `Status` in the normal response to indicate the partial - # errors. - # - Workflow errors. A typical workflow has multiple steps. Each step may - # have a `Status` message for error reporting. - # - Batch operations. If a client uses batch request and batch response, the - # `Status` message should be used directly inside batch response, one for - # each error sub-response. - # - Asynchronous operations. If an API call embeds asynchronous operation - # results in its response, the status of those operations should be - # represented directly using the `Status` message. - # - Logging. If some API errors are stored in logs, the message `Status` could - # be used directly after any stripping needed for security/privacy reasons. - class Status - include Google::Apis::Core::Hashable - - # The status code, which should be an enum value of google.rpc.Code. - # Corresponds to the JSON property `code` - # @return [Fixnum] - attr_accessor :code - - # 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. - # Corresponds to the JSON property `message` - # @return [String] - attr_accessor :message - - # A list of messages that carry the error details. There will be a - # common set of message types for APIs to use. - # Corresponds to the JSON property `details` - # @return [Array>] - attr_accessor :details - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @code = args[:code] if args.key?(:code) - @message = args[:message] if args.key?(:message) - @details = args[:details] if args.key?(:details) - end - end - - # The only message returned to the client by `SyncRecognize`. method. It - # contains the result as zero or more sequential `SpeechRecognitionResult` - # messages. - class SyncRecognizeResponse - include Google::Apis::Core::Hashable - - # *Output-only* Sequential list of transcription results corresponding to - # sequential portions of audio. - # Corresponds to the JSON property `results` - # @return [Array] - attr_accessor :results - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @results = args[:results] if args.key?(:results) - end - end - # A generic empty message that you can re-use to avoid defining duplicated # empty messages in your APIs. A typical example is to use it as the request # or the response type of an API method. For instance: @@ -168,24 +74,225 @@ module Google class ListOperationsResponse include Google::Apis::Core::Hashable - # A list of operations that matches the specified filter in the request. - # Corresponds to the JSON property `operations` - # @return [Array] - attr_accessor :operations - # The standard List next-page token. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @operations = args[:operations] if args.key?(:operations) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::SpeechV1beta1::Status] + attr_accessor :error + + # 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. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # 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`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # 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`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Contains audio data in the encoding specified in the `RecognitionConfig`. + # Either `content` or `uri` must be supplied. Supplying both or neither + # returns google.rpc.Code.INVALID_ARGUMENT. See + # [audio limits](https://cloud.google.com/speech/limits#content). + class RecognitionAudio + include Google::Apis::Core::Hashable + + # The audio data bytes encoded as specified in + # `RecognitionConfig`. Note: as with all bytes fields, protobuffers use a + # pure binary representation, whereas JSON representations use base64. + # Corresponds to the JSON property `content` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :content + + # URI that points to a file that contains audio data bytes as specified in + # `RecognitionConfig`. Currently, only Google Cloud Storage URIs are + # supported, which must be specified in the following format: + # `gs://bucket_name/object_name` (other URI formats return + # google.rpc.Code.INVALID_ARGUMENT). For more information, see + # [Request URIs](https://cloud.google.com/storage/docs/reference-uris). + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content = args[:content] if args.key?(:content) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Provides information to the recognizer that specifies how to process the + # request. + class RecognitionConfig + include Google::Apis::Core::Hashable + + # *Required* Encoding of audio data sent in all `RecognitionAudio` messages. + # Corresponds to the JSON property `encoding` + # @return [String] + attr_accessor :encoding + + # *Optional* The language of the supplied audio as a BCP-47 language tag. + # Example: "en-GB" https://www.rfc-editor.org/rfc/bcp/bcp47.txt + # If omitted, defaults to "en-US". See + # [Language Support](https://cloud.google.com/speech/docs/languages) + # for a list of the currently supported language codes. + # Corresponds to the JSON property `languageCode` + # @return [String] + attr_accessor :language_code + + # *Optional* Maximum number of recognition hypotheses to be returned. + # Specifically, the maximum number of `SpeechRecognitionAlternative` messages + # within each `SpeechRecognitionResult`. + # The server may return fewer than `max_alternatives`. + # Valid values are `0`-`30`. A value of `0` or `1` will return a maximum of + # one. If omitted, will return a maximum of one. + # Corresponds to the JSON property `maxAlternatives` + # @return [Fixnum] + attr_accessor :max_alternatives + + # *Optional* If set to `true`, the server will attempt to filter out + # profanities, replacing all but the initial character in each filtered word + # with asterisks, e.g. "f***". If set to `false` or omitted, profanities + # won't be filtered out. + # Corresponds to the JSON property `profanityFilter` + # @return [Boolean] + attr_accessor :profanity_filter + alias_method :profanity_filter?, :profanity_filter + + # *Required* Sample rate in Hertz of the audio data sent in all + # `RecognitionAudio` messages. Valid values are: 8000-48000. + # 16000 is optimal. For best results, set the sampling rate of the audio + # source to 16000 Hz. If that's not possible, use the native sample rate of + # the audio source (instead of re-sampling). + # Corresponds to the JSON property `sampleRate` + # @return [Fixnum] + attr_accessor :sample_rate + + # Provides "hints" to the speech recognizer to favor specific words and phrases + # in the results. + # Corresponds to the JSON property `speechContext` + # @return [Google::Apis::SpeechV1beta1::SpeechContext] + attr_accessor :speech_context + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @encoding = args[:encoding] if args.key?(:encoding) + @language_code = args[:language_code] if args.key?(:language_code) + @max_alternatives = args[:max_alternatives] if args.key?(:max_alternatives) + @profanity_filter = args[:profanity_filter] if args.key?(:profanity_filter) + @sample_rate = args[:sample_rate] if args.key?(:sample_rate) + @speech_context = args[:speech_context] if args.key?(:speech_context) end end @@ -265,8 +372,80 @@ module Google end end - # The top-level message sent by the client for the `AsyncRecognize` method. - class AsyncRecognizeRequest + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # The top-level message sent by the client for the `SyncRecognize` method. + class SyncRecognizeRequest include Google::Apis::Core::Hashable # Contains audio data in the encoding specified in the `RecognitionConfig`. @@ -294,30 +473,17 @@ module Google end end - # Contains audio data in the encoding specified in the `RecognitionConfig`. - # Either `content` or `uri` must be supplied. Supplying both or neither - # returns google.rpc.Code.INVALID_ARGUMENT. See - # [audio limits](https://cloud.google.com/speech/limits#content). - class RecognitionAudio + # The only message returned to the client by `SyncRecognize`. method. It + # contains the result as zero or more sequential `SpeechRecognitionResult` + # messages. + class SyncRecognizeResponse include Google::Apis::Core::Hashable - # The audio data bytes encoded as specified in - # `RecognitionConfig`. Note: as with all bytes fields, protobuffers use a - # pure binary representation, whereas JSON representations use base64. - # Corresponds to the JSON property `content` - # NOTE: Values are automatically base64 encoded/decoded in the client library. - # @return [String] - attr_accessor :content - - # URI that points to a file that contains audio data bytes as specified in - # `RecognitionConfig`. Currently, only Google Cloud Storage URIs are - # supported, which must be specified in the following format: - # `gs://bucket_name/object_name` (other URI formats return - # google.rpc.Code.INVALID_ARGUMENT). For more information, see - # [Request URIs](https://cloud.google.com/storage/docs/reference-uris). - # Corresponds to the JSON property `uri` - # @return [String] - attr_accessor :uri + # *Output-only* Sequential list of transcription results corresponding to + # sequential portions of audio. + # Corresponds to the JSON property `results` + # @return [Array] + attr_accessor :results def initialize(**args) update!(**args) @@ -325,173 +491,7 @@ module Google # Update properties of this object def update!(**args) - @content = args[:content] if args.key?(:content) - @uri = args[:uri] if args.key?(:uri) - end - end - - # This resource represents a long-running operation that is the result of a - # network API call. - class Operation - include Google::Apis::Core::Hashable - - # 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. - # Corresponds to the JSON property `done` - # @return [Boolean] - attr_accessor :done - alias_method :done?, :done - - # 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`. - # Corresponds to the JSON property `response` - # @return [Hash] - attr_accessor :response - - # 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`. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # The `Status` type defines a logical error model that is suitable for different - # programming environments, including REST APIs and RPC APIs. It is used by - # [gRPC](https://github.com/grpc). The error model is designed to be: - # - Simple to use and understand for most users - # - Flexible enough to meet unexpected needs - # # Overview - # The `Status` message contains three pieces of data: error code, error message, - # and error details. The error code should be an enum value of - # google.rpc.Code, but it may accept additional error codes if needed. The - # error message should be a developer-facing English message that helps - # developers *understand* and *resolve* the error. If a localized user-facing - # error message is needed, put the localized message in the error details or - # localize it in the client. The optional error details may contain arbitrary - # information about the error. There is a predefined set of error detail types - # in the package `google.rpc` that can be used for common error conditions. - # # Language mapping - # The `Status` message is the logical representation of the error model, but it - # is not necessarily the actual wire format. When the `Status` message is - # exposed in different client libraries and different wire protocols, it can be - # mapped differently. For example, it will likely be mapped to some exceptions - # in Java, but more likely mapped to some error codes in C. - # # Other uses - # The error model and the `Status` message can be used in a variety of - # environments, either with or without APIs, to provide a - # consistent developer experience across different environments. - # Example uses of this error model include: - # - Partial errors. If a service needs to return partial errors to the client, - # it may embed the `Status` in the normal response to indicate the partial - # errors. - # - Workflow errors. A typical workflow has multiple steps. Each step may - # have a `Status` message for error reporting. - # - Batch operations. If a client uses batch request and batch response, the - # `Status` message should be used directly inside batch response, one for - # each error sub-response. - # - Asynchronous operations. If an API call embeds asynchronous operation - # results in its response, the status of those operations should be - # represented directly using the `Status` message. - # - Logging. If some API errors are stored in logs, the message `Status` could - # be used directly after any stripping needed for security/privacy reasons. - # Corresponds to the JSON property `error` - # @return [Google::Apis::SpeechV1beta1::Status] - attr_accessor :error - - # 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. - # Corresponds to the JSON property `metadata` - # @return [Hash] - attr_accessor :metadata - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @done = args[:done] if args.key?(:done) - @response = args[:response] if args.key?(:response) - @name = args[:name] if args.key?(:name) - @error = args[:error] if args.key?(:error) - @metadata = args[:metadata] if args.key?(:metadata) - end - end - - # Provides information to the recognizer that specifies how to process the - # request. - class RecognitionConfig - include Google::Apis::Core::Hashable - - # *Optional* The language of the supplied audio as a BCP-47 language tag. - # Example: "en-GB" https://www.rfc-editor.org/rfc/bcp/bcp47.txt - # If omitted, defaults to "en-US". See - # [Language Support](https://cloud.google.com/speech/docs/languages) - # for a list of the currently supported language codes. - # Corresponds to the JSON property `languageCode` - # @return [String] - attr_accessor :language_code - - # *Required* Sample rate in Hertz of the audio data sent in all - # `RecognitionAudio` messages. Valid values are: 8000-48000. - # 16000 is optimal. For best results, set the sampling rate of the audio - # source to 16000 Hz. If that's not possible, use the native sample rate of - # the audio source (instead of re-sampling). - # Corresponds to the JSON property `sampleRate` - # @return [Fixnum] - attr_accessor :sample_rate - - # *Optional* If set to `true`, the server will attempt to filter out - # profanities, replacing all but the initial character in each filtered word - # with asterisks, e.g. "f***". If set to `false` or omitted, profanities - # won't be filtered out. - # Corresponds to the JSON property `profanityFilter` - # @return [Boolean] - attr_accessor :profanity_filter - alias_method :profanity_filter?, :profanity_filter - - # Provides "hints" to the speech recognizer to favor specific words and phrases - # in the results. - # Corresponds to the JSON property `speechContext` - # @return [Google::Apis::SpeechV1beta1::SpeechContext] - attr_accessor :speech_context - - # *Required* Encoding of audio data sent in all `RecognitionAudio` messages. - # Corresponds to the JSON property `encoding` - # @return [String] - attr_accessor :encoding - - # *Optional* Maximum number of recognition hypotheses to be returned. - # Specifically, the maximum number of `SpeechRecognitionAlternative` messages - # within each `SpeechRecognitionResult`. - # The server may return fewer than `max_alternatives`. - # Valid values are `0`-`30`. A value of `0` or `1` will return a maximum of - # one. If omitted, will return a maximum of one. - # Corresponds to the JSON property `maxAlternatives` - # @return [Fixnum] - attr_accessor :max_alternatives - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @language_code = args[:language_code] if args.key?(:language_code) - @sample_rate = args[:sample_rate] if args.key?(:sample_rate) - @profanity_filter = args[:profanity_filter] if args.key?(:profanity_filter) - @speech_context = args[:speech_context] if args.key?(:speech_context) - @encoding = args[:encoding] if args.key?(:encoding) - @max_alternatives = args[:max_alternatives] if args.key?(:max_alternatives) + @results = args[:results] if args.key?(:results) end end end diff --git a/generated/google/apis/speech_v1beta1/representations.rb b/generated/google/apis/speech_v1beta1/representations.rb index 6369f4cdb..fc50aca3a 100644 --- a/generated/google/apis/speech_v1beta1/representations.rb +++ b/generated/google/apis/speech_v1beta1/representations.rb @@ -22,19 +22,7 @@ module Google module Apis module SpeechV1beta1 - class SyncRecognizeRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Status - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class SyncRecognizeResponse + class AsyncRecognizeRequest class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport @@ -52,6 +40,24 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RecognitionAudio + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RecognitionConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class SpeechContext class Representation < Google::Apis::Core::JsonRepresentation; end @@ -70,31 +76,25 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class AsyncRecognizeRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class RecognitionAudio - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Operation - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class RecognitionConfig + class Status class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class SyncRecognizeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SyncRecognizeResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AsyncRecognizeRequest # @private class Representation < Google::Apis::Core::JsonRepresentation property :audio, as: 'audio', class: Google::Apis::SpeechV1beta1::RecognitionAudio, decorator: Google::Apis::SpeechV1beta1::RecognitionAudio::Representation @@ -104,23 +104,6 @@ module Google end end - class Status - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :code, as: 'code' - property :message, as: 'message' - collection :details, as: 'details' - end - end - - class SyncRecognizeResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :results, as: 'results', class: Google::Apis::SpeechV1beta1::SpeechRecognitionResult, decorator: Google::Apis::SpeechV1beta1::SpeechRecognitionResult::Representation - - end - end - class Empty # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -130,9 +113,42 @@ module Google class ListOperationsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' collection :operations, as: 'operations', class: Google::Apis::SpeechV1beta1::Operation, decorator: Google::Apis::SpeechV1beta1::Operation::Representation - property :next_page_token, as: 'nextPageToken' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::SpeechV1beta1::Status, decorator: Google::Apis::SpeechV1beta1::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class RecognitionAudio + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content, :base64 => true, as: 'content' + property :uri, as: 'uri' + end + end + + class RecognitionConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :encoding, as: 'encoding' + property :language_code, as: 'languageCode' + property :max_alternatives, as: 'maxAlternatives' + property :profanity_filter, as: 'profanityFilter' + property :sample_rate, as: 'sampleRate' + property :speech_context, as: 'speechContext', class: Google::Apis::SpeechV1beta1::SpeechContext, decorator: Google::Apis::SpeechV1beta1::SpeechContext::Representation + end end @@ -159,7 +175,16 @@ module Google end end - class AsyncRecognizeRequest + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class SyncRecognizeRequest # @private class Representation < Google::Apis::Core::JsonRepresentation property :audio, as: 'audio', class: Google::Apis::SpeechV1beta1::RecognitionAudio, decorator: Google::Apis::SpeechV1beta1::RecognitionAudio::Representation @@ -169,36 +194,11 @@ module Google end end - class RecognitionAudio + class SyncRecognizeResponse # @private class Representation < Google::Apis::Core::JsonRepresentation - property :content, :base64 => true, as: 'content' - property :uri, as: 'uri' - end - end + collection :results, as: 'results', class: Google::Apis::SpeechV1beta1::SpeechRecognitionResult, decorator: Google::Apis::SpeechV1beta1::SpeechRecognitionResult::Representation - class Operation - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :done, as: 'done' - hash :response, as: 'response' - property :name, as: 'name' - property :error, as: 'error', class: Google::Apis::SpeechV1beta1::Status, decorator: Google::Apis::SpeechV1beta1::Status::Representation - - hash :metadata, as: 'metadata' - end - end - - class RecognitionConfig - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :language_code, as: 'languageCode' - property :sample_rate, as: 'sampleRate' - property :profanity_filter, as: 'profanityFilter' - property :speech_context, as: 'speechContext', class: Google::Apis::SpeechV1beta1::SpeechContext, decorator: Google::Apis::SpeechV1beta1::SpeechContext::Representation - - property :encoding, as: 'encoding' - property :max_alternatives, as: 'maxAlternatives' end end end diff --git a/generated/google/apis/speech_v1beta1/service.rb b/generated/google/apis/speech_v1beta1/service.rb index a461be9d6..e2f041e19 100644 --- a/generated/google/apis/speech_v1beta1/service.rb +++ b/generated/google/apis/speech_v1beta1/service.rb @@ -47,6 +47,45 @@ module Google @batch_path = 'batch' end + # Starts asynchronous cancellation on a long-running operation. The server + # makes a best effort to cancel the operation, but success is not + # guaranteed. If the server doesn't support this method, it returns + # `google.rpc.Code.UNIMPLEMENTED`. Clients can use + # Operations.GetOperation or + # other methods to check whether the cancellation succeeded or whether the + # operation completed despite cancellation. On successful cancellation, + # the operation is not deleted; instead, it becomes an operation with + # an Operation.error value with a google.rpc.Status.code of 1, + # corresponding to `Code.CANCELLED`. + # @param [String] name + # The name of the operation resource to be cancelled. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SpeechV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SpeechV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/operations/{+name}:cancel', options) + command.response_representation = Google::Apis::SpeechV1beta1::Empty::Representation + command.response_class = Google::Apis::SpeechV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Deletes a long-running operation. This method indicates that the client is # no longer interested in the operation result. It does not cancel the # operation. If the server doesn't support this method, it returns @@ -121,14 +160,14 @@ module Google # For backwards compatibility, the default name includes the operations # collection id, however overriding users must ensure the name binding # is the parent resource, without the operations collection id. - # @param [String] page_token - # The standard list page token. + # @param [String] filter + # The standard list filter. # @param [String] name # The name of the operation's parent resource. # @param [Fixnum] page_size # The standard list page size. - # @param [String] filter - # The standard list filter. + # @param [String] page_token + # The standard list page token. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -146,53 +185,14 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def list_operations(page_token: nil, name: nil, page_size: nil, filter: nil, fields: nil, quota_user: nil, options: nil, &block) + def list_operations(filter: nil, name: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/operations', options) command.response_representation = Google::Apis::SpeechV1beta1::ListOperationsResponse::Representation command.response_class = Google::Apis::SpeechV1beta1::ListOperationsResponse - command.query['pageToken'] = page_token unless page_token.nil? + command.query['filter'] = filter unless filter.nil? command.query['name'] = name unless name.nil? command.query['pageSize'] = page_size unless page_size.nil? - command.query['filter'] = filter unless filter.nil? - command.query['fields'] = fields unless fields.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Starts asynchronous cancellation on a long-running operation. The server - # makes a best effort to cancel the operation, but success is not - # guaranteed. If the server doesn't support this method, it returns - # `google.rpc.Code.UNIMPLEMENTED`. Clients can use - # Operations.GetOperation or - # other methods to check whether the cancellation succeeded or whether the - # operation completed despite cancellation. On successful cancellation, - # the operation is not deleted; instead, it becomes an operation with - # an Operation.error value with a google.rpc.Status.code of 1, - # corresponding to `Code.CANCELLED`. - # @param [String] name - # The name of the operation resource to be cancelled. - # @param [String] fields - # Selector specifying which fields to include in a partial response. - # @param [String] quota_user - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - # @param [Google::Apis::RequestOptions] options - # Request-specific options - # - # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::SpeechV1beta1::Empty] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::SpeechV1beta1::Empty] - # - # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried - # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification - # @raise [Google::Apis::AuthorizationError] Authorization is required - def cancel_operation(name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:post, 'v1beta1/operations/{+name}:cancel', options) - command.response_representation = Google::Apis::SpeechV1beta1::Empty::Representation - command.response_class = Google::Apis::SpeechV1beta1::Empty - command.params['name'] = name unless name.nil? + command.query['pageToken'] = page_token unless page_token.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) diff --git a/generated/google/apis/sqladmin_v1beta3.rb b/generated/google/apis/sqladmin_v1beta3.rb new file mode 100644 index 000000000..061d49987 --- /dev/null +++ b/generated/google/apis/sqladmin_v1beta3.rb @@ -0,0 +1,38 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/sqladmin_v1beta3/service.rb' +require 'google/apis/sqladmin_v1beta3/classes.rb' +require 'google/apis/sqladmin_v1beta3/representations.rb' + +module Google + module Apis + # Cloud SQL Administration API + # + # Creates and configures Cloud SQL instances, which provide fully-managed MySQL + # databases. + # + # @see https://cloud.google.com/sql/docs/reference/latest + module SqladminV1beta3 + VERSION = 'V1beta3' + REVISION = '20170807' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # Manage your Google SQL Service instances + AUTH_SQLSERVICE_ADMIN = 'https://www.googleapis.com/auth/sqlservice.admin' + end + end +end diff --git a/generated/google/apis/sqladmin_v1beta3/classes.rb b/generated/google/apis/sqladmin_v1beta3/classes.rb new file mode 100644 index 000000000..dc34d5b63 --- /dev/null +++ b/generated/google/apis/sqladmin_v1beta3/classes.rb @@ -0,0 +1,1615 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module SqladminV1beta3 + + # Database instance backup configuration. + class BackupConfiguration + include Google::Apis::Core::Hashable + + # Whether binary log is enabled. If backup configuration is disabled, binary log + # must be disabled as well. + # Corresponds to the JSON property `binaryLogEnabled` + # @return [Boolean] + attr_accessor :binary_log_enabled + alias_method :binary_log_enabled?, :binary_log_enabled + + # Whether this configuration is enabled. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # Identifier for this configuration. This gets generated automatically when a + # backup configuration is created. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # This is always sql#backupConfiguration. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Start time for the daily backup configuration in UTC timezone in the 24 hour + # format - HH:MM. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @binary_log_enabled = args[:binary_log_enabled] if args.key?(:binary_log_enabled) + @enabled = args[:enabled] if args.key?(:enabled) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @start_time = args[:start_time] if args.key?(:start_time) + end + end + + # A database instance backup run resource. + class BackupRun + include Google::Apis::Core::Hashable + + # Backup Configuration identifier. + # Corresponds to the JSON property `backupConfiguration` + # @return [String] + attr_accessor :backup_configuration + + # The due time of this run in UTC timezone in RFC 3339 format, for example 2012- + # 11-15T16:19:00.094Z. + # Corresponds to the JSON property `dueTime` + # @return [DateTime] + attr_accessor :due_time + + # The time the backup operation completed in UTC timezone in RFC 3339 format, + # for example 2012-11-15T16:19:00.094Z. + # Corresponds to the JSON property `endTime` + # @return [DateTime] + attr_accessor :end_time + + # The time the run was enqueued in UTC timezone in RFC 3339 format, for example + # 2012-11-15T16:19:00.094Z. + # Corresponds to the JSON property `enqueuedTime` + # @return [DateTime] + attr_accessor :enqueued_time + + # Database instance operation error. + # Corresponds to the JSON property `error` + # @return [Google::Apis::SqladminV1beta3::OperationError] + attr_accessor :error + + # Name of the database instance. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # This is always sql#backupRun. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The time the backup operation actually started in UTC timezone in RFC 3339 + # format, for example 2012-11-15T16:19:00.094Z. + # Corresponds to the JSON property `startTime` + # @return [DateTime] + attr_accessor :start_time + + # The status of this run. + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @backup_configuration = args[:backup_configuration] if args.key?(:backup_configuration) + @due_time = args[:due_time] if args.key?(:due_time) + @end_time = args[:end_time] if args.key?(:end_time) + @enqueued_time = args[:enqueued_time] if args.key?(:enqueued_time) + @error = args[:error] if args.key?(:error) + @instance = args[:instance] if args.key?(:instance) + @kind = args[:kind] if args.key?(:kind) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + end + end + + # Backup run list results. + class BackupRunsListResponse + include Google::Apis::Core::Hashable + + # A list of backup runs in reverse chronological order of the enqueued time. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # This is always sql#backupRunsList. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The continuation token, used to page through large result sets. Provide this + # value in a subsequent request to return the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Binary log coordinates. + class BinLogCoordinates + include Google::Apis::Core::Hashable + + # Name of the binary log file for a Cloud SQL instance. + # Corresponds to the JSON property `binLogFileName` + # @return [String] + attr_accessor :bin_log_file_name + + # Position (offset) within the binary log file. + # Corresponds to the JSON property `binLogPosition` + # @return [Fixnum] + attr_accessor :bin_log_position + + # This is always sql#binLogCoordinates. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bin_log_file_name = args[:bin_log_file_name] if args.key?(:bin_log_file_name) + @bin_log_position = args[:bin_log_position] if args.key?(:bin_log_position) + @kind = args[:kind] if args.key?(:kind) + end + end + + # Database instance clone context. + class CloneContext + include Google::Apis::Core::Hashable + + # Binary log coordinates. + # Corresponds to the JSON property `binLogCoordinates` + # @return [Google::Apis::SqladminV1beta3::BinLogCoordinates] + attr_accessor :bin_log_coordinates + + # Name of the Cloud SQL instance to be created as a clone. + # Corresponds to the JSON property `destinationInstanceName` + # @return [String] + attr_accessor :destination_instance_name + + # This is always sql#cloneContext. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name of the Cloud SQL instance to be cloned. + # Corresponds to the JSON property `sourceInstanceName` + # @return [String] + attr_accessor :source_instance_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bin_log_coordinates = args[:bin_log_coordinates] if args.key?(:bin_log_coordinates) + @destination_instance_name = args[:destination_instance_name] if args.key?(:destination_instance_name) + @kind = args[:kind] if args.key?(:kind) + @source_instance_name = args[:source_instance_name] if args.key?(:source_instance_name) + end + end + + # MySQL flags for Cloud SQL instances. + class DatabaseFlags + include Google::Apis::Core::Hashable + + # The name of the flag. These flags are passed at instance startup, so include + # both MySQL server options and MySQL system variables. Flags should be + # specified with underscores, not hyphens. For more information, see Configuring + # MySQL Flags in the Google Cloud SQL documentation, as well as the official + # MySQL documentation for server options and system variables. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The value of the flag. Booleans should be set to on for true and off for false. + # This field must be omitted if the flag doesn't take a value. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @value = args[:value] if args.key?(:value) + end + end + + # A Cloud SQL instance resource. + class DatabaseInstance + include Google::Apis::Core::Hashable + + # Connection name of the Cloud SQL instance used in connection strings. + # Corresponds to the JSON property `connectionName` + # @return [String] + attr_accessor :connection_name + + # The current disk usage of the instance in bytes. + # Corresponds to the JSON property `currentDiskSize` + # @return [Fixnum] + attr_accessor :current_disk_size + + # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults + # to MYSQL_5_5. The databaseVersion cannot be changed after instance creation. + # Corresponds to the JSON property `databaseVersion` + # @return [String] + attr_accessor :database_version + + # HTTP 1.1 Entity tag for the resource. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # Name of the Cloud SQL instance. This does not include the project ID. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # The instance type. This can be one of the following. + # CLOUD_SQL_INSTANCE: Regular Cloud SQL instance. + # READ_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica. + # Corresponds to the JSON property `instanceType` + # @return [String] + attr_accessor :instance_type + + # The assigned IP addresses for the instance. + # Corresponds to the JSON property `ipAddresses` + # @return [Array] + attr_accessor :ip_addresses + + # The IPv6 address assigned to the instance. + # Corresponds to the JSON property `ipv6Address` + # @return [String] + attr_accessor :ipv6_address + + # This is always sql#instance. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the instance which will act as master in the replication setup. + # Corresponds to the JSON property `masterInstanceName` + # @return [String] + attr_accessor :master_instance_name + + # The maximum disk size of the instance in bytes. + # Corresponds to the JSON property `maxDiskSize` + # @return [Fixnum] + attr_accessor :max_disk_size + + # The project ID of the project containing the Cloud SQL instance. The Google + # apps domain is prefixed if applicable. + # Corresponds to the JSON property `project` + # @return [String] + attr_accessor :project + + # The geographical region. Can be us-central, asia-east1 or europe-west1. + # Defaults to us-central. The region can not be changed after instance creation. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # The replicas of the instance. + # Corresponds to the JSON property `replicaNames` + # @return [Array] + attr_accessor :replica_names + + # SslCerts Resource + # Corresponds to the JSON property `serverCaCert` + # @return [Google::Apis::SqladminV1beta3::SslCert] + attr_accessor :server_ca_cert + + # The service account email address assigned to the instance. + # Corresponds to the JSON property `serviceAccountEmailAddress` + # @return [String] + attr_accessor :service_account_email_address + + # Database instance settings. + # Corresponds to the JSON property `settings` + # @return [Google::Apis::SqladminV1beta3::Settings] + attr_accessor :settings + + # The current serving state of the Cloud SQL instance. This can be one of the + # following. + # RUNNABLE: The instance is running, or is ready to run when accessed. + # SUSPENDED: The instance is not available, for example due to problems with + # billing. + # PENDING_CREATE: The instance is being created. + # MAINTENANCE: The instance is down for maintenance. + # UNKNOWN_STATE: The state of the instance is unknown. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @connection_name = args[:connection_name] if args.key?(:connection_name) + @current_disk_size = args[:current_disk_size] if args.key?(:current_disk_size) + @database_version = args[:database_version] if args.key?(:database_version) + @etag = args[:etag] if args.key?(:etag) + @instance = args[:instance] if args.key?(:instance) + @instance_type = args[:instance_type] if args.key?(:instance_type) + @ip_addresses = args[:ip_addresses] if args.key?(:ip_addresses) + @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address) + @kind = args[:kind] if args.key?(:kind) + @master_instance_name = args[:master_instance_name] if args.key?(:master_instance_name) + @max_disk_size = args[:max_disk_size] if args.key?(:max_disk_size) + @project = args[:project] if args.key?(:project) + @region = args[:region] if args.key?(:region) + @replica_names = args[:replica_names] if args.key?(:replica_names) + @server_ca_cert = args[:server_ca_cert] if args.key?(:server_ca_cert) + @service_account_email_address = args[:service_account_email_address] if args.key?(:service_account_email_address) + @settings = args[:settings] if args.key?(:settings) + @state = args[:state] if args.key?(:state) + end + end + + # Database instance export context. + class ExportContext + include Google::Apis::Core::Hashable + + # Databases (for example, guestbook) from which the export is made. If + # unspecified, all databases are exported. + # Corresponds to the JSON property `database` + # @return [Array] + attr_accessor :database + + # This is always sql#exportContext. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Tables to export, or that were exported, from the specified database. If you + # specify tables, specify one and only one database. + # Corresponds to the JSON property `table` + # @return [Array] + attr_accessor :table + + # The path to the file in Google Cloud Storage where the export will be stored, + # or where it was already stored. The URI is in the form gs://bucketName/ + # fileName. If the file already exists, the operation fails. If the filename + # ends with .gz, the contents are compressed. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @database = args[:database] if args.key?(:database) + @kind = args[:kind] if args.key?(:kind) + @table = args[:table] if args.key?(:table) + @uri = args[:uri] if args.key?(:uri) + end + end + + # A Google Cloud SQL service flag resource. + class Flag + include Google::Apis::Core::Hashable + + # For STRING flags, a list of strings that the value can be set to. + # Corresponds to the JSON property `allowedStringValues` + # @return [Array] + attr_accessor :allowed_string_values + + # The database version this flag applies to. Currently this can only be [ + # MYSQL_5_5]. + # Corresponds to the JSON property `appliesTo` + # @return [Array] + attr_accessor :applies_to + + # This is always sql#flag. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # For INTEGER flags, the maximum allowed value. + # Corresponds to the JSON property `maxValue` + # @return [Fixnum] + attr_accessor :max_value + + # For INTEGER flags, the minimum allowed value. + # Corresponds to the JSON property `minValue` + # @return [Fixnum] + attr_accessor :min_value + + # This is the name of the flag. Flag names always use underscores, not hyphens, + # e.g. max_allowed_packet + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The type of the flag. Flags are typed to being BOOLEAN, STRING, INTEGER or + # NONE. NONE is used for flags which do not take a value, such as + # skip_grant_tables. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @allowed_string_values = args[:allowed_string_values] if args.key?(:allowed_string_values) + @applies_to = args[:applies_to] if args.key?(:applies_to) + @kind = args[:kind] if args.key?(:kind) + @max_value = args[:max_value] if args.key?(:max_value) + @min_value = args[:min_value] if args.key?(:min_value) + @name = args[:name] if args.key?(:name) + @type = args[:type] if args.key?(:type) + end + end + + # Flags list response. + class FlagsListResponse + include Google::Apis::Core::Hashable + + # List of flags. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # This is always sql#flagsList. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # Database instance import context. + class ImportContext + include Google::Apis::Core::Hashable + + # The database (for example, guestbook) to which the import is made. If not set, + # it is assumed that the database is specified in the file to be imported. + # Corresponds to the JSON property `database` + # @return [String] + attr_accessor :database + + # This is always sql#importContext. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # A path to the MySQL dump file in Google Cloud Storage from which the import is + # made. The URI is in the form gs://bucketName/fileName. Compressed gzip files (. + # gz) are also supported. + # Corresponds to the JSON property `uri` + # @return [Array] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @database = args[:database] if args.key?(:database) + @kind = args[:kind] if args.key?(:kind) + @uri = args[:uri] if args.key?(:uri) + end + end + + # An Operations resource contains information about database instance operations + # such as create, delete, and restart. Operations resources are created in + # response to operations that were initiated; you never create them directly. + class InstanceOperation + include Google::Apis::Core::Hashable + + # The time this operation finished in UTC timezone in RFC 3339 format, for + # example 2012-11-15T16:19:00.094Z. + # Corresponds to the JSON property `endTime` + # @return [DateTime] + attr_accessor :end_time + + # The time this operation was enqueued in UTC timezone in RFC 3339 format, for + # example 2012-11-15T16:19:00.094Z. + # Corresponds to the JSON property `enqueuedTime` + # @return [DateTime] + attr_accessor :enqueued_time + + # The error(s) encountered by this operation. Only set if the operation results + # in an error. + # Corresponds to the JSON property `error` + # @return [Array] + attr_accessor :error + + # Database instance export context. + # Corresponds to the JSON property `exportContext` + # @return [Google::Apis::SqladminV1beta3::ExportContext] + attr_accessor :export_context + + # Database instance import context. + # Corresponds to the JSON property `importContext` + # @return [Google::Apis::SqladminV1beta3::ImportContext] + attr_accessor :import_context + + # Name of the database instance. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # This is always sql#instanceOperation. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + # The type of the operation. Valid values are CREATE, DELETE, UPDATE, RESTART, + # IMPORT, EXPORT, BACKUP_VOLUME, RESTORE_VOLUME. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The time this operation actually started in UTC timezone in RFC 3339 format, + # for example 2012-11-15T16:19:00.094Z. + # Corresponds to the JSON property `startTime` + # @return [DateTime] + attr_accessor :start_time + + # The state of an operation. Valid values are PENDING, RUNNING, DONE, UNKNOWN. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # The email address of the user who initiated this operation. + # Corresponds to the JSON property `userEmailAddress` + # @return [String] + attr_accessor :user_email_address + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end_time = args[:end_time] if args.key?(:end_time) + @enqueued_time = args[:enqueued_time] if args.key?(:enqueued_time) + @error = args[:error] if args.key?(:error) + @export_context = args[:export_context] if args.key?(:export_context) + @import_context = args[:import_context] if args.key?(:import_context) + @instance = args[:instance] if args.key?(:instance) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @start_time = args[:start_time] if args.key?(:start_time) + @state = args[:state] if args.key?(:state) + @user_email_address = args[:user_email_address] if args.key?(:user_email_address) + end + end + + # Database instance set root password request. + class InstanceSetRootPasswordRequest + include Google::Apis::Core::Hashable + + # Database instance set root password context. + # Corresponds to the JSON property `setRootPasswordContext` + # @return [Google::Apis::SqladminV1beta3::SetRootPasswordContext] + attr_accessor :set_root_password_context + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @set_root_password_context = args[:set_root_password_context] if args.key?(:set_root_password_context) + end + end + + # Database instance clone request. + class InstancesCloneRequest + include Google::Apis::Core::Hashable + + # Database instance clone context. + # Corresponds to the JSON property `cloneContext` + # @return [Google::Apis::SqladminV1beta3::CloneContext] + attr_accessor :clone_context + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @clone_context = args[:clone_context] if args.key?(:clone_context) + end + end + + # Database instance clone response. + class InstancesCloneResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesClone. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An unique identifier for the operation associated with the cloned instance. + # You can use this identifier to retrieve the Operations resource, which has + # information about the operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance delete response. + class InstancesDeleteResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesDelete. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance export request. + class InstancesExportRequest + include Google::Apis::Core::Hashable + + # Database instance export context. + # Corresponds to the JSON property `exportContext` + # @return [Google::Apis::SqladminV1beta3::ExportContext] + attr_accessor :export_context + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @export_context = args[:export_context] if args.key?(:export_context) + end + end + + # Database instance export response. + class InstancesExportResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesExport. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance import request. + class InstancesImportRequest + include Google::Apis::Core::Hashable + + # Database instance import context. + # Corresponds to the JSON property `importContext` + # @return [Google::Apis::SqladminV1beta3::ImportContext] + attr_accessor :import_context + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @import_context = args[:import_context] if args.key?(:import_context) + end + end + + # Database instance import response. + class InstancesImportResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesImport. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance insert response. + class InstancesInsertResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesInsert. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instances list response. + class InstancesListResponse + include Google::Apis::Core::Hashable + + # List of database instance resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # This is always sql#instancesList. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The continuation token, used to page through large result sets. Provide this + # value in a subsequent request to return the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Database promote read replica response. + class InstancesPromoteReplicaResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesPromoteReplica. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance resetSslConfig response. + class InstancesResetSslConfigResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesResetSslConfig. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. All ssl client certificates will be deleted and a new server + # certificate will be created. Does not take effect until the next instance + # restart. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance restart response. + class InstancesRestartResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesRestart. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance restore backup response. + class InstancesRestoreBackupResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesRestoreBackup. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance set root password response. + class InstancesSetRootPasswordResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesSetRootPassword. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # Database instance update response. + class InstancesUpdateResponse + include Google::Apis::Core::Hashable + + # This is always sql#instancesUpdate. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve information about the operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # IP Management configuration. + class IpConfiguration + include Google::Apis::Core::Hashable + + # The list of external networks that are allowed to connect to the instance + # using the IP. In CIDR notation, also known as 'slash' notation (e.g. 192.168. + # 100.0/24). + # Corresponds to the JSON property `authorizedNetworks` + # @return [Array] + attr_accessor :authorized_networks + + # Whether the instance should be assigned an IP address or not. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + # This is always sql#ipConfiguration. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Whether SSL connections over IP should be enforced or not. + # Corresponds to the JSON property `requireSsl` + # @return [Boolean] + attr_accessor :require_ssl + alias_method :require_ssl?, :require_ssl + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @authorized_networks = args[:authorized_networks] if args.key?(:authorized_networks) + @enabled = args[:enabled] if args.key?(:enabled) + @kind = args[:kind] if args.key?(:kind) + @require_ssl = args[:require_ssl] if args.key?(:require_ssl) + end + end + + # Database instance IP Mapping. + class IpMapping + include Google::Apis::Core::Hashable + + # The IP address assigned. + # Corresponds to the JSON property `ipAddress` + # @return [String] + attr_accessor :ip_address + + # The due time for this IP to be retired in RFC 3339 format, for example 2012-11- + # 15T16:19:00.094Z. This field is only available when the IP is scheduled to be + # retired. + # Corresponds to the JSON property `timeToRetire` + # @return [DateTime] + attr_accessor :time_to_retire + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @time_to_retire = args[:time_to_retire] if args.key?(:time_to_retire) + end + end + + # Preferred location. This specifies where a Cloud SQL instance should + # preferably be located, either in a specific Compute Engine zone, or co-located + # with an App Engine application. Note that if the preferred location is not + # available, the instance will be located as close as possible within the region. + # Only one location may be specified. + class LocationPreference + include Google::Apis::Core::Hashable + + # The App Engine application to follow, it must be in the same region as the + # Cloud SQL instance. + # Corresponds to the JSON property `followGaeApplication` + # @return [String] + attr_accessor :follow_gae_application + + # This is always sql#locationPreference. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.). + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @follow_gae_application = args[:follow_gae_application] if args.key?(:follow_gae_application) + @kind = args[:kind] if args.key?(:kind) + @zone = args[:zone] if args.key?(:zone) + end + end + + # Database instance operation error. + class OperationError + include Google::Apis::Core::Hashable + + # Identifies the specific error that occurred. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # This is always sql#operationError. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @kind = args[:kind] if args.key?(:kind) + end + end + + # Database instance list operations response. + class OperationsListResponse + include Google::Apis::Core::Hashable + + # List of operation resources. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # This is always sql#operationsList. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The continuation token, used to page through large result sets. Provide this + # value in a subsequent request to return the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Database instance set root password context. + class SetRootPasswordContext + include Google::Apis::Core::Hashable + + # This is always sql#setRootUserContext. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The password for the root user. + # Corresponds to the JSON property `password` + # @return [String] + attr_accessor :password + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @password = args[:password] if args.key?(:password) + end + end + + # Database instance settings. + class Settings + include Google::Apis::Core::Hashable + + # 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. + # ALWAYS: The instance should always be active. + # NEVER: The instance should never be activated. + # ON_DEMAND: The instance is activated upon receiving requests. + # Corresponds to the JSON property `activationPolicy` + # @return [String] + attr_accessor :activation_policy + + # The App Engine app IDs that can access this instance. + # Corresponds to the JSON property `authorizedGaeApplications` + # @return [Array] + attr_accessor :authorized_gae_applications + + # The daily backup configuration for the instance. + # Corresponds to the JSON property `backupConfiguration` + # @return [Array] + attr_accessor :backup_configuration + + # The database flags passed to the instance at startup. + # Corresponds to the JSON property `databaseFlags` + # @return [Array] + attr_accessor :database_flags + + # Configuration specific to read replica instance. Indicates whether replication + # is enabled or not. + # Corresponds to the JSON property `databaseReplicationEnabled` + # @return [Boolean] + attr_accessor :database_replication_enabled + alias_method :database_replication_enabled?, :database_replication_enabled + + # IP Management configuration. + # Corresponds to the JSON property `ipConfiguration` + # @return [Google::Apis::SqladminV1beta3::IpConfiguration] + attr_accessor :ip_configuration + + # This is always sql#settings. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Preferred location. This specifies where a Cloud SQL instance should + # preferably be located, either in a specific Compute Engine zone, or co-located + # with an App Engine application. Note that if the preferred location is not + # available, the instance will be located as close as possible within the region. + # Only one location may be specified. + # Corresponds to the JSON property `locationPreference` + # @return [Google::Apis::SqladminV1beta3::LocationPreference] + attr_accessor :location_preference + + # The pricing plan for this instance. This can be either PER_USE or PACKAGE. + # Corresponds to the JSON property `pricingPlan` + # @return [String] + attr_accessor :pricing_plan + + # The type of replication this instance uses. This can be either ASYNCHRONOUS or + # SYNCHRONOUS. + # Corresponds to the JSON property `replicationType` + # @return [String] + attr_accessor :replication_type + + # The version of instance settings. This is a required field for update method + # to make sure concurrent updates are handled properly. During update, use the + # most recent settingsVersion value for this instance and do not try to update + # this value. + # Corresponds to the JSON property `settingsVersion` + # @return [Fixnum] + attr_accessor :settings_version + + # The tier of service for this instance, for example D1, D2. For more + # information, see pricing. + # Corresponds to the JSON property `tier` + # @return [String] + attr_accessor :tier + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @activation_policy = args[:activation_policy] if args.key?(:activation_policy) + @authorized_gae_applications = args[:authorized_gae_applications] if args.key?(:authorized_gae_applications) + @backup_configuration = args[:backup_configuration] if args.key?(:backup_configuration) + @database_flags = args[:database_flags] if args.key?(:database_flags) + @database_replication_enabled = args[:database_replication_enabled] if args.key?(:database_replication_enabled) + @ip_configuration = args[:ip_configuration] if args.key?(:ip_configuration) + @kind = args[:kind] if args.key?(:kind) + @location_preference = args[:location_preference] if args.key?(:location_preference) + @pricing_plan = args[:pricing_plan] if args.key?(:pricing_plan) + @replication_type = args[:replication_type] if args.key?(:replication_type) + @settings_version = args[:settings_version] if args.key?(:settings_version) + @tier = args[:tier] if args.key?(:tier) + end + end + + # SslCerts Resource + class SslCert + include Google::Apis::Core::Hashable + + # PEM representation. + # Corresponds to the JSON property `cert` + # @return [String] + attr_accessor :cert + + # Serial number, as extracted from the certificate. + # Corresponds to the JSON property `certSerialNumber` + # @return [String] + attr_accessor :cert_serial_number + + # User supplied name. Constrained to [a-zA-Z.-_ ]+. + # Corresponds to the JSON property `commonName` + # @return [String] + attr_accessor :common_name + + # Time when the certificate was created. + # Corresponds to the JSON property `createTime` + # @return [DateTime] + attr_accessor :create_time + + # Time when the certificate expires. + # Corresponds to the JSON property `expirationTime` + # @return [DateTime] + attr_accessor :expiration_time + + # Name of the database instance. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # This is always sql#sslCert. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Sha1 Fingerprint. + # Corresponds to the JSON property `sha1Fingerprint` + # @return [String] + attr_accessor :sha1_fingerprint + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cert = args[:cert] if args.key?(:cert) + @cert_serial_number = args[:cert_serial_number] if args.key?(:cert_serial_number) + @common_name = args[:common_name] if args.key?(:common_name) + @create_time = args[:create_time] if args.key?(:create_time) + @expiration_time = args[:expiration_time] if args.key?(:expiration_time) + @instance = args[:instance] if args.key?(:instance) + @kind = args[:kind] if args.key?(:kind) + @sha1_fingerprint = args[:sha1_fingerprint] if args.key?(:sha1_fingerprint) + end + end + + # SslCertDetail. + class SslCertDetail + include Google::Apis::Core::Hashable + + # SslCerts Resource + # Corresponds to the JSON property `certInfo` + # @return [Google::Apis::SqladminV1beta3::SslCert] + attr_accessor :cert_info + + # The private key for the client cert, in pem format. Keep private in order to + # protect your security. + # Corresponds to the JSON property `certPrivateKey` + # @return [String] + attr_accessor :cert_private_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cert_info = args[:cert_info] if args.key?(:cert_info) + @cert_private_key = args[:cert_private_key] if args.key?(:cert_private_key) + end + end + + # SslCert delete response. + class SslCertsDeleteResponse + include Google::Apis::Core::Hashable + + # This is always sql#sslCertsDelete. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # An identifier that uniquely identifies the operation. You can use this + # identifier to retrieve the Operations resource that has information about the + # operation. + # Corresponds to the JSON property `operation` + # @return [String] + attr_accessor :operation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @operation = args[:operation] if args.key?(:operation) + end + end + + # SslCerts insert request. + class SslCertsInsertRequest + include Google::Apis::Core::Hashable + + # User supplied name. Must be a distinct name from the other certificates for + # this instance. New certificates will not be usable until the instance is + # restarted. + # Corresponds to the JSON property `commonName` + # @return [String] + attr_accessor :common_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @common_name = args[:common_name] if args.key?(:common_name) + end + end + + # SslCert insert response. + class SslCertsInsertResponse + include Google::Apis::Core::Hashable + + # SslCertDetail. + # Corresponds to the JSON property `clientCert` + # @return [Google::Apis::SqladminV1beta3::SslCertDetail] + attr_accessor :client_cert + + # This is always sql#sslCertsInsert. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # SslCerts Resource + # Corresponds to the JSON property `serverCaCert` + # @return [Google::Apis::SqladminV1beta3::SslCert] + attr_accessor :server_ca_cert + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @client_cert = args[:client_cert] if args.key?(:client_cert) + @kind = args[:kind] if args.key?(:kind) + @server_ca_cert = args[:server_ca_cert] if args.key?(:server_ca_cert) + end + end + + # SslCerts list response. + class SslCertsListResponse + include Google::Apis::Core::Hashable + + # List of client certificates for the instance. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # This is always sql#sslCertsList. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A Google Cloud SQL service tier resource. + class Tier + include Google::Apis::Core::Hashable + + # The maximum disk size of this tier in bytes. + # Corresponds to the JSON property `DiskQuota` + # @return [Fixnum] + attr_accessor :disk_quota + + # The maximum RAM usage of this tier in bytes. + # Corresponds to the JSON property `RAM` + # @return [Fixnum] + attr_accessor :ram + + # This is always sql#tier. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The applicable regions for this tier. + # Corresponds to the JSON property `region` + # @return [Array] + attr_accessor :region + + # An identifier for the service tier, for example D1, D2 etc. For related + # information, see Pricing. + # Corresponds to the JSON property `tier` + # @return [String] + attr_accessor :tier + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @disk_quota = args[:disk_quota] if args.key?(:disk_quota) + @ram = args[:ram] if args.key?(:ram) + @kind = args[:kind] if args.key?(:kind) + @region = args[:region] if args.key?(:region) + @tier = args[:tier] if args.key?(:tier) + end + end + + # Tiers list response. + class TiersListResponse + include Google::Apis::Core::Hashable + + # List of tiers. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # This is always sql#tiersList. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + end + end +end diff --git a/generated/google/apis/sqladmin_v1beta3/representations.rb b/generated/google/apis/sqladmin_v1beta3/representations.rb new file mode 100644 index 000000000..4baebb994 --- /dev/null +++ b/generated/google/apis/sqladmin_v1beta3/representations.rb @@ -0,0 +1,731 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module SqladminV1beta3 + + class BackupConfiguration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackupRun + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackupRunsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BinLogCoordinates + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CloneContext + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DatabaseFlags + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DatabaseInstance + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ExportContext + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Flag + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FlagsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ImportContext + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceOperation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceSetRootPasswordRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesCloneRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesCloneResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesDeleteResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesExportRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesExportResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesImportRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesImportResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesInsertResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesPromoteReplicaResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesResetSslConfigResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesRestartResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesRestoreBackupResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesSetRootPasswordResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstancesUpdateResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IpConfiguration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IpMapping + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LocationPreference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationError + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetRootPasswordContext + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Settings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCert + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCertDetail + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCertsDeleteResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCertsInsertRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCertsInsertResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SslCertsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Tier + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TiersListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BackupConfiguration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :binary_log_enabled, as: 'binaryLogEnabled' + property :enabled, as: 'enabled' + property :id, as: 'id' + property :kind, as: 'kind' + property :start_time, as: 'startTime' + end + end + + class BackupRun + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :backup_configuration, as: 'backupConfiguration' + property :due_time, as: 'dueTime', type: DateTime + + property :end_time, as: 'endTime', type: DateTime + + property :enqueued_time, as: 'enqueuedTime', type: DateTime + + property :error, as: 'error', class: Google::Apis::SqladminV1beta3::OperationError, decorator: Google::Apis::SqladminV1beta3::OperationError::Representation + + property :instance, as: 'instance' + property :kind, as: 'kind' + property :start_time, as: 'startTime', type: DateTime + + property :status, as: 'status' + end + end + + class BackupRunsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::SqladminV1beta3::BackupRun, decorator: Google::Apis::SqladminV1beta3::BackupRun::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class BinLogCoordinates + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bin_log_file_name, as: 'binLogFileName' + property :bin_log_position, :numeric_string => true, as: 'binLogPosition' + property :kind, as: 'kind' + end + end + + class CloneContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bin_log_coordinates, as: 'binLogCoordinates', class: Google::Apis::SqladminV1beta3::BinLogCoordinates, decorator: Google::Apis::SqladminV1beta3::BinLogCoordinates::Representation + + property :destination_instance_name, as: 'destinationInstanceName' + property :kind, as: 'kind' + property :source_instance_name, as: 'sourceInstanceName' + end + end + + class DatabaseFlags + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :value, as: 'value' + end + end + + class DatabaseInstance + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :connection_name, as: 'connectionName' + property :current_disk_size, :numeric_string => true, as: 'currentDiskSize' + property :database_version, as: 'databaseVersion' + property :etag, as: 'etag' + property :instance, as: 'instance' + property :instance_type, as: 'instanceType' + collection :ip_addresses, as: 'ipAddresses', class: Google::Apis::SqladminV1beta3::IpMapping, decorator: Google::Apis::SqladminV1beta3::IpMapping::Representation + + property :ipv6_address, as: 'ipv6Address' + property :kind, as: 'kind' + property :master_instance_name, as: 'masterInstanceName' + property :max_disk_size, :numeric_string => true, as: 'maxDiskSize' + property :project, as: 'project' + property :region, as: 'region' + collection :replica_names, as: 'replicaNames' + property :server_ca_cert, as: 'serverCaCert', class: Google::Apis::SqladminV1beta3::SslCert, decorator: Google::Apis::SqladminV1beta3::SslCert::Representation + + property :service_account_email_address, as: 'serviceAccountEmailAddress' + property :settings, as: 'settings', class: Google::Apis::SqladminV1beta3::Settings, decorator: Google::Apis::SqladminV1beta3::Settings::Representation + + property :state, as: 'state' + end + end + + class ExportContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :database, as: 'database' + property :kind, as: 'kind' + collection :table, as: 'table' + property :uri, as: 'uri' + end + end + + class Flag + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :allowed_string_values, as: 'allowedStringValues' + collection :applies_to, as: 'appliesTo' + property :kind, as: 'kind' + property :max_value, :numeric_string => true, as: 'maxValue' + property :min_value, :numeric_string => true, as: 'minValue' + property :name, as: 'name' + property :type, as: 'type' + end + end + + class FlagsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::SqladminV1beta3::Flag, decorator: Google::Apis::SqladminV1beta3::Flag::Representation + + property :kind, as: 'kind' + end + end + + class ImportContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :database, as: 'database' + property :kind, as: 'kind' + collection :uri, as: 'uri' + end + end + + class InstanceOperation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end_time, as: 'endTime', type: DateTime + + property :enqueued_time, as: 'enqueuedTime', type: DateTime + + collection :error, as: 'error', class: Google::Apis::SqladminV1beta3::OperationError, decorator: Google::Apis::SqladminV1beta3::OperationError::Representation + + property :export_context, as: 'exportContext', class: Google::Apis::SqladminV1beta3::ExportContext, decorator: Google::Apis::SqladminV1beta3::ExportContext::Representation + + property :import_context, as: 'importContext', class: Google::Apis::SqladminV1beta3::ImportContext, decorator: Google::Apis::SqladminV1beta3::ImportContext::Representation + + property :instance, as: 'instance' + property :kind, as: 'kind' + property :operation, as: 'operation' + property :operation_type, as: 'operationType' + property :start_time, as: 'startTime', type: DateTime + + property :state, as: 'state' + property :user_email_address, as: 'userEmailAddress' + end + end + + class InstanceSetRootPasswordRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :set_root_password_context, as: 'setRootPasswordContext', class: Google::Apis::SqladminV1beta3::SetRootPasswordContext, decorator: Google::Apis::SqladminV1beta3::SetRootPasswordContext::Representation + + end + end + + class InstancesCloneRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :clone_context, as: 'cloneContext', class: Google::Apis::SqladminV1beta3::CloneContext, decorator: Google::Apis::SqladminV1beta3::CloneContext::Representation + + end + end + + class InstancesCloneResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesDeleteResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesExportRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :export_context, as: 'exportContext', class: Google::Apis::SqladminV1beta3::ExportContext, decorator: Google::Apis::SqladminV1beta3::ExportContext::Representation + + end + end + + class InstancesExportResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesImportRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :import_context, as: 'importContext', class: Google::Apis::SqladminV1beta3::ImportContext, decorator: Google::Apis::SqladminV1beta3::ImportContext::Representation + + end + end + + class InstancesImportResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesInsertResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::SqladminV1beta3::DatabaseInstance, decorator: Google::Apis::SqladminV1beta3::DatabaseInstance::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class InstancesPromoteReplicaResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesResetSslConfigResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesRestartResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesRestoreBackupResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesSetRootPasswordResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class InstancesUpdateResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class IpConfiguration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :authorized_networks, as: 'authorizedNetworks' + property :enabled, as: 'enabled' + property :kind, as: 'kind' + property :require_ssl, as: 'requireSsl' + end + end + + class IpMapping + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ip_address, as: 'ipAddress' + property :time_to_retire, as: 'timeToRetire', type: DateTime + + end + end + + class LocationPreference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :follow_gae_application, as: 'followGaeApplication' + property :kind, as: 'kind' + property :zone, as: 'zone' + end + end + + class OperationError + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :kind, as: 'kind' + end + end + + class OperationsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::SqladminV1beta3::InstanceOperation, decorator: Google::Apis::SqladminV1beta3::InstanceOperation::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class SetRootPasswordContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :password, as: 'password' + end + end + + class Settings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :activation_policy, as: 'activationPolicy' + collection :authorized_gae_applications, as: 'authorizedGaeApplications' + collection :backup_configuration, as: 'backupConfiguration', class: Google::Apis::SqladminV1beta3::BackupConfiguration, decorator: Google::Apis::SqladminV1beta3::BackupConfiguration::Representation + + collection :database_flags, as: 'databaseFlags', class: Google::Apis::SqladminV1beta3::DatabaseFlags, decorator: Google::Apis::SqladminV1beta3::DatabaseFlags::Representation + + property :database_replication_enabled, as: 'databaseReplicationEnabled' + property :ip_configuration, as: 'ipConfiguration', class: Google::Apis::SqladminV1beta3::IpConfiguration, decorator: Google::Apis::SqladminV1beta3::IpConfiguration::Representation + + property :kind, as: 'kind' + property :location_preference, as: 'locationPreference', class: Google::Apis::SqladminV1beta3::LocationPreference, decorator: Google::Apis::SqladminV1beta3::LocationPreference::Representation + + property :pricing_plan, as: 'pricingPlan' + property :replication_type, as: 'replicationType' + property :settings_version, :numeric_string => true, as: 'settingsVersion' + property :tier, as: 'tier' + end + end + + class SslCert + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cert, as: 'cert' + property :cert_serial_number, as: 'certSerialNumber' + property :common_name, as: 'commonName' + property :create_time, as: 'createTime', type: DateTime + + property :expiration_time, as: 'expirationTime', type: DateTime + + property :instance, as: 'instance' + property :kind, as: 'kind' + property :sha1_fingerprint, as: 'sha1Fingerprint' + end + end + + class SslCertDetail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cert_info, as: 'certInfo', class: Google::Apis::SqladminV1beta3::SslCert, decorator: Google::Apis::SqladminV1beta3::SslCert::Representation + + property :cert_private_key, as: 'certPrivateKey' + end + end + + class SslCertsDeleteResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :operation, as: 'operation' + end + end + + class SslCertsInsertRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :common_name, as: 'commonName' + end + end + + class SslCertsInsertResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :client_cert, as: 'clientCert', class: Google::Apis::SqladminV1beta3::SslCertDetail, decorator: Google::Apis::SqladminV1beta3::SslCertDetail::Representation + + property :kind, as: 'kind' + property :server_ca_cert, as: 'serverCaCert', class: Google::Apis::SqladminV1beta3::SslCert, decorator: Google::Apis::SqladminV1beta3::SslCert::Representation + + end + end + + class SslCertsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::SqladminV1beta3::SslCert, decorator: Google::Apis::SqladminV1beta3::SslCert::Representation + + property :kind, as: 'kind' + end + end + + class Tier + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :disk_quota, :numeric_string => true, as: 'DiskQuota' + property :ram, :numeric_string => true, as: 'RAM' + property :kind, as: 'kind' + collection :region, as: 'region' + property :tier, as: 'tier' + end + end + + class TiersListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::SqladminV1beta3::Tier, decorator: Google::Apis::SqladminV1beta3::Tier::Representation + + property :kind, as: 'kind' + end + end + end + end +end diff --git a/generated/google/apis/sqladmin_v1beta3/service.rb b/generated/google/apis/sqladmin_v1beta3/service.rb new file mode 100644 index 000000000..02e309965 --- /dev/null +++ b/generated/google/apis/sqladmin_v1beta3/service.rb @@ -0,0 +1,1045 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module SqladminV1beta3 + # Cloud SQL Administration API + # + # Creates and configures Cloud SQL instances, which provide fully-managed MySQL + # databases. + # + # @example + # require 'google/apis/sqladmin_v1beta3' + # + # Sqladmin = Google::Apis::SqladminV1beta3 # Alias the module + # service = Sqladmin::SQLAdminService.new + # + # @see https://cloud.google.com/sql/docs/reference/latest + class SQLAdminService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'sql/v1beta3/') + @batch_path = 'batch' + end + + # Retrieves information about a specified backup run for a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] backup_configuration + # Identifier for the backup configuration. This gets generated automatically + # when a backup configuration is created. + # @param [String] due_time + # The start time of the four-hour backup window. The backup can occur any time + # in the window. The time is in RFC 3339 format, for example 2012-11-15T16:19:00. + # 094Z. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::BackupRun] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::BackupRun] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_backup_run(project, instance, backup_configuration, due_time, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances/{instance}/backupRuns/{backupConfiguration}', options) + command.response_representation = Google::Apis::SqladminV1beta3::BackupRun::Representation + command.response_class = Google::Apis::SqladminV1beta3::BackupRun + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.params['backupConfiguration'] = backup_configuration unless backup_configuration.nil? + command.query['dueTime'] = due_time unless due_time.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all backup runs associated with a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] backup_configuration + # Identifier for the backup configuration. This gets generated automatically + # when a backup configuration is created. + # @param [Fixnum] max_results + # Maximum number of backup runs per response. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::BackupRunsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::BackupRunsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_backup_runs(project, instance, backup_configuration, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances/{instance}/backupRuns', options) + command.response_representation = Google::Apis::SqladminV1beta3::BackupRunsListResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::BackupRunsListResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['backupConfiguration'] = backup_configuration unless backup_configuration.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all database flags that can be set for Google Cloud SQL instances. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::FlagsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::FlagsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_flags(fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'flags', options) + command.response_representation = Google::Apis::SqladminV1beta3::FlagsListResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::FlagsListResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Cloud SQL instance as a clone of a source instance. + # @param [String] project + # Project ID of the source as well as the clone Cloud SQL instance. + # @param [Google::Apis::SqladminV1beta3::InstancesCloneRequest] instances_clone_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesCloneResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesCloneResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def clone_instance(project, instances_clone_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/clone', options) + command.request_representation = Google::Apis::SqladminV1beta3::InstancesCloneRequest::Representation + command.request_object = instances_clone_request_object + command.response_representation = Google::Apis::SqladminV1beta3::InstancesCloneResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesCloneResponse + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance to be deleted. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesDeleteResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesDeleteResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_instance(project, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'projects/{project}/instances/{instance}', options) + command.response_representation = Google::Apis::SqladminV1beta3::InstancesDeleteResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesDeleteResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a + # MySQL dump file. + # @param [String] project + # Project ID of the project that contains the instance to be exported. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [Google::Apis::SqladminV1beta3::InstancesExportRequest] instances_export_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesExportResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesExportResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def export_instance(project, instance, instances_export_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/export', options) + command.request_representation = Google::Apis::SqladminV1beta3::InstancesExportRequest::Representation + command.request_object = instances_export_request_object + command.response_representation = Google::Apis::SqladminV1beta3::InstancesExportResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesExportResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves information about a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Database instance ID. This does not include the project ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::DatabaseInstance] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::DatabaseInstance] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_instance(project, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances/{instance}', options) + command.response_representation = Google::Apis::SqladminV1beta3::DatabaseInstance::Representation + command.response_class = Google::Apis::SqladminV1beta3::DatabaseInstance + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Imports data into a Cloud SQL instance from a MySQL dump file stored in a + # Google Cloud Storage bucket. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [Google::Apis::SqladminV1beta3::InstancesImportRequest] instances_import_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesImportResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesImportResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def import_instance(project, instance, instances_import_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/import', options) + command.request_representation = Google::Apis::SqladminV1beta3::InstancesImportRequest::Representation + command.request_object = instances_import_request_object + command.response_representation = Google::Apis::SqladminV1beta3::InstancesImportResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesImportResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new Cloud SQL instance. + # @param [String] project + # Project ID of the project to which the newly created Cloud SQL instances + # should belong. + # @param [Google::Apis::SqladminV1beta3::DatabaseInstance] database_instance_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesInsertResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesInsertResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_instance(project, database_instance_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances', options) + command.request_representation = Google::Apis::SqladminV1beta3::DatabaseInstance::Representation + command.request_object = database_instance_object + command.response_representation = Google::Apis::SqladminV1beta3::InstancesInsertResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesInsertResponse + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists instances for a given project, in alphabetical order by instance name. + # @param [String] project + # Project ID of the project for which to list Cloud SQL instances. + # @param [Fixnum] max_results + # The maximum number of results to return per response. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_instances(project, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances', options) + command.response_representation = Google::Apis::SqladminV1beta3::InstancesListResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesListResponse + command.params['project'] = project unless project.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the settings of a Cloud SQL instance. This method supports patch + # semantics. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [Google::Apis::SqladminV1beta3::DatabaseInstance] database_instance_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesUpdateResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesUpdateResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_instance(project, instance, database_instance_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'projects/{project}/instances/{instance}', options) + command.request_representation = Google::Apis::SqladminV1beta3::DatabaseInstance::Representation + command.request_object = database_instance_object + command.response_representation = Google::Apis::SqladminV1beta3::InstancesUpdateResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesUpdateResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Promotes the read replica instance to be a stand-alone Cloud SQL instance. + # @param [String] project + # ID of the project that contains the read replica. + # @param [String] instance + # Cloud SQL read replica instance name. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesPromoteReplicaResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesPromoteReplicaResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def promote_instance_replica(project, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/promoteReplica', options) + command.response_representation = Google::Apis::SqladminV1beta3::InstancesPromoteReplicaResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesPromoteReplicaResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes all client certificates and generates a new server SSL certificate for + # a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesResetSslConfigResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesResetSslConfigResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def reset_instance_ssl_config(project, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/resetSslConfig', options) + command.response_representation = Google::Apis::SqladminV1beta3::InstancesResetSslConfigResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesResetSslConfigResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Restarts a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance to be restarted. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesRestartResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesRestartResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def restart_instance(project, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/restart', options) + command.response_representation = Google::Apis::SqladminV1beta3::InstancesRestartResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesRestartResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Restores a backup of a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] backup_configuration + # The identifier of the backup configuration. This gets generated automatically + # when a backup configuration is created. + # @param [String] due_time + # The start time of the four-hour backup window. The backup can occur any time + # in the window. The time is in RFC 3339 format, for example 2012-11-15T16:19:00. + # 094Z. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesRestoreBackupResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesRestoreBackupResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def restore_instance_backup(project, instance, backup_configuration, due_time, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/restoreBackup', options) + command.response_representation = Google::Apis::SqladminV1beta3::InstancesRestoreBackupResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesRestoreBackupResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['backupConfiguration'] = backup_configuration unless backup_configuration.nil? + command.query['dueTime'] = due_time unless due_time.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Sets the password for the root user of the specified Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [Google::Apis::SqladminV1beta3::InstanceSetRootPasswordRequest] instance_set_root_password_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesSetRootPasswordResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesSetRootPasswordResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_instance_root_password(project, instance, instance_set_root_password_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/setRootPassword', options) + command.request_representation = Google::Apis::SqladminV1beta3::InstanceSetRootPasswordRequest::Representation + command.request_object = instance_set_root_password_request_object + command.response_representation = Google::Apis::SqladminV1beta3::InstancesSetRootPasswordResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesSetRootPasswordResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates the settings of a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [Google::Apis::SqladminV1beta3::DatabaseInstance] database_instance_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstancesUpdateResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstancesUpdateResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_instance(project, instance, database_instance_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'projects/{project}/instances/{instance}', options) + command.request_representation = Google::Apis::SqladminV1beta3::DatabaseInstance::Representation + command.request_object = database_instance_object + command.response_representation = Google::Apis::SqladminV1beta3::InstancesUpdateResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstancesUpdateResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves information about a specific operation that was performed on a Cloud + # SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] operation + # Instance operation ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::InstanceOperation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::InstanceOperation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_operation(project, instance, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances/{instance}/operations/{operation}', options) + command.response_representation = Google::Apis::SqladminV1beta3::InstanceOperation::Representation + command.response_class = Google::Apis::SqladminV1beta3::InstanceOperation + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.params['operation'] = operation unless operation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all operations that have been performed on a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [Fixnum] max_results + # Maximum number of operations per response. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::OperationsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::OperationsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_operations(project, instance, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances/{instance}/operations', options) + command.response_representation = Google::Apis::SqladminV1beta3::OperationsListResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::OperationsListResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an SSL certificate from a Cloud SQL instance. + # @param [String] project + # Project ID of the project that contains the instance to be deleted. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] sha1_fingerprint + # Sha1 FingerPrint. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::SslCertsDeleteResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::SslCertsDeleteResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_ssl_cert(project, instance, sha1_fingerprint, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}', options) + command.response_representation = Google::Apis::SqladminV1beta3::SslCertsDeleteResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::SslCertsDeleteResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.params['sha1Fingerprint'] = sha1_fingerprint unless sha1_fingerprint.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves an SSL certificate as specified by its SHA-1 fingerprint. + # @param [String] project + # Project ID of the project that contains the instance. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] sha1_fingerprint + # Sha1 FingerPrint. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::SslCert] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::SslCert] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_ssl_cert(project, instance, sha1_fingerprint, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances/{instance}/sslCerts/{sha1Fingerprint}', options) + command.response_representation = Google::Apis::SqladminV1beta3::SslCert::Representation + command.response_class = Google::Apis::SqladminV1beta3::SslCert + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.params['sha1Fingerprint'] = sha1_fingerprint unless sha1_fingerprint.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an SSL certificate and returns the certificate, the associated private + # key, and the server certificate authority. + # @param [String] project + # Project ID of the project to which the newly created Cloud SQL instances + # should belong. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [Google::Apis::SqladminV1beta3::SslCertsInsertRequest] ssl_certs_insert_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::SslCertsInsertResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::SslCertsInsertResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_ssl_cert(project, instance, ssl_certs_insert_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'projects/{project}/instances/{instance}/sslCerts', options) + command.request_representation = Google::Apis::SqladminV1beta3::SslCertsInsertRequest::Representation + command.request_object = ssl_certs_insert_request_object + command.response_representation = Google::Apis::SqladminV1beta3::SslCertsInsertResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::SslCertsInsertResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists all of the current SSL certificates defined for a Cloud SQL instance. + # @param [String] project + # Project ID of the project for which to list Cloud SQL instances. + # @param [String] instance + # Cloud SQL instance ID. This does not include the project ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::SslCertsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::SslCertsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_ssl_certs(project, instance, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/instances/{instance}/sslCerts', options) + command.response_representation = Google::Apis::SqladminV1beta3::SslCertsListResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::SslCertsListResponse + command.params['project'] = project unless project.nil? + command.params['instance'] = instance unless instance.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists service tiers that can be used to create Google Cloud SQL instances. + # @param [String] project + # Project ID of the project for which to list tiers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SqladminV1beta3::TiersListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SqladminV1beta3::TiersListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_tiers(project, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'projects/{project}/tiers', options) + command.response_representation = Google::Apis::SqladminV1beta3::TiersListResponse::Representation + command.response_class = Google::Apis::SqladminV1beta3::TiersListResponse + command.params['project'] = project unless project.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/storage_v1beta1.rb b/generated/google/apis/storage_v1beta1.rb new file mode 100644 index 000000000..313a8a907 --- /dev/null +++ b/generated/google/apis/storage_v1beta1.rb @@ -0,0 +1,40 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/storage_v1beta1/service.rb' +require 'google/apis/storage_v1beta1/classes.rb' +require 'google/apis/storage_v1beta1/representations.rb' + +module Google + module Apis + # Cloud Storage JSON API + # + # Lets you store and retrieve potentially-large, immutable data objects. + # + # @see https://developers.google.com/storage/docs/json_api/ + module StorageV1beta1 + VERSION = 'V1beta1' + REVISION = '20170329' + + # Manage your data and permissions in Google Cloud Storage + AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control' + + # View your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only' + + # Manage your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write' + end + end +end diff --git a/generated/google/apis/storage_v1beta1/classes.rb b/generated/google/apis/storage_v1beta1/classes.rb new file mode 100644 index 000000000..cb5d7f6a7 --- /dev/null +++ b/generated/google/apis/storage_v1beta1/classes.rb @@ -0,0 +1,616 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module StorageV1beta1 + + # A bucket. + class Bucket + include Google::Apis::Core::Hashable + + # Access controls on the bucket. + # Corresponds to the JSON property `acl` + # @return [Array] + attr_accessor :acl + + # Default access controls to apply to new objects when no ACL is provided. + # Corresponds to the JSON property `defaultObjectAcl` + # @return [Array] + attr_accessor :default_object_acl + + # The name of the bucket. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For buckets, this is always storage#bucket. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The location of the bucket. Object data for objects in the bucket resides in + # physical storage in this location. Can be US or EU. Defaults to US. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # The owner of the bucket. This will always be the project team's owner group. + # Corresponds to the JSON property `owner` + # @return [Google::Apis::StorageV1beta1::Bucket::Owner] + attr_accessor :owner + + # The project the bucket belongs to. + # Corresponds to the JSON property `projectId` + # @return [Fixnum] + attr_accessor :project_id + + # The URI of this bucket. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Creation time of the bucket in RFC 3339 format. + # Corresponds to the JSON property `timeCreated` + # @return [DateTime] + attr_accessor :time_created + + # The bucket's website configuration. + # Corresponds to the JSON property `website` + # @return [Google::Apis::StorageV1beta1::Bucket::Website] + attr_accessor :website + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @acl = args[:acl] if args.key?(:acl) + @default_object_acl = args[:default_object_acl] if args.key?(:default_object_acl) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @location = args[:location] if args.key?(:location) + @owner = args[:owner] if args.key?(:owner) + @project_id = args[:project_id] if args.key?(:project_id) + @self_link = args[:self_link] if args.key?(:self_link) + @time_created = args[:time_created] if args.key?(:time_created) + @website = args[:website] if args.key?(:website) + end + + # The owner of the bucket. This will always be the project team's owner group. + class Owner + include Google::Apis::Core::Hashable + + # The entity, in the form group-groupId. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + end + end + + # The bucket's website configuration. + class Website + include Google::Apis::Core::Hashable + + # Behaves as the bucket's directory index where missing objects are treated as + # potential directories. + # Corresponds to the JSON property `mainPageSuffix` + # @return [String] + attr_accessor :main_page_suffix + + # The custom object to return when a requested resource is not found. + # Corresponds to the JSON property `notFoundPage` + # @return [String] + attr_accessor :not_found_page + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @main_page_suffix = args[:main_page_suffix] if args.key?(:main_page_suffix) + @not_found_page = args[:not_found_page] if args.key?(:not_found_page) + end + end + end + + # An access-control entry. + class BucketAccessControl + include Google::Apis::Core::Hashable + + # The name of the bucket. + # Corresponds to the JSON property `bucket` + # @return [String] + attr_accessor :bucket + + # The domain associated with the entity, if any. + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # The email address associated with the entity, if any. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The entity holding the permission, in one of the following forms: + # - user-userId + # - user-email + # - group-groupId + # - group-email + # - domain-domain + # - allUsers + # - allAuthenticatedUsers Examples: + # - The user liz@example.com would be user-liz@example.com. + # - The group example@googlegroups.com would be group-example@googlegroups.com. + # - To refer to all members of the Google Apps for Business domain example.com, + # the entity would be domain-example.com. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity, if any. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + # The ID of the access-control entry. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For bucket access control entries, this is always + # storage#bucketAccessControl. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The access permission for the entity. Can be READER, WRITER, or OWNER. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + # The link to this access-control entry. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket = args[:bucket] if args.key?(:bucket) + @domain = args[:domain] if args.key?(:domain) + @email = args[:email] if args.key?(:email) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @role = args[:role] if args.key?(:role) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # An access-control list. + class BucketAccessControls + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of bucket access control entries, this is + # always storage#bucketAccessControls. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A list of buckets. + class Buckets + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of buckets, this is always storage#buckets. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The continuation token, used to page through large result sets. Provide this + # value in a subsequent request to return the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # An object. + class Object + include Google::Apis::Core::Hashable + + # Access controls on the object. + # Corresponds to the JSON property `acl` + # @return [Array] + attr_accessor :acl + + # The bucket containing this object. + # Corresponds to the JSON property `bucket` + # @return [String] + attr_accessor :bucket + + # Cache-Control directive for the object data. + # Corresponds to the JSON property `cacheControl` + # @return [String] + attr_accessor :cache_control + + # Content-Disposition of the object data. + # Corresponds to the JSON property `contentDisposition` + # @return [String] + attr_accessor :content_disposition + + # Content-Encoding of the object data. + # Corresponds to the JSON property `contentEncoding` + # @return [String] + attr_accessor :content_encoding + + # Content-Language of the object data. + # Corresponds to the JSON property `contentLanguage` + # @return [String] + attr_accessor :content_language + + # The ID of the object. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For objects, this is always storage#object. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Object media data. Provided on your behalf when uploading raw media or + # multipart/related with an auxiliary media part. + # Corresponds to the JSON property `media` + # @return [Google::Apis::StorageV1beta1::Object::Media] + attr_accessor :media + + # User-provided metadata, in key/value pairs. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The name of this object. Required if not specified by URL parameter. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The owner of the object. This will always be the uploader of the object. + # Corresponds to the JSON property `owner` + # @return [Google::Apis::StorageV1beta1::Object::Owner] + attr_accessor :owner + + # The link to this object. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @acl = args[:acl] if args.key?(:acl) + @bucket = args[:bucket] if args.key?(:bucket) + @cache_control = args[:cache_control] if args.key?(:cache_control) + @content_disposition = args[:content_disposition] if args.key?(:content_disposition) + @content_encoding = args[:content_encoding] if args.key?(:content_encoding) + @content_language = args[:content_language] if args.key?(:content_language) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @media = args[:media] if args.key?(:media) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @owner = args[:owner] if args.key?(:owner) + @self_link = args[:self_link] if args.key?(:self_link) + end + + # Object media data. Provided on your behalf when uploading raw media or + # multipart/related with an auxiliary media part. + class Media + include Google::Apis::Core::Hashable + + # Hash algorithm used. Currently only MD5 is supported. Required if a hash is + # provided. + # Corresponds to the JSON property `algorithm` + # @return [String] + attr_accessor :algorithm + + # Content-Type of the object data. + # Corresponds to the JSON property `contentType` + # @return [String] + attr_accessor :content_type + + # URL-safe Base64-encoded data. This property can be used to insert objects + # under 64KB in size, and will only be returned in response to the get method + # for objects so created. When this resource is returned in response to the list + # method, this property is omitted. + # Corresponds to the JSON property `data` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :data + + # Hash of the data. Required if a hash algorithm is provided. + # Corresponds to the JSON property `hash` + # @return [String] + attr_accessor :hash_prop + + # Content-Length of the data in bytes. + # Corresponds to the JSON property `length` + # @return [Fixnum] + attr_accessor :length + + # Media download link. + # Corresponds to the JSON property `link` + # @return [String] + attr_accessor :link + + # Creation time of the data in RFC 3339 format. + # Corresponds to the JSON property `timeCreated` + # @return [DateTime] + attr_accessor :time_created + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @algorithm = args[:algorithm] if args.key?(:algorithm) + @content_type = args[:content_type] if args.key?(:content_type) + @data = args[:data] if args.key?(:data) + @hash_prop = args[:hash_prop] if args.key?(:hash_prop) + @length = args[:length] if args.key?(:length) + @link = args[:link] if args.key?(:link) + @time_created = args[:time_created] if args.key?(:time_created) + end + end + + # The owner of the object. This will always be the uploader of the object. + class Owner + include Google::Apis::Core::Hashable + + # The entity, in the form user-userId. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + end + end + end + + # An access-control entry. + class ObjectAccessControl + include Google::Apis::Core::Hashable + + # The name of the bucket. + # Corresponds to the JSON property `bucket` + # @return [String] + attr_accessor :bucket + + # The domain associated with the entity, if any. + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # The email address associated with the entity, if any. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The entity holding the permission, in one of the following forms: + # - user-userId + # - user-email + # - group-groupId + # - group-email + # - domain-domain + # - allUsers + # - allAuthenticatedUsers Examples: + # - The user liz@example.com would be user-liz@example.com. + # - The group example@googlegroups.com would be group-example@googlegroups.com. + # - To refer to all members of the Google Apps for Business domain example.com, + # the entity would be domain-example.com. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity, if any. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + # The ID of the access-control entry. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For object access control entries, this is always + # storage#objectAccessControl. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the object. + # Corresponds to the JSON property `object` + # @return [String] + attr_accessor :object + + # The access permission for the entity. Can be READER or OWNER. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + # The link to this access-control entry. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket = args[:bucket] if args.key?(:bucket) + @domain = args[:domain] if args.key?(:domain) + @email = args[:email] if args.key?(:email) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @object = args[:object] if args.key?(:object) + @role = args[:role] if args.key?(:role) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # An access-control list. + class ObjectAccessControls + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of object access control entries, this is + # always storage#objectAccessControls. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A list of objects. + class Objects + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of objects, this is always storage#objects. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The continuation token, used to page through large result sets. Provide this + # value in a subsequent request to return the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The list of prefixes of objects matching-but-not-listed up to and including + # the requested delimiter. + # Corresponds to the JSON property `prefixes` + # @return [Array] + attr_accessor :prefixes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @prefixes = args[:prefixes] if args.key?(:prefixes) + end + end + end + end +end diff --git a/generated/google/apis/storage_v1beta1/representations.rb b/generated/google/apis/storage_v1beta1/representations.rb new file mode 100644 index 000000000..fbb8e4306 --- /dev/null +++ b/generated/google/apis/storage_v1beta1/representations.rb @@ -0,0 +1,249 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module StorageV1beta1 + + class Bucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Owner + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Website + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class BucketAccessControl + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BucketAccessControls + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Buckets + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Object + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Media + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Owner + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ObjectAccessControl + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ObjectAccessControls + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Objects + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Bucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :acl, as: 'acl', class: Google::Apis::StorageV1beta1::BucketAccessControl, decorator: Google::Apis::StorageV1beta1::BucketAccessControl::Representation + + collection :default_object_acl, as: 'defaultObjectAcl', class: Google::Apis::StorageV1beta1::ObjectAccessControl, decorator: Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + + property :id, as: 'id' + property :kind, as: 'kind' + property :location, as: 'location' + property :owner, as: 'owner', class: Google::Apis::StorageV1beta1::Bucket::Owner, decorator: Google::Apis::StorageV1beta1::Bucket::Owner::Representation + + property :project_id, :numeric_string => true, as: 'projectId' + property :self_link, as: 'selfLink' + property :time_created, as: 'timeCreated', type: DateTime + + property :website, as: 'website', class: Google::Apis::StorageV1beta1::Bucket::Website, decorator: Google::Apis::StorageV1beta1::Bucket::Website::Representation + + end + + class Owner + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + end + end + + class Website + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :main_page_suffix, as: 'mainPageSuffix' + property :not_found_page, as: 'notFoundPage' + end + end + end + + class BucketAccessControl + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket, as: 'bucket' + property :domain, as: 'domain' + property :email, as: 'email' + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + property :id, as: 'id' + property :kind, as: 'kind' + property :role, as: 'role' + property :self_link, as: 'selfLink' + end + end + + class BucketAccessControls + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::StorageV1beta1::BucketAccessControl, decorator: Google::Apis::StorageV1beta1::BucketAccessControl::Representation + + property :kind, as: 'kind' + end + end + + class Buckets + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::StorageV1beta1::Bucket, decorator: Google::Apis::StorageV1beta1::Bucket::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class Object + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :acl, as: 'acl', class: Google::Apis::StorageV1beta1::ObjectAccessControl, decorator: Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + + property :bucket, as: 'bucket' + property :cache_control, as: 'cacheControl' + property :content_disposition, as: 'contentDisposition' + property :content_encoding, as: 'contentEncoding' + property :content_language, as: 'contentLanguage' + property :id, as: 'id' + property :kind, as: 'kind' + property :media, as: 'media', class: Google::Apis::StorageV1beta1::Object::Media, decorator: Google::Apis::StorageV1beta1::Object::Media::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + property :owner, as: 'owner', class: Google::Apis::StorageV1beta1::Object::Owner, decorator: Google::Apis::StorageV1beta1::Object::Owner::Representation + + property :self_link, as: 'selfLink' + end + + class Media + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :algorithm, as: 'algorithm' + property :content_type, as: 'contentType' + property :data, :base64 => true, as: 'data' + property :hash_prop, as: 'hash' + property :length, :numeric_string => true, as: 'length' + property :link, as: 'link' + property :time_created, as: 'timeCreated', type: DateTime + + end + end + + class Owner + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + end + end + end + + class ObjectAccessControl + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket, as: 'bucket' + property :domain, as: 'domain' + property :email, as: 'email' + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + property :id, as: 'id' + property :kind, as: 'kind' + property :object, as: 'object' + property :role, as: 'role' + property :self_link, as: 'selfLink' + end + end + + class ObjectAccessControls + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::StorageV1beta1::ObjectAccessControl, decorator: Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + + property :kind, as: 'kind' + end + end + + class Objects + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::StorageV1beta1::Object, decorator: Google::Apis::StorageV1beta1::Object::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :prefixes, as: 'prefixes' + end + end + end + end +end diff --git a/generated/google/apis/storage_v1beta1/service.rb b/generated/google/apis/storage_v1beta1/service.rb new file mode 100644 index 000000000..f0dc2760b --- /dev/null +++ b/generated/google/apis/storage_v1beta1/service.rb @@ -0,0 +1,1082 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module StorageV1beta1 + # Cloud Storage JSON API + # + # Lets you store and retrieve potentially-large, immutable data objects. + # + # @example + # require 'google/apis/storage_v1beta1' + # + # Storage = Google::Apis::StorageV1beta1 # Alias the module + # service = Storage::StorageService.new + # + # @see https://developers.google.com/storage/docs/json_api/ + class StorageService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'storage/v1beta1/') + @batch_path = 'batch' + end + + # Deletes the ACL entry for the specified entity on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_bucket_access_control(bucket, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}/acl/{entity}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the ACL entry for the specified entity on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_bucket_access_control(bucket, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/acl/{entity}', options) + command.response_representation = Google::Apis::StorageV1beta1::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new ACL entry on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Google::Apis::StorageV1beta1::BucketAccessControl] bucket_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_bucket_access_control(bucket, bucket_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b/{bucket}/acl', options) + command.request_representation = Google::Apis::StorageV1beta1::BucketAccessControl::Representation + command.request_object = bucket_access_control_object + command.response_representation = Google::Apis::StorageV1beta1::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves ACL entries on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::BucketAccessControls] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::BucketAccessControls] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_bucket_access_controls(bucket, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/acl', options) + command.response_representation = Google::Apis::StorageV1beta1::BucketAccessControls::Representation + command.response_class = Google::Apis::StorageV1beta1::BucketAccessControls + command.params['bucket'] = bucket unless bucket.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified bucket. This method supports patch + # semantics. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta1::BucketAccessControl] bucket_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_bucket_access_control(bucket, entity, bucket_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta1::BucketAccessControl::Representation + command.request_object = bucket_access_control_object + command.response_representation = Google::Apis::StorageV1beta1::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta1::BucketAccessControl] bucket_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_bucket_access_control(bucket, entity, bucket_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'b/{bucket}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta1::BucketAccessControl::Representation + command.request_object = bucket_access_control_object + command.response_representation = Google::Apis::StorageV1beta1::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an empty bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_bucket(bucket, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns metadata for the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] projection + # Set of properties to return. Defaults to no_acl. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_bucket(bucket, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}', options) + command.response_representation = Google::Apis::StorageV1beta1::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta1::Bucket + command.params['bucket'] = bucket unless bucket.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new bucket. + # @param [Google::Apis::StorageV1beta1::Bucket] bucket_object + # @param [String] projection + # Set of properties to return. Defaults to no_acl, unless the bucket resource + # specifies acl or defaultObjectAcl properties, when it defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_bucket(bucket_object = nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b', options) + command.request_representation = Google::Apis::StorageV1beta1::Bucket::Representation + command.request_object = bucket_object + command.response_representation = Google::Apis::StorageV1beta1::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta1::Bucket + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of buckets for a given project. + # @param [Fixnum] project_id + # A valid API project identifier. + # @param [Fixnum] max_results + # Maximum number of buckets to return. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] projection + # Set of properties to return. Defaults to no_acl. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Buckets] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Buckets] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_buckets(project_id, max_results: nil, page_token: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b', options) + command.response_representation = Google::Apis::StorageV1beta1::Buckets::Representation + command.response_class = Google::Apis::StorageV1beta1::Buckets + command.query['max-results'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['projectId'] = project_id unless project_id.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a bucket. This method supports patch semantics. + # @param [String] bucket + # Name of a bucket. + # @param [Google::Apis::StorageV1beta1::Bucket] bucket_object + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_bucket(bucket, bucket_object = nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}', options) + command.request_representation = Google::Apis::StorageV1beta1::Bucket::Representation + command.request_object = bucket_object + command.response_representation = Google::Apis::StorageV1beta1::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta1::Bucket + command.params['bucket'] = bucket unless bucket.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Google::Apis::StorageV1beta1::Bucket] bucket_object + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_bucket(bucket, bucket_object = nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'b/{bucket}', options) + command.request_representation = Google::Apis::StorageV1beta1::Bucket::Representation + command.request_object = bucket_object + command.response_representation = Google::Apis::StorageV1beta1::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta1::Bucket + command.params['bucket'] = bucket unless bucket.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes the ACL entry for the specified entity on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_object_access_control(bucket, object, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the ACL entry for the specified entity on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_object_access_control(bucket, object, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.response_representation = Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new ACL entry on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [Google::Apis::StorageV1beta1::ObjectAccessControl] object_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_object_access_control(bucket, object, object_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b/{bucket}/o/{object}/acl', options) + command.request_representation = Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves ACL entries on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::ObjectAccessControls] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::ObjectAccessControls] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_object_access_controls(bucket, object, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/o/{object}/acl', options) + command.response_representation = Google::Apis::StorageV1beta1::ObjectAccessControls::Representation + command.response_class = Google::Apis::StorageV1beta1::ObjectAccessControls + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified object. This method supports patch + # semantics. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta1::ObjectAccessControl] object_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_object_access_control(bucket, object, entity, object_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta1::ObjectAccessControl] object_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_object_access_control(bucket, object, entity, object_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta1::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta1::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes data blobs and associated metadata. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_object(bucket, object, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}/o/{object}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves objects or their associated metadata. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [String] projection + # Set of properties to return. Defaults to no_acl. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_object(bucket, object, projection: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:get, 'b/{bucket}/o/{object}', options) + else + command = make_download_command(:get, 'b/{bucket}/o/{object}', options) + command.download_dest = download_dest + end + command.response_representation = Google::Apis::StorageV1beta1::Object::Representation + command.response_class = Google::Apis::StorageV1beta1::Object + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Stores new data blobs and associated metadata. + # @param [String] bucket + # Name of the bucket in which to store the new object. Overrides the provided + # object metadata's bucket value, if any. + # @param [Google::Apis::StorageV1beta1::Object] object_object + # @param [String] name + # Name of the object. Required when the object metadata is not otherwise + # provided. Overrides the object metadata's name value, if any. + # @param [String] projection + # Set of properties to return. Defaults to no_acl, unless the object resource + # specifies the acl property, when it defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] upload_source + # IO stream or filename containing content to upload + # @param [String] content_type + # Content type of the uploaded content. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_object(bucket, object_object = nil, name: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) + if upload_source.nil? + command = make_simple_command(:post, 'b/{bucket}/o', options) + else + command = make_upload_command(:post, 'b/{bucket}/o', options) + command.upload_source = upload_source + command.upload_content_type = content_type + end + command.request_representation = Google::Apis::StorageV1beta1::Object::Representation + command.request_object = object_object + command.response_representation = Google::Apis::StorageV1beta1::Object::Representation + command.response_class = Google::Apis::StorageV1beta1::Object + command.params['bucket'] = bucket unless bucket.nil? + command.query['name'] = name unless name.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of objects matching the criteria. + # @param [String] bucket + # Name of the bucket in which to look for objects. + # @param [String] delimiter + # Returns results in a directory-like mode. items will contain only objects + # whose names, aside from the prefix, do not contain delimiter. Objects whose + # names, aside from the prefix, contain delimiter will have their name, + # truncated after the delimiter, returned in prefixes. Duplicate prefixes are + # omitted. + # @param [Fixnum] max_results + # Maximum number of items plus prefixes to return. As duplicate prefixes are + # omitted, fewer total results may be returned than requested. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] prefix + # Filter results to objects whose names begin with this prefix. + # @param [String] projection + # Set of properties to return. Defaults to no_acl. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Objects] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Objects] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_objects(bucket, delimiter: nil, max_results: nil, page_token: nil, prefix: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/o', options) + command.response_representation = Google::Apis::StorageV1beta1::Objects::Representation + command.response_class = Google::Apis::StorageV1beta1::Objects + command.params['bucket'] = bucket unless bucket.nil? + command.query['delimiter'] = delimiter unless delimiter.nil? + command.query['max-results'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['prefix'] = prefix unless prefix.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a data blob's associated metadata. This method supports patch + # semantics. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [Google::Apis::StorageV1beta1::Object] object_object + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_object(bucket, object, object_object = nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}/o/{object}', options) + command.request_representation = Google::Apis::StorageV1beta1::Object::Representation + command.request_object = object_object + command.response_representation = Google::Apis::StorageV1beta1::Object::Representation + command.response_class = Google::Apis::StorageV1beta1::Object + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a data blob's associated metadata. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [Google::Apis::StorageV1beta1::Object] object_object + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta1::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta1::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_object(bucket, object, object_object = nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:put, 'b/{bucket}/o/{object}', options) + else + command = make_download_command(:put, 'b/{bucket}/o/{object}', options) + command.download_dest = download_dest + end + command.request_representation = Google::Apis::StorageV1beta1::Object::Representation + command.request_object = object_object + command.response_representation = Google::Apis::StorageV1beta1::Object::Representation + command.response_class = Google::Apis::StorageV1beta1::Object + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/storage_v1beta2.rb b/generated/google/apis/storage_v1beta2.rb new file mode 100644 index 000000000..7ac3f47c5 --- /dev/null +++ b/generated/google/apis/storage_v1beta2.rb @@ -0,0 +1,40 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/storage_v1beta2/service.rb' +require 'google/apis/storage_v1beta2/classes.rb' +require 'google/apis/storage_v1beta2/representations.rb' + +module Google + module Apis + # Cloud Storage JSON API + # + # Lets you store and retrieve potentially-large, immutable data objects. + # + # @see https://developers.google.com/storage/docs/json_api/ + module StorageV1beta2 + VERSION = 'V1beta2' + REVISION = '20170329' + + # Manage your data and permissions in Google Cloud Storage + AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control' + + # View your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only' + + # Manage your data in Google Cloud Storage + AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write' + end + end +end diff --git a/generated/google/apis/storage_v1beta2/classes.rb b/generated/google/apis/storage_v1beta2/classes.rb new file mode 100644 index 000000000..fb20f4d5e --- /dev/null +++ b/generated/google/apis/storage_v1beta2/classes.rb @@ -0,0 +1,1048 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module StorageV1beta2 + + # A bucket. + class Bucket + include Google::Apis::Core::Hashable + + # Access controls on the bucket. + # Corresponds to the JSON property `acl` + # @return [Array] + attr_accessor :acl + + # The bucket's Cross-Origin Resource Sharing (CORS) configuration. + # Corresponds to the JSON property `cors` + # @return [Array] + attr_accessor :cors + + # Default access controls to apply to new objects when no ACL is provided. + # Corresponds to the JSON property `defaultObjectAcl` + # @return [Array] + attr_accessor :default_object_acl + + # HTTP 1.1 Entity tag for the bucket. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The ID of the bucket. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For buckets, this is always storage#bucket. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The bucket's lifecycle configuration. See object lifecycle management for more + # information. + # Corresponds to the JSON property `lifecycle` + # @return [Google::Apis::StorageV1beta2::Bucket::Lifecycle] + attr_accessor :lifecycle + + # The location of the bucket. Object data for objects in the bucket resides in + # physical storage within this region. Typical values are US and EU. Defaults to + # US. See the developer's guide for the authoritative list. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # The bucket's logging configuration, which defines the destination bucket and + # optional name prefix for the current bucket's logs. + # Corresponds to the JSON property `logging` + # @return [Google::Apis::StorageV1beta2::Bucket::Logging] + attr_accessor :logging + + # The metadata generation of this bucket. + # Corresponds to the JSON property `metageneration` + # @return [Fixnum] + attr_accessor :metageneration + + # The name of the bucket. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The owner of the bucket. This is always the project team's owner group. + # Corresponds to the JSON property `owner` + # @return [Google::Apis::StorageV1beta2::Bucket::Owner] + attr_accessor :owner + + # The URI of this bucket. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # The bucket's storage class. This defines how objects in the bucket are stored + # and determines the SLA and the cost of storage. Typical values are STANDARD + # and DURABLE_REDUCED_AVAILABILITY. Defaults to STANDARD. See the developer's + # guide for the authoritative list. + # Corresponds to the JSON property `storageClass` + # @return [String] + attr_accessor :storage_class + + # Creation time of the bucket in RFC 3339 format. + # Corresponds to the JSON property `timeCreated` + # @return [DateTime] + attr_accessor :time_created + + # The bucket's versioning configuration. + # Corresponds to the JSON property `versioning` + # @return [Google::Apis::StorageV1beta2::Bucket::Versioning] + attr_accessor :versioning + + # The bucket's website configuration. + # Corresponds to the JSON property `website` + # @return [Google::Apis::StorageV1beta2::Bucket::Website] + attr_accessor :website + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @acl = args[:acl] if args.key?(:acl) + @cors = args[:cors] if args.key?(:cors) + @default_object_acl = args[:default_object_acl] if args.key?(:default_object_acl) + @etag = args[:etag] if args.key?(:etag) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @lifecycle = args[:lifecycle] if args.key?(:lifecycle) + @location = args[:location] if args.key?(:location) + @logging = args[:logging] if args.key?(:logging) + @metageneration = args[:metageneration] if args.key?(:metageneration) + @name = args[:name] if args.key?(:name) + @owner = args[:owner] if args.key?(:owner) + @self_link = args[:self_link] if args.key?(:self_link) + @storage_class = args[:storage_class] if args.key?(:storage_class) + @time_created = args[:time_created] if args.key?(:time_created) + @versioning = args[:versioning] if args.key?(:versioning) + @website = args[:website] if args.key?(:website) + end + + # + class Cor + include Google::Apis::Core::Hashable + + # The value, in seconds, to return in the Access-Control-Max-Age header used in + # preflight responses. + # Corresponds to the JSON property `maxAgeSeconds` + # @return [Fixnum] + attr_accessor :max_age_seconds + + # The list of HTTP methods on which to include CORS response headers: GET, + # OPTIONS, POST, etc. Note, "*" is permitted in the list of methods, and means " + # any method". + # Corresponds to the JSON property `method` + # @return [Array] + attr_accessor :method_prop + + # The list of Origins eligible to receive CORS response headers. Note: "*" is + # permitted in the list of origins, and means "any Origin". + # Corresponds to the JSON property `origin` + # @return [Array] + attr_accessor :origin + + # The list of HTTP headers other than the simple response headers to give + # permission for the user-agent to share across domains. + # Corresponds to the JSON property `responseHeader` + # @return [Array] + attr_accessor :response_header + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_age_seconds = args[:max_age_seconds] if args.key?(:max_age_seconds) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @origin = args[:origin] if args.key?(:origin) + @response_header = args[:response_header] if args.key?(:response_header) + end + end + + # The bucket's lifecycle configuration. See object lifecycle management for more + # information. + class Lifecycle + include Google::Apis::Core::Hashable + + # A lifecycle management rule, which is made of an action to take and the + # condition(s) under which the action will be taken. + # Corresponds to the JSON property `rule` + # @return [Array] + attr_accessor :rule + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @rule = args[:rule] if args.key?(:rule) + end + + # + class Rule + include Google::Apis::Core::Hashable + + # The action to take. + # Corresponds to the JSON property `action` + # @return [Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule::Action] + attr_accessor :action + + # The condition(s) under which the action will be taken. + # Corresponds to the JSON property `condition` + # @return [Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule::Condition] + attr_accessor :condition + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @condition = args[:condition] if args.key?(:condition) + end + + # The action to take. + class Action + include Google::Apis::Core::Hashable + + # Type of the action. Currently only Delete is supported. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @type = args[:type] if args.key?(:type) + end + end + + # The condition(s) under which the action will be taken. + class Condition + include Google::Apis::Core::Hashable + + # Age of an object (in days). This condition is satisfied when an object reaches + # the specified age. + # Corresponds to the JSON property `age` + # @return [Fixnum] + attr_accessor :age + + # A date in RFC 3339 format with only the date part, e.g. "2013-01-15". This + # condition is satisfied when an object is created before midnight of the + # specified date in UTC. + # Corresponds to the JSON property `createdBefore` + # @return [Date] + attr_accessor :created_before + + # Relevant only for versioned objects. If the value is true, this condition + # matches live objects; if the value is false, it matches archived objects. + # Corresponds to the JSON property `isLive` + # @return [Boolean] + attr_accessor :is_live + alias_method :is_live?, :is_live + + # Relevant only for versioned objects. If the value is N, this condition is + # satisfied when there are at least N versions (including the live version) + # newer than this version of the object. + # Corresponds to the JSON property `numNewerVersions` + # @return [Fixnum] + attr_accessor :num_newer_versions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @age = args[:age] if args.key?(:age) + @created_before = args[:created_before] if args.key?(:created_before) + @is_live = args[:is_live] if args.key?(:is_live) + @num_newer_versions = args[:num_newer_versions] if args.key?(:num_newer_versions) + end + end + end + end + + # The bucket's logging configuration, which defines the destination bucket and + # optional name prefix for the current bucket's logs. + class Logging + include Google::Apis::Core::Hashable + + # The destination bucket where the current bucket's logs should be placed. + # Corresponds to the JSON property `logBucket` + # @return [String] + attr_accessor :log_bucket + + # A prefix for log object names. + # Corresponds to the JSON property `logObjectPrefix` + # @return [String] + attr_accessor :log_object_prefix + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @log_bucket = args[:log_bucket] if args.key?(:log_bucket) + @log_object_prefix = args[:log_object_prefix] if args.key?(:log_object_prefix) + end + end + + # The owner of the bucket. This is always the project team's owner group. + class Owner + include Google::Apis::Core::Hashable + + # The entity, in the form group-groupId. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + end + end + + # The bucket's versioning configuration. + class Versioning + include Google::Apis::Core::Hashable + + # While set to true, versioning is fully enabled for this bucket. + # Corresponds to the JSON property `enabled` + # @return [Boolean] + attr_accessor :enabled + alias_method :enabled?, :enabled + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enabled = args[:enabled] if args.key?(:enabled) + end + end + + # The bucket's website configuration. + class Website + include Google::Apis::Core::Hashable + + # Behaves as the bucket's directory index where missing objects are treated as + # potential directories. + # Corresponds to the JSON property `mainPageSuffix` + # @return [String] + attr_accessor :main_page_suffix + + # The custom object to return when a requested resource is not found. + # Corresponds to the JSON property `notFoundPage` + # @return [String] + attr_accessor :not_found_page + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @main_page_suffix = args[:main_page_suffix] if args.key?(:main_page_suffix) + @not_found_page = args[:not_found_page] if args.key?(:not_found_page) + end + end + end + + # An access-control entry. + class BucketAccessControl + include Google::Apis::Core::Hashable + + # The name of the bucket. + # Corresponds to the JSON property `bucket` + # @return [String] + attr_accessor :bucket + + # The domain associated with the entity, if any. + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # The email address associated with the entity, if any. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The entity holding the permission, in one of the following forms: + # - user-userId + # - user-email + # - group-groupId + # - group-email + # - domain-domain + # - allUsers + # - allAuthenticatedUsers Examples: + # - The user liz@example.com would be user-liz@example.com. + # - The group example@googlegroups.com would be group-example@googlegroups.com. + # - To refer to all members of the Google Apps for Business domain example.com, + # the entity would be domain-example.com. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity, if any. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + # HTTP 1.1 Entity tag for the access-control entry. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The ID of the access-control entry. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For bucket access control entries, this is always + # storage#bucketAccessControl. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The access permission for the entity. Can be READER, WRITER, or OWNER. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + # The link to this access-control entry. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket = args[:bucket] if args.key?(:bucket) + @domain = args[:domain] if args.key?(:domain) + @email = args[:email] if args.key?(:email) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + @etag = args[:etag] if args.key?(:etag) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @role = args[:role] if args.key?(:role) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # An access-control list. + class BucketAccessControls + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of bucket access control entries, this is + # always storage#bucketAccessControls. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A list of buckets. + class Buckets + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of buckets, this is always storage#buckets. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The continuation token, used to page through large result sets. Provide this + # value in a subsequent request to return the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # An notification channel used to watch for resource changes. + class Channel + include Google::Apis::Core::Hashable + + # The address where notifications are delivered for this channel. + # Corresponds to the JSON property `address` + # @return [String] + attr_accessor :address + + # Date and time of notification channel expiration, expressed as a Unix + # timestamp, in milliseconds. Optional. + # Corresponds to the JSON property `expiration` + # @return [Fixnum] + attr_accessor :expiration + + # A UUID or similar unique string that identifies this channel. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Identifies this as a notification channel used to watch for changes to a + # resource. Value: the fixed string "api#channel". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Additional parameters controlling delivery channel behavior. Optional. + # Corresponds to the JSON property `params` + # @return [Hash] + attr_accessor :params + + # A Boolean value to indicate whether payload is wanted. Optional. + # Corresponds to the JSON property `payload` + # @return [Boolean] + attr_accessor :payload + alias_method :payload?, :payload + + # An opaque ID that identifies the resource being watched on this channel. + # Stable across different API versions. + # Corresponds to the JSON property `resourceId` + # @return [String] + attr_accessor :resource_id + + # A version-specific identifier for the watched resource. + # Corresponds to the JSON property `resourceUri` + # @return [String] + attr_accessor :resource_uri + + # An arbitrary string delivered to the target address with each notification + # delivered over this channel. Optional. + # Corresponds to the JSON property `token` + # @return [String] + attr_accessor :token + + # The type of delivery mechanism used for this channel. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @address = args[:address] if args.key?(:address) + @expiration = args[:expiration] if args.key?(:expiration) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @params = args[:params] if args.key?(:params) + @payload = args[:payload] if args.key?(:payload) + @resource_id = args[:resource_id] if args.key?(:resource_id) + @resource_uri = args[:resource_uri] if args.key?(:resource_uri) + @token = args[:token] if args.key?(:token) + @type = args[:type] if args.key?(:type) + end + end + + # A Compose request. + class ComposeRequest + include Google::Apis::Core::Hashable + + # An object. + # Corresponds to the JSON property `destination` + # @return [Google::Apis::StorageV1beta2::Object] + attr_accessor :destination + + # The kind of item this is. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The list of source objects that will be concatenated into a single object. + # Corresponds to the JSON property `sourceObjects` + # @return [Array] + attr_accessor :source_objects + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination = args[:destination] if args.key?(:destination) + @kind = args[:kind] if args.key?(:kind) + @source_objects = args[:source_objects] if args.key?(:source_objects) + end + + # + class SourceObject + include Google::Apis::Core::Hashable + + # The generation of this object to use as the source. + # Corresponds to the JSON property `generation` + # @return [Fixnum] + attr_accessor :generation + + # The source object's name. The source object's bucket is implicitly the + # destination bucket. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Conditions that must be met for this operation to execute. + # Corresponds to the JSON property `objectPreconditions` + # @return [Google::Apis::StorageV1beta2::ComposeRequest::SourceObject::ObjectPreconditions] + attr_accessor :object_preconditions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @generation = args[:generation] if args.key?(:generation) + @name = args[:name] if args.key?(:name) + @object_preconditions = args[:object_preconditions] if args.key?(:object_preconditions) + end + + # Conditions that must be met for this operation to execute. + class ObjectPreconditions + include Google::Apis::Core::Hashable + + # Only perform the composition if the generation of the source object that would + # be used matches this value. If this value and a generation are both specified, + # they must be the same value or the call will fail. + # Corresponds to the JSON property `ifGenerationMatch` + # @return [Fixnum] + attr_accessor :if_generation_match + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @if_generation_match = args[:if_generation_match] if args.key?(:if_generation_match) + end + end + end + end + + # An object. + class Object + include Google::Apis::Core::Hashable + + # Access controls on the object. + # Corresponds to the JSON property `acl` + # @return [Array] + attr_accessor :acl + + # The bucket containing this object. + # Corresponds to the JSON property `bucket` + # @return [String] + attr_accessor :bucket + + # Cache-Control directive for the object data. + # Corresponds to the JSON property `cacheControl` + # @return [String] + attr_accessor :cache_control + + # Number of underlying components that make up this object. Components are + # accumulated by compose operations and are limited to a count of 32. + # Corresponds to the JSON property `componentCount` + # @return [Fixnum] + attr_accessor :component_count + + # Content-Disposition of the object data. + # Corresponds to the JSON property `contentDisposition` + # @return [String] + attr_accessor :content_disposition + + # Content-Encoding of the object data. + # Corresponds to the JSON property `contentEncoding` + # @return [String] + attr_accessor :content_encoding + + # Content-Language of the object data. + # Corresponds to the JSON property `contentLanguage` + # @return [String] + attr_accessor :content_language + + # Content-Type of the object data. + # Corresponds to the JSON property `contentType` + # @return [String] + attr_accessor :content_type + + # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64. + # Corresponds to the JSON property `crc32c` + # @return [String] + attr_accessor :crc32c + + # HTTP 1.1 Entity tag for the object. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The content generation of this object. Used for object versioning. + # Corresponds to the JSON property `generation` + # @return [Fixnum] + attr_accessor :generation + + # The ID of the object. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For objects, this is always storage#object. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # MD5 hash of the data; encoded using base64. + # Corresponds to the JSON property `md5Hash` + # @return [String] + attr_accessor :md5_hash + + # Media download link. + # Corresponds to the JSON property `mediaLink` + # @return [String] + attr_accessor :media_link + + # User-provided metadata, in key/value pairs. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The generation of the metadata for this object at this generation. Used for + # metadata versioning. Has no meaning outside of the context of this generation. + # Corresponds to the JSON property `metageneration` + # @return [Fixnum] + attr_accessor :metageneration + + # The name of this object. Required if not specified by URL parameter. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The owner of the object. This will always be the uploader of the object. + # Corresponds to the JSON property `owner` + # @return [Google::Apis::StorageV1beta2::Object::Owner] + attr_accessor :owner + + # The link to this object. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + # Content-Length of the data in bytes. + # Corresponds to the JSON property `size` + # @return [Fixnum] + attr_accessor :size + + # Storage class of the object. + # Corresponds to the JSON property `storageClass` + # @return [String] + attr_accessor :storage_class + + # Deletion time of the object in RFC 3339 format. Will be returned if and only + # if this version of the object has been deleted. + # Corresponds to the JSON property `timeDeleted` + # @return [DateTime] + attr_accessor :time_deleted + + # Modification time of the object metadata in RFC 3339 format. + # Corresponds to the JSON property `updated` + # @return [DateTime] + attr_accessor :updated + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @acl = args[:acl] if args.key?(:acl) + @bucket = args[:bucket] if args.key?(:bucket) + @cache_control = args[:cache_control] if args.key?(:cache_control) + @component_count = args[:component_count] if args.key?(:component_count) + @content_disposition = args[:content_disposition] if args.key?(:content_disposition) + @content_encoding = args[:content_encoding] if args.key?(:content_encoding) + @content_language = args[:content_language] if args.key?(:content_language) + @content_type = args[:content_type] if args.key?(:content_type) + @crc32c = args[:crc32c] if args.key?(:crc32c) + @etag = args[:etag] if args.key?(:etag) + @generation = args[:generation] if args.key?(:generation) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @md5_hash = args[:md5_hash] if args.key?(:md5_hash) + @media_link = args[:media_link] if args.key?(:media_link) + @metadata = args[:metadata] if args.key?(:metadata) + @metageneration = args[:metageneration] if args.key?(:metageneration) + @name = args[:name] if args.key?(:name) + @owner = args[:owner] if args.key?(:owner) + @self_link = args[:self_link] if args.key?(:self_link) + @size = args[:size] if args.key?(:size) + @storage_class = args[:storage_class] if args.key?(:storage_class) + @time_deleted = args[:time_deleted] if args.key?(:time_deleted) + @updated = args[:updated] if args.key?(:updated) + end + + # The owner of the object. This will always be the uploader of the object. + class Owner + include Google::Apis::Core::Hashable + + # The entity, in the form user-userId. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + end + end + end + + # An access-control entry. + class ObjectAccessControl + include Google::Apis::Core::Hashable + + # The name of the bucket. + # Corresponds to the JSON property `bucket` + # @return [String] + attr_accessor :bucket + + # The domain associated with the entity, if any. + # Corresponds to the JSON property `domain` + # @return [String] + attr_accessor :domain + + # The email address associated with the entity, if any. + # Corresponds to the JSON property `email` + # @return [String] + attr_accessor :email + + # The entity holding the permission, in one of the following forms: + # - user-userId + # - user-email + # - group-groupId + # - group-email + # - domain-domain + # - allUsers + # - allAuthenticatedUsers Examples: + # - The user liz@example.com would be user-liz@example.com. + # - The group example@googlegroups.com would be group-example@googlegroups.com. + # - To refer to all members of the Google Apps for Business domain example.com, + # the entity would be domain-example.com. + # Corresponds to the JSON property `entity` + # @return [String] + attr_accessor :entity + + # The ID for the entity, if any. + # Corresponds to the JSON property `entityId` + # @return [String] + attr_accessor :entity_id + + # HTTP 1.1 Entity tag for the access-control entry. + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # The content generation of the object. + # Corresponds to the JSON property `generation` + # @return [Fixnum] + attr_accessor :generation + + # The ID of the access-control entry. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of item this is. For object access control entries, this is always + # storage#objectAccessControl. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the object. + # Corresponds to the JSON property `object` + # @return [String] + attr_accessor :object + + # The access permission for the entity. Can be READER or OWNER. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + # The link to this access-control entry. + # Corresponds to the JSON property `selfLink` + # @return [String] + attr_accessor :self_link + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket = args[:bucket] if args.key?(:bucket) + @domain = args[:domain] if args.key?(:domain) + @email = args[:email] if args.key?(:email) + @entity = args[:entity] if args.key?(:entity) + @entity_id = args[:entity_id] if args.key?(:entity_id) + @etag = args[:etag] if args.key?(:etag) + @generation = args[:generation] if args.key?(:generation) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @object = args[:object] if args.key?(:object) + @role = args[:role] if args.key?(:role) + @self_link = args[:self_link] if args.key?(:self_link) + end + end + + # An access-control list. + class ObjectAccessControls + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of object access control entries, this is + # always storage#objectAccessControls. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A list of objects. + class Objects + include Google::Apis::Core::Hashable + + # The list of items. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of item this is. For lists of objects, this is always storage#objects. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The continuation token, used to page through large result sets. Provide this + # value in a subsequent request to return the next page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The list of prefixes of objects matching-but-not-listed up to and including + # the requested delimiter. + # Corresponds to the JSON property `prefixes` + # @return [Array] + attr_accessor :prefixes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @prefixes = args[:prefixes] if args.key?(:prefixes) + end + end + end + end +end diff --git a/generated/google/apis/storage_v1beta2/representations.rb b/generated/google/apis/storage_v1beta2/representations.rb new file mode 100644 index 000000000..e1464b0e9 --- /dev/null +++ b/generated/google/apis/storage_v1beta2/representations.rb @@ -0,0 +1,425 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module StorageV1beta2 + + class Bucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Cor + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Lifecycle + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Rule + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Action + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Condition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Logging + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Owner + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Versioning + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Website + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class BucketAccessControl + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BucketAccessControls + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Buckets + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Channel + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ComposeRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + class SourceObject + class Representation < Google::Apis::Core::JsonRepresentation; end + + class ObjectPreconditions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Object + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Owner + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class ObjectAccessControl + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ObjectAccessControls + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Objects + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Bucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :acl, as: 'acl', class: Google::Apis::StorageV1beta2::BucketAccessControl, decorator: Google::Apis::StorageV1beta2::BucketAccessControl::Representation + + collection :cors, as: 'cors', class: Google::Apis::StorageV1beta2::Bucket::Cor, decorator: Google::Apis::StorageV1beta2::Bucket::Cor::Representation + + collection :default_object_acl, as: 'defaultObjectAcl', class: Google::Apis::StorageV1beta2::ObjectAccessControl, decorator: Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + + property :etag, as: 'etag' + property :id, as: 'id' + property :kind, as: 'kind' + property :lifecycle, as: 'lifecycle', class: Google::Apis::StorageV1beta2::Bucket::Lifecycle, decorator: Google::Apis::StorageV1beta2::Bucket::Lifecycle::Representation + + property :location, as: 'location' + property :logging, as: 'logging', class: Google::Apis::StorageV1beta2::Bucket::Logging, decorator: Google::Apis::StorageV1beta2::Bucket::Logging::Representation + + property :metageneration, :numeric_string => true, as: 'metageneration' + property :name, as: 'name' + property :owner, as: 'owner', class: Google::Apis::StorageV1beta2::Bucket::Owner, decorator: Google::Apis::StorageV1beta2::Bucket::Owner::Representation + + property :self_link, as: 'selfLink' + property :storage_class, as: 'storageClass' + property :time_created, as: 'timeCreated', type: DateTime + + property :versioning, as: 'versioning', class: Google::Apis::StorageV1beta2::Bucket::Versioning, decorator: Google::Apis::StorageV1beta2::Bucket::Versioning::Representation + + property :website, as: 'website', class: Google::Apis::StorageV1beta2::Bucket::Website, decorator: Google::Apis::StorageV1beta2::Bucket::Website::Representation + + end + + class Cor + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_age_seconds, as: 'maxAgeSeconds' + collection :method_prop, as: 'method' + collection :origin, as: 'origin' + collection :response_header, as: 'responseHeader' + end + end + + class Lifecycle + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :rule, as: 'rule', class: Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule, decorator: Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule::Representation + + end + + class Rule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action', class: Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule::Action, decorator: Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule::Action::Representation + + property :condition, as: 'condition', class: Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule::Condition, decorator: Google::Apis::StorageV1beta2::Bucket::Lifecycle::Rule::Condition::Representation + + end + + class Action + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :type, as: 'type' + end + end + + class Condition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :age, as: 'age' + property :created_before, as: 'createdBefore', type: Date + + property :is_live, as: 'isLive' + property :num_newer_versions, as: 'numNewerVersions' + end + end + end + end + + class Logging + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :log_bucket, as: 'logBucket' + property :log_object_prefix, as: 'logObjectPrefix' + end + end + + class Owner + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + end + end + + class Versioning + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enabled, as: 'enabled' + end + end + + class Website + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :main_page_suffix, as: 'mainPageSuffix' + property :not_found_page, as: 'notFoundPage' + end + end + end + + class BucketAccessControl + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket, as: 'bucket' + property :domain, as: 'domain' + property :email, as: 'email' + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + property :etag, as: 'etag' + property :id, as: 'id' + property :kind, as: 'kind' + property :role, as: 'role' + property :self_link, as: 'selfLink' + end + end + + class BucketAccessControls + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::StorageV1beta2::BucketAccessControl, decorator: Google::Apis::StorageV1beta2::BucketAccessControl::Representation + + property :kind, as: 'kind' + end + end + + class Buckets + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::StorageV1beta2::Bucket, decorator: Google::Apis::StorageV1beta2::Bucket::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class Channel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :address, as: 'address' + property :expiration, :numeric_string => true, as: 'expiration' + property :id, as: 'id' + property :kind, as: 'kind' + hash :params, as: 'params' + property :payload, as: 'payload' + property :resource_id, as: 'resourceId' + property :resource_uri, as: 'resourceUri' + property :token, as: 'token' + property :type, as: 'type' + end + end + + class ComposeRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination, as: 'destination', class: Google::Apis::StorageV1beta2::Object, decorator: Google::Apis::StorageV1beta2::Object::Representation + + property :kind, as: 'kind' + collection :source_objects, as: 'sourceObjects', class: Google::Apis::StorageV1beta2::ComposeRequest::SourceObject, decorator: Google::Apis::StorageV1beta2::ComposeRequest::SourceObject::Representation + + end + + class SourceObject + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :generation, :numeric_string => true, as: 'generation' + property :name, as: 'name' + property :object_preconditions, as: 'objectPreconditions', class: Google::Apis::StorageV1beta2::ComposeRequest::SourceObject::ObjectPreconditions, decorator: Google::Apis::StorageV1beta2::ComposeRequest::SourceObject::ObjectPreconditions::Representation + + end + + class ObjectPreconditions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :if_generation_match, :numeric_string => true, as: 'ifGenerationMatch' + end + end + end + end + + class Object + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :acl, as: 'acl', class: Google::Apis::StorageV1beta2::ObjectAccessControl, decorator: Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + + property :bucket, as: 'bucket' + property :cache_control, as: 'cacheControl' + property :component_count, as: 'componentCount' + property :content_disposition, as: 'contentDisposition' + property :content_encoding, as: 'contentEncoding' + property :content_language, as: 'contentLanguage' + property :content_type, as: 'contentType' + property :crc32c, as: 'crc32c' + property :etag, as: 'etag' + property :generation, :numeric_string => true, as: 'generation' + property :id, as: 'id' + property :kind, as: 'kind' + property :md5_hash, as: 'md5Hash' + property :media_link, as: 'mediaLink' + hash :metadata, as: 'metadata' + property :metageneration, :numeric_string => true, as: 'metageneration' + property :name, as: 'name' + property :owner, as: 'owner', class: Google::Apis::StorageV1beta2::Object::Owner, decorator: Google::Apis::StorageV1beta2::Object::Owner::Representation + + property :self_link, as: 'selfLink' + property :size, :numeric_string => true, as: 'size' + property :storage_class, as: 'storageClass' + property :time_deleted, as: 'timeDeleted', type: DateTime + + property :updated, as: 'updated', type: DateTime + + end + + class Owner + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + end + end + end + + class ObjectAccessControl + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket, as: 'bucket' + property :domain, as: 'domain' + property :email, as: 'email' + property :entity, as: 'entity' + property :entity_id, as: 'entityId' + property :etag, as: 'etag' + property :generation, :numeric_string => true, as: 'generation' + property :id, as: 'id' + property :kind, as: 'kind' + property :object, as: 'object' + property :role, as: 'role' + property :self_link, as: 'selfLink' + end + end + + class ObjectAccessControls + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items' + property :kind, as: 'kind' + end + end + + class Objects + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::StorageV1beta2::Object, decorator: Google::Apis::StorageV1beta2::Object::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :prefixes, as: 'prefixes' + end + end + end + end +end diff --git a/generated/google/apis/storage_v1beta2/service.rb b/generated/google/apis/storage_v1beta2/service.rb new file mode 100644 index 000000000..e410fc480 --- /dev/null +++ b/generated/google/apis/storage_v1beta2/service.rb @@ -0,0 +1,1736 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module StorageV1beta2 + # Cloud Storage JSON API + # + # Lets you store and retrieve potentially-large, immutable data objects. + # + # @example + # require 'google/apis/storage_v1beta2' + # + # Storage = Google::Apis::StorageV1beta2 # Alias the module + # service = Storage::StorageService.new + # + # @see https://developers.google.com/storage/docs/json_api/ + class StorageService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'storage/v1beta2/') + @batch_path = 'batch' + end + + # Permanently deletes the ACL entry for the specified entity on the specified + # bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_bucket_access_control(bucket, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}/acl/{entity}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the ACL entry for the specified entity on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_bucket_access_control(bucket, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/acl/{entity}', options) + command.response_representation = Google::Apis::StorageV1beta2::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new ACL entry on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Google::Apis::StorageV1beta2::BucketAccessControl] bucket_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_bucket_access_control(bucket, bucket_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b/{bucket}/acl', options) + command.request_representation = Google::Apis::StorageV1beta2::BucketAccessControl::Representation + command.request_object = bucket_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves ACL entries on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::BucketAccessControls] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::BucketAccessControls] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_bucket_access_controls(bucket, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/acl', options) + command.response_representation = Google::Apis::StorageV1beta2::BucketAccessControls::Representation + command.response_class = Google::Apis::StorageV1beta2::BucketAccessControls + command.params['bucket'] = bucket unless bucket.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified bucket. This method supports patch + # semantics. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta2::BucketAccessControl] bucket_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_bucket_access_control(bucket, entity, bucket_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta2::BucketAccessControl::Representation + command.request_object = bucket_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta2::BucketAccessControl] bucket_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::BucketAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::BucketAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_bucket_access_control(bucket, entity, bucket_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'b/{bucket}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta2::BucketAccessControl::Representation + command.request_object = bucket_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::BucketAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::BucketAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Permanently deletes an empty bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Fixnum] if_metageneration_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration does not match the given value. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_bucket(bucket, if_metageneration_match: nil, if_metageneration_not_match: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns metadata for the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Fixnum] if_metageneration_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration does not match the given value. + # @param [String] projection + # Set of properties to return. Defaults to noAcl. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_bucket(bucket, if_metageneration_match: nil, if_metageneration_not_match: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}', options) + command.response_representation = Google::Apis::StorageV1beta2::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta2::Bucket + command.params['bucket'] = bucket unless bucket.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new bucket. + # @param [String] project + # A valid API project identifier. + # @param [Google::Apis::StorageV1beta2::Bucket] bucket_object + # @param [String] projection + # Set of properties to return. Defaults to noAcl, unless the bucket resource + # specifies acl or defaultObjectAcl properties, when it defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_bucket(project, bucket_object = nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b', options) + command.request_representation = Google::Apis::StorageV1beta2::Bucket::Representation + command.request_object = bucket_object + command.response_representation = Google::Apis::StorageV1beta2::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta2::Bucket + command.query['project'] = project unless project.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of buckets for a given project. + # @param [String] project + # A valid API project identifier. + # @param [Fixnum] max_results + # Maximum number of buckets to return. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] projection + # Set of properties to return. Defaults to noAcl. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Buckets] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Buckets] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_buckets(project, max_results: nil, page_token: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b', options) + command.response_representation = Google::Apis::StorageV1beta2::Buckets::Representation + command.response_class = Google::Apis::StorageV1beta2::Buckets + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['project'] = project unless project.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a bucket. This method supports patch semantics. + # @param [String] bucket + # Name of a bucket. + # @param [Google::Apis::StorageV1beta2::Bucket] bucket_object + # @param [Fixnum] if_metageneration_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration does not match the given value. + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_bucket(bucket, bucket_object = nil, if_metageneration_match: nil, if_metageneration_not_match: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}', options) + command.request_representation = Google::Apis::StorageV1beta2::Bucket::Representation + command.request_object = bucket_object + command.response_representation = Google::Apis::StorageV1beta2::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta2::Bucket + command.params['bucket'] = bucket unless bucket.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Google::Apis::StorageV1beta2::Bucket] bucket_object + # @param [Fixnum] if_metageneration_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the return of the bucket metadata conditional on whether the bucket's + # current metageneration does not match the given value. + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Bucket] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Bucket] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_bucket(bucket, bucket_object = nil, if_metageneration_match: nil, if_metageneration_not_match: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'b/{bucket}', options) + command.request_representation = Google::Apis::StorageV1beta2::Bucket::Representation + command.request_object = bucket_object + command.response_representation = Google::Apis::StorageV1beta2::Bucket::Representation + command.response_class = Google::Apis::StorageV1beta2::Bucket + command.params['bucket'] = bucket unless bucket.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Stop watching resources through this channel + # @param [Google::Apis::StorageV1beta2::Channel] channel_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def stop_channel(channel_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'channels/stop', options) + command.request_representation = Google::Apis::StorageV1beta2::Channel::Representation + command.request_object = channel_object + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Permanently deletes the default object ACL entry for the specified entity on + # the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_default_object_access_control(bucket, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}/defaultObjectAcl/{entity}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the default object ACL entry for the specified entity on the specified + # bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_default_object_access_control(bucket, entity, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/defaultObjectAcl/{entity}', options) + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new default object ACL entry on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Google::Apis::StorageV1beta2::ObjectAccessControl] object_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_default_object_access_control(bucket, object_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b/{bucket}/defaultObjectAcl', options) + command.request_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves default object ACL entries on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [Fixnum] if_metageneration_match + # If present, only return default ACL listing if the bucket's current + # metageneration matches this value. + # @param [Fixnum] if_metageneration_not_match + # If present, only return default ACL listing if the bucket's current + # metageneration does not match the given value. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControls] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControls] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_default_object_access_controls(bucket, if_metageneration_match: nil, if_metageneration_not_match: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/defaultObjectAcl', options) + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControls::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControls + command.params['bucket'] = bucket unless bucket.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a default object ACL entry on the specified bucket. This method + # supports patch semantics. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta2::ObjectAccessControl] object_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_default_object_access_control(bucket, entity, object_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}/defaultObjectAcl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a default object ACL entry on the specified bucket. + # @param [String] bucket + # Name of a bucket. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta2::ObjectAccessControl] object_access_control_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_default_object_access_control(bucket, entity, object_access_control_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'b/{bucket}/defaultObjectAcl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['entity'] = entity unless entity.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Permanently deletes the ACL entry for the specified entity on the specified + # object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_object_access_control(bucket, object, entity, generation: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['generation'] = generation unless generation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns the ACL entry for the specified entity on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_object_access_control(bucket, object, entity, generation: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['generation'] = generation unless generation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new ACL entry on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [Google::Apis::StorageV1beta2::ObjectAccessControl] object_access_control_object + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_object_access_control(bucket, object, object_access_control_object = nil, generation: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b/{bucket}/o/{object}/acl', options) + command.request_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['generation'] = generation unless generation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves ACL entries on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControls] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControls] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_object_access_controls(bucket, object, generation: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/o/{object}/acl', options) + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControls::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControls + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['generation'] = generation unless generation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified object. This method supports patch + # semantics. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta2::ObjectAccessControl] object_access_control_object + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_object_access_control(bucket, object, entity, object_access_control_object = nil, generation: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['generation'] = generation unless generation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an ACL entry on the specified object. + # @param [String] bucket + # Name of a bucket. + # @param [String] object + # Name of the object. + # @param [String] entity + # The entity holding the permission. Can be user-userId, user-emailAddress, + # group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers. + # @param [Google::Apis::StorageV1beta2::ObjectAccessControl] object_access_control_object + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::ObjectAccessControl] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::ObjectAccessControl] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_object_access_control(bucket, object, entity, object_access_control_object = nil, generation: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'b/{bucket}/o/{object}/acl/{entity}', options) + command.request_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.request_object = object_access_control_object + command.response_representation = Google::Apis::StorageV1beta2::ObjectAccessControl::Representation + command.response_class = Google::Apis::StorageV1beta2::ObjectAccessControl + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.params['entity'] = entity unless entity.nil? + command.query['generation'] = generation unless generation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Concatenates a list of existing objects into a new object in the same bucket. + # @param [String] destination_bucket + # Name of the bucket in which to store the new object. + # @param [String] destination_object + # Name of the new object. + # @param [Google::Apis::StorageV1beta2::ComposeRequest] compose_request_object + # @param [Fixnum] if_generation_match + # Makes the operation conditional on whether the object's current generation + # matches the given value. + # @param [Fixnum] if_metageneration_match + # Makes the operation conditional on whether the object's current metageneration + # matches the given value. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def compose_object(destination_bucket, destination_object, compose_request_object = nil, if_generation_match: nil, if_metageneration_match: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:post, 'b/{destinationBucket}/o/{destinationObject}/compose', options) + else + command = make_download_command(:post, 'b/{destinationBucket}/o/{destinationObject}/compose', options) + command.download_dest = download_dest + end + command.request_representation = Google::Apis::StorageV1beta2::ComposeRequest::Representation + command.request_object = compose_request_object + command.response_representation = Google::Apis::StorageV1beta2::Object::Representation + command.response_class = Google::Apis::StorageV1beta2::Object + command.params['destinationBucket'] = destination_bucket unless destination_bucket.nil? + command.params['destinationObject'] = destination_object unless destination_object.nil? + command.query['ifGenerationMatch'] = if_generation_match unless if_generation_match.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Copies an object to a destination in the same location. Optionally overrides + # metadata. + # @param [String] source_bucket + # Name of the bucket in which to find the source object. + # @param [String] source_object + # Name of the source object. + # @param [String] destination_bucket + # Name of the bucket in which to store the new object. Overrides the provided + # object metadata's bucket value, if any. + # @param [String] destination_object + # Name of the new object. Required when the object metadata is not otherwise + # provided. Overrides the object metadata's name value, if any. + # @param [Google::Apis::StorageV1beta2::Object] object_object + # @param [Fixnum] if_generation_match + # Makes the operation conditional on whether the destination object's current + # generation matches the given value. + # @param [Fixnum] if_generation_not_match + # Makes the operation conditional on whether the destination object's current + # generation does not match the given value. + # @param [Fixnum] if_metageneration_match + # Makes the operation conditional on whether the destination object's current + # metageneration matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the operation conditional on whether the destination object's current + # metageneration does not match the given value. + # @param [Fixnum] if_source_generation_match + # Makes the operation conditional on whether the source object's generation + # matches the given value. + # @param [Fixnum] if_source_generation_not_match + # Makes the operation conditional on whether the source object's generation does + # not match the given value. + # @param [Fixnum] if_source_metageneration_match + # Makes the operation conditional on whether the source object's current + # metageneration matches the given value. + # @param [Fixnum] if_source_metageneration_not_match + # Makes the operation conditional on whether the source object's current + # metageneration does not match the given value. + # @param [String] projection + # Set of properties to return. Defaults to noAcl, unless the object resource + # specifies the acl property, when it defaults to full. + # @param [Fixnum] source_generation + # If present, selects a specific revision of the source object (as opposed to + # the latest version, the default). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def copy_object(source_bucket, source_object, destination_bucket, destination_object, object_object = nil, if_generation_match: nil, if_generation_not_match: nil, if_metageneration_match: nil, if_metageneration_not_match: nil, if_source_generation_match: nil, if_source_generation_not_match: nil, if_source_metageneration_match: nil, if_source_metageneration_not_match: nil, projection: nil, source_generation: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:post, 'b/{sourceBucket}/o/{sourceObject}/copyTo/b/{destinationBucket}/o/{destinationObject}', options) + else + command = make_download_command(:post, 'b/{sourceBucket}/o/{sourceObject}/copyTo/b/{destinationBucket}/o/{destinationObject}', options) + command.download_dest = download_dest + end + command.request_representation = Google::Apis::StorageV1beta2::Object::Representation + command.request_object = object_object + command.response_representation = Google::Apis::StorageV1beta2::Object::Representation + command.response_class = Google::Apis::StorageV1beta2::Object + command.params['sourceBucket'] = source_bucket unless source_bucket.nil? + command.params['sourceObject'] = source_object unless source_object.nil? + command.params['destinationBucket'] = destination_bucket unless destination_bucket.nil? + command.params['destinationObject'] = destination_object unless destination_object.nil? + command.query['ifGenerationMatch'] = if_generation_match unless if_generation_match.nil? + command.query['ifGenerationNotMatch'] = if_generation_not_match unless if_generation_not_match.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['ifSourceGenerationMatch'] = if_source_generation_match unless if_source_generation_match.nil? + command.query['ifSourceGenerationNotMatch'] = if_source_generation_not_match unless if_source_generation_not_match.nil? + command.query['ifSourceMetagenerationMatch'] = if_source_metageneration_match unless if_source_metageneration_match.nil? + command.query['ifSourceMetagenerationNotMatch'] = if_source_metageneration_not_match unless if_source_metageneration_not_match.nil? + command.query['projection'] = projection unless projection.nil? + command.query['sourceGeneration'] = source_generation unless source_generation.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes data blobs and associated metadata. Deletions are permanent if + # versioning is not enabled for the bucket, or if the generation parameter is + # used. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [Fixnum] generation + # If present, permanently deletes a specific revision of this object (as opposed + # to the latest version, the default). + # @param [Fixnum] if_generation_match + # Makes the operation conditional on whether the object's current generation + # matches the given value. + # @param [Fixnum] if_generation_not_match + # Makes the operation conditional on whether the object's current generation + # does not match the given value. + # @param [Fixnum] if_metageneration_match + # Makes the operation conditional on whether the object's current metageneration + # matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the operation conditional on whether the object's current metageneration + # does not match the given value. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_object(bucket, object, generation: nil, if_generation_match: nil, if_generation_not_match: nil, if_metageneration_match: nil, if_metageneration_not_match: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'b/{bucket}/o/{object}', options) + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['generation'] = generation unless generation.nil? + command.query['ifGenerationMatch'] = if_generation_match unless if_generation_match.nil? + command.query['ifGenerationNotMatch'] = if_generation_not_match unless if_generation_not_match.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves objects or their associated metadata. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [Fixnum] if_generation_match + # Makes the operation conditional on whether the object's generation matches the + # given value. + # @param [Fixnum] if_generation_not_match + # Makes the operation conditional on whether the object's generation does not + # match the given value. + # @param [Fixnum] if_metageneration_match + # Makes the operation conditional on whether the object's current metageneration + # matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the operation conditional on whether the object's current metageneration + # does not match the given value. + # @param [String] projection + # Set of properties to return. Defaults to noAcl. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_object(bucket, object, generation: nil, if_generation_match: nil, if_generation_not_match: nil, if_metageneration_match: nil, if_metageneration_not_match: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:get, 'b/{bucket}/o/{object}', options) + else + command = make_download_command(:get, 'b/{bucket}/o/{object}', options) + command.download_dest = download_dest + end + command.response_representation = Google::Apis::StorageV1beta2::Object::Representation + command.response_class = Google::Apis::StorageV1beta2::Object + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['generation'] = generation unless generation.nil? + command.query['ifGenerationMatch'] = if_generation_match unless if_generation_match.nil? + command.query['ifGenerationNotMatch'] = if_generation_not_match unless if_generation_not_match.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Stores new data blobs and associated metadata. + # @param [String] bucket + # Name of the bucket in which to store the new object. Overrides the provided + # object metadata's bucket value, if any. + # @param [Google::Apis::StorageV1beta2::Object] object_object + # @param [Fixnum] if_generation_match + # Makes the operation conditional on whether the object's current generation + # matches the given value. + # @param [Fixnum] if_generation_not_match + # Makes the operation conditional on whether the object's current generation + # does not match the given value. + # @param [Fixnum] if_metageneration_match + # Makes the operation conditional on whether the object's current metageneration + # matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the operation conditional on whether the object's current metageneration + # does not match the given value. + # @param [String] name + # Name of the object. Required when the object metadata is not otherwise + # provided. Overrides the object metadata's name value, if any. + # @param [String] projection + # Set of properties to return. Defaults to noAcl, unless the object resource + # specifies the acl property, when it defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] upload_source + # IO stream or filename containing content to upload + # @param [String] content_type + # Content type of the uploaded content. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_object(bucket, object_object = nil, if_generation_match: nil, if_generation_not_match: nil, if_metageneration_match: nil, if_metageneration_not_match: nil, name: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) + if upload_source.nil? + command = make_simple_command(:post, 'b/{bucket}/o', options) + else + command = make_upload_command(:post, 'b/{bucket}/o', options) + command.upload_source = upload_source + command.upload_content_type = content_type + end + command.request_representation = Google::Apis::StorageV1beta2::Object::Representation + command.request_object = object_object + command.response_representation = Google::Apis::StorageV1beta2::Object::Representation + command.response_class = Google::Apis::StorageV1beta2::Object + command.params['bucket'] = bucket unless bucket.nil? + command.query['ifGenerationMatch'] = if_generation_match unless if_generation_match.nil? + command.query['ifGenerationNotMatch'] = if_generation_not_match unless if_generation_not_match.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['name'] = name unless name.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a list of objects matching the criteria. + # @param [String] bucket + # Name of the bucket in which to look for objects. + # @param [String] delimiter + # Returns results in a directory-like mode. items will contain only objects + # whose names, aside from the prefix, do not contain delimiter. Objects whose + # names, aside from the prefix, contain delimiter will have their name, + # truncated after the delimiter, returned in prefixes. Duplicate prefixes are + # omitted. + # @param [Fixnum] max_results + # Maximum number of items plus prefixes to return. As duplicate prefixes are + # omitted, fewer total results may be returned than requested. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] prefix + # Filter results to objects whose names begin with this prefix. + # @param [String] projection + # Set of properties to return. Defaults to noAcl. + # @param [Boolean] versions + # If true, lists all versions of a file as distinct results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Objects] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Objects] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_objects(bucket, delimiter: nil, max_results: nil, page_token: nil, prefix: nil, projection: nil, versions: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'b/{bucket}/o', options) + command.response_representation = Google::Apis::StorageV1beta2::Objects::Representation + command.response_class = Google::Apis::StorageV1beta2::Objects + command.params['bucket'] = bucket unless bucket.nil? + command.query['delimiter'] = delimiter unless delimiter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['prefix'] = prefix unless prefix.nil? + command.query['projection'] = projection unless projection.nil? + command.query['versions'] = versions unless versions.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a data blob's associated metadata. This method supports patch + # semantics. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [Google::Apis::StorageV1beta2::Object] object_object + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [Fixnum] if_generation_match + # Makes the operation conditional on whether the object's current generation + # matches the given value. + # @param [Fixnum] if_generation_not_match + # Makes the operation conditional on whether the object's current generation + # does not match the given value. + # @param [Fixnum] if_metageneration_match + # Makes the operation conditional on whether the object's current metageneration + # matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the operation conditional on whether the object's current metageneration + # does not match the given value. + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_object(bucket, object, object_object = nil, generation: nil, if_generation_match: nil, if_generation_not_match: nil, if_metageneration_match: nil, if_metageneration_not_match: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, 'b/{bucket}/o/{object}', options) + command.request_representation = Google::Apis::StorageV1beta2::Object::Representation + command.request_object = object_object + command.response_representation = Google::Apis::StorageV1beta2::Object::Representation + command.response_class = Google::Apis::StorageV1beta2::Object + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['generation'] = generation unless generation.nil? + command.query['ifGenerationMatch'] = if_generation_match unless if_generation_match.nil? + command.query['ifGenerationNotMatch'] = if_generation_not_match unless if_generation_not_match.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates a data blob's associated metadata. + # @param [String] bucket + # Name of the bucket in which the object resides. + # @param [String] object + # Name of the object. + # @param [Google::Apis::StorageV1beta2::Object] object_object + # @param [Fixnum] generation + # If present, selects a specific revision of this object (as opposed to the + # latest version, the default). + # @param [Fixnum] if_generation_match + # Makes the operation conditional on whether the object's current generation + # matches the given value. + # @param [Fixnum] if_generation_not_match + # Makes the operation conditional on whether the object's current generation + # does not match the given value. + # @param [Fixnum] if_metageneration_match + # Makes the operation conditional on whether the object's current metageneration + # matches the given value. + # @param [Fixnum] if_metageneration_not_match + # Makes the operation conditional on whether the object's current metageneration + # does not match the given value. + # @param [String] projection + # Set of properties to return. Defaults to full. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [IO, String] download_dest + # IO stream or filename to receive content download + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Object] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Object] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_object(bucket, object, object_object = nil, generation: nil, if_generation_match: nil, if_generation_not_match: nil, if_metageneration_match: nil, if_metageneration_not_match: nil, projection: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) + if download_dest.nil? + command = make_simple_command(:put, 'b/{bucket}/o/{object}', options) + else + command = make_download_command(:put, 'b/{bucket}/o/{object}', options) + command.download_dest = download_dest + end + command.request_representation = Google::Apis::StorageV1beta2::Object::Representation + command.request_object = object_object + command.response_representation = Google::Apis::StorageV1beta2::Object::Representation + command.response_class = Google::Apis::StorageV1beta2::Object + command.params['bucket'] = bucket unless bucket.nil? + command.params['object'] = object unless object.nil? + command.query['generation'] = generation unless generation.nil? + command.query['ifGenerationMatch'] = if_generation_match unless if_generation_match.nil? + command.query['ifGenerationNotMatch'] = if_generation_not_match unless if_generation_not_match.nil? + command.query['ifMetagenerationMatch'] = if_metageneration_match unless if_metageneration_match.nil? + command.query['ifMetagenerationNotMatch'] = if_metageneration_not_match unless if_metageneration_not_match.nil? + command.query['projection'] = projection unless projection.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Watch for changes on all objects in a bucket. + # @param [String] bucket + # Name of the bucket in which to look for objects. + # @param [Google::Apis::StorageV1beta2::Channel] channel_object + # @param [String] delimiter + # Returns results in a directory-like mode. items will contain only objects + # whose names, aside from the prefix, do not contain delimiter. Objects whose + # names, aside from the prefix, contain delimiter will have their name, + # truncated after the delimiter, returned in prefixes. Duplicate prefixes are + # omitted. + # @param [Fixnum] max_results + # Maximum number of items plus prefixes to return. As duplicate prefixes are + # omitted, fewer total results may be returned than requested. + # @param [String] page_token + # A previously-returned page token representing part of the larger set of + # results to view. + # @param [String] prefix + # Filter results to objects whose names begin with this prefix. + # @param [String] projection + # Set of properties to return. Defaults to noAcl. + # @param [Boolean] versions + # If true, lists all versions of a file as distinct results. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::StorageV1beta2::Channel] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::StorageV1beta2::Channel] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def watch_object_all(bucket, channel_object = nil, delimiter: nil, max_results: nil, page_token: nil, prefix: nil, projection: nil, versions: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'b/{bucket}/o/watch', options) + command.request_representation = Google::Apis::StorageV1beta2::Channel::Representation + command.request_object = channel_object + command.response_representation = Google::Apis::StorageV1beta2::Channel::Representation + command.response_class = Google::Apis::StorageV1beta2::Channel + command.params['bucket'] = bucket unless bucket.nil? + command.query['delimiter'] = delimiter unless delimiter.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['prefix'] = prefix unless prefix.nil? + command.query['projection'] = projection unless projection.nil? + command.query['versions'] = versions unless versions.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/taskqueue_v1beta1.rb b/generated/google/apis/taskqueue_v1beta1.rb new file mode 100644 index 000000000..244d940c4 --- /dev/null +++ b/generated/google/apis/taskqueue_v1beta1.rb @@ -0,0 +1,37 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/taskqueue_v1beta1/service.rb' +require 'google/apis/taskqueue_v1beta1/classes.rb' +require 'google/apis/taskqueue_v1beta1/representations.rb' + +module Google + module Apis + # TaskQueue API + # + # Accesses a Google App Engine Pull Task Queue over REST. + # + # @see https://developers.google.com/appengine/docs/python/taskqueue/rest + module TaskqueueV1beta1 + VERSION = 'V1beta1' + REVISION = '20160428' + + # Manage your Tasks and Taskqueues + AUTH_TASKQUEUE = 'https://www.googleapis.com/auth/taskqueue' + + # Consume Tasks from your Taskqueues + AUTH_TASKQUEUE_CONSUMER = 'https://www.googleapis.com/auth/taskqueue.consumer' + end + end +end diff --git a/generated/google/apis/taskqueue_v1beta1/classes.rb b/generated/google/apis/taskqueue_v1beta1/classes.rb new file mode 100644 index 000000000..85e77b96b --- /dev/null +++ b/generated/google/apis/taskqueue_v1beta1/classes.rb @@ -0,0 +1,242 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module TaskqueueV1beta1 + + # + class Task + include Google::Apis::Core::Hashable + + # Time (in seconds since the epoch) at which the task was enqueued. + # Corresponds to the JSON property `enqueueTimestamp` + # @return [Fixnum] + attr_accessor :enqueue_timestamp + + # Name of the task. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of object returned, in this case set to task. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Time (in seconds since the epoch) at which the task lease will expire. This + # value is 0 if the task isnt currently leased out to a worker. + # Corresponds to the JSON property `leaseTimestamp` + # @return [Fixnum] + attr_accessor :lease_timestamp + + # A bag of bytes which is the task payload. The payload on the JSON side is + # always Base64 encoded. + # Corresponds to the JSON property `payloadBase64` + # @return [String] + attr_accessor :payload_base64 + + # Name of the queue that the task is in. + # Corresponds to the JSON property `queueName` + # @return [String] + attr_accessor :queue_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enqueue_timestamp = args[:enqueue_timestamp] if args.key?(:enqueue_timestamp) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @lease_timestamp = args[:lease_timestamp] if args.key?(:lease_timestamp) + @payload_base64 = args[:payload_base64] if args.key?(:payload_base64) + @queue_name = args[:queue_name] if args.key?(:queue_name) + end + end + + # + class TaskQueue + include Google::Apis::Core::Hashable + + # ACLs that are applicable to this TaskQueue object. + # Corresponds to the JSON property `acl` + # @return [Google::Apis::TaskqueueV1beta1::TaskQueue::Acl] + attr_accessor :acl + + # Name of the taskqueue. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The kind of REST object returned, in this case taskqueue. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The number of times we should lease out tasks before giving up on them. If + # unset we lease them out forever until a worker deletes the task. + # Corresponds to the JSON property `maxLeases` + # @return [Fixnum] + attr_accessor :max_leases + + # Statistics for the TaskQueue object in question. + # Corresponds to the JSON property `stats` + # @return [Google::Apis::TaskqueueV1beta1::TaskQueue::Stats] + attr_accessor :stats + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @acl = args[:acl] if args.key?(:acl) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @max_leases = args[:max_leases] if args.key?(:max_leases) + @stats = args[:stats] if args.key?(:stats) + end + + # ACLs that are applicable to this TaskQueue object. + class Acl + include Google::Apis::Core::Hashable + + # Email addresses of users who are "admins" of the TaskQueue. This means they + # can control the queue, eg set ACLs for the queue. + # Corresponds to the JSON property `adminEmails` + # @return [Array] + attr_accessor :admin_emails + + # Email addresses of users who can "consume" tasks from the TaskQueue. This + # means they can Dequeue and Delete tasks from the queue. + # Corresponds to the JSON property `consumerEmails` + # @return [Array] + attr_accessor :consumer_emails + + # Email addresses of users who can "produce" tasks into the TaskQueue. This + # means they can Insert tasks into the queue. + # Corresponds to the JSON property `producerEmails` + # @return [Array] + attr_accessor :producer_emails + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @admin_emails = args[:admin_emails] if args.key?(:admin_emails) + @consumer_emails = args[:consumer_emails] if args.key?(:consumer_emails) + @producer_emails = args[:producer_emails] if args.key?(:producer_emails) + end + end + + # Statistics for the TaskQueue object in question. + class Stats + include Google::Apis::Core::Hashable + + # Number of tasks leased in the last hour. + # Corresponds to the JSON property `leasedLastHour` + # @return [Fixnum] + attr_accessor :leased_last_hour + + # Number of tasks leased in the last minute. + # Corresponds to the JSON property `leasedLastMinute` + # @return [Fixnum] + attr_accessor :leased_last_minute + + # The timestamp (in seconds since the epoch) of the oldest unfinished task. + # Corresponds to the JSON property `oldestTask` + # @return [Fixnum] + attr_accessor :oldest_task + + # Number of tasks in the queue. + # Corresponds to the JSON property `totalTasks` + # @return [Fixnum] + attr_accessor :total_tasks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @leased_last_hour = args[:leased_last_hour] if args.key?(:leased_last_hour) + @leased_last_minute = args[:leased_last_minute] if args.key?(:leased_last_minute) + @oldest_task = args[:oldest_task] if args.key?(:oldest_task) + @total_tasks = args[:total_tasks] if args.key?(:total_tasks) + end + end + end + + # + class Tasks + include Google::Apis::Core::Hashable + + # The actual list of tasks returned as a result of the lease operation. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of object returned, a list of tasks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # + class Tasks2 + include Google::Apis::Core::Hashable + + # The actual list of tasks currently active in the TaskQueue. + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # The kind of object returned, a list of tasks. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + end + end +end diff --git a/generated/google/apis/taskqueue_v1beta1/representations.rb b/generated/google/apis/taskqueue_v1beta1/representations.rb new file mode 100644 index 000000000..7c917c7e1 --- /dev/null +++ b/generated/google/apis/taskqueue_v1beta1/representations.rb @@ -0,0 +1,124 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module TaskqueueV1beta1 + + class Task + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TaskQueue + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Acl + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Stats + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Tasks + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Tasks2 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Task + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enqueue_timestamp, :numeric_string => true, as: 'enqueueTimestamp' + property :id, as: 'id' + property :kind, as: 'kind' + property :lease_timestamp, :numeric_string => true, as: 'leaseTimestamp' + property :payload_base64, as: 'payloadBase64' + property :queue_name, as: 'queueName' + end + end + + class TaskQueue + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :acl, as: 'acl', class: Google::Apis::TaskqueueV1beta1::TaskQueue::Acl, decorator: Google::Apis::TaskqueueV1beta1::TaskQueue::Acl::Representation + + property :id, as: 'id' + property :kind, as: 'kind' + property :max_leases, as: 'maxLeases' + property :stats, as: 'stats', class: Google::Apis::TaskqueueV1beta1::TaskQueue::Stats, decorator: Google::Apis::TaskqueueV1beta1::TaskQueue::Stats::Representation + + end + + class Acl + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :admin_emails, as: 'adminEmails' + collection :consumer_emails, as: 'consumerEmails' + collection :producer_emails, as: 'producerEmails' + end + end + + class Stats + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :leased_last_hour, :numeric_string => true, as: 'leasedLastHour' + property :leased_last_minute, :numeric_string => true, as: 'leasedLastMinute' + property :oldest_task, :numeric_string => true, as: 'oldestTask' + property :total_tasks, as: 'totalTasks' + end + end + end + + class Tasks + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::TaskqueueV1beta1::Task, decorator: Google::Apis::TaskqueueV1beta1::Task::Representation + + property :kind, as: 'kind' + end + end + + class Tasks2 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :items, as: 'items', class: Google::Apis::TaskqueueV1beta1::Task, decorator: Google::Apis::TaskqueueV1beta1::Task::Representation + + property :kind, as: 'kind' + end + end + end + end +end diff --git a/generated/google/apis/taskqueue_v1beta1/service.rb b/generated/google/apis/taskqueue_v1beta1/service.rb new file mode 100644 index 000000000..6d507dbfb --- /dev/null +++ b/generated/google/apis/taskqueue_v1beta1/service.rb @@ -0,0 +1,269 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module TaskqueueV1beta1 + # TaskQueue API + # + # Accesses a Google App Engine Pull Task Queue over REST. + # + # @example + # require 'google/apis/taskqueue_v1beta1' + # + # Taskqueue = Google::Apis::TaskqueueV1beta1 # Alias the module + # service = Taskqueue::TaskqueueService.new + # + # @see https://developers.google.com/appengine/docs/python/taskqueue/rest + class TaskqueueService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'taskqueue/v1beta1/projects/') + @batch_path = 'batch' + end + + # Get detailed information about a TaskQueue. + # @param [String] project + # The project under which the queue lies. + # @param [String] taskqueue + # The id of the taskqueue to get the properties of. + # @param [Boolean] get_stats + # Whether to get stats. Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TaskqueueV1beta1::TaskQueue] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TaskqueueV1beta1::TaskQueue] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_taskqueue(project, taskqueue, get_stats: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/taskqueues/{taskqueue}', options) + command.response_representation = Google::Apis::TaskqueueV1beta1::TaskQueue::Representation + command.response_class = Google::Apis::TaskqueueV1beta1::TaskQueue + command.params['project'] = project unless project.nil? + command.params['taskqueue'] = taskqueue unless taskqueue.nil? + command.query['getStats'] = get_stats unless get_stats.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Delete a task from a TaskQueue. + # @param [String] project + # The project under which the queue lies. + # @param [String] taskqueue + # The taskqueue to delete a task from. + # @param [String] task + # The id of the task to delete. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_task(project, taskqueue, task, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, '{project}/taskqueues/{taskqueue}/tasks/{task}', options) + command.params['project'] = project unless project.nil? + command.params['taskqueue'] = taskqueue unless taskqueue.nil? + command.params['task'] = task unless task.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Get a particular task from a TaskQueue. + # @param [String] project + # The project under which the queue lies. + # @param [String] taskqueue + # The taskqueue in which the task belongs. + # @param [String] task + # The task to get properties of. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TaskqueueV1beta1::Task] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TaskqueueV1beta1::Task] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_task(project, taskqueue, task, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/taskqueues/{taskqueue}/tasks/{task}', options) + command.response_representation = Google::Apis::TaskqueueV1beta1::Task::Representation + command.response_class = Google::Apis::TaskqueueV1beta1::Task + command.params['project'] = project unless project.nil? + command.params['taskqueue'] = taskqueue unless taskqueue.nil? + command.params['task'] = task unless task.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lease 1 or more tasks from a TaskQueue. + # @param [String] project + # The project under which the queue lies. + # @param [String] taskqueue + # The taskqueue to lease a task from. + # @param [Fixnum] num_tasks + # The number of tasks to lease. + # @param [Fixnum] lease_secs + # The lease in seconds. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TaskqueueV1beta1::Tasks] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TaskqueueV1beta1::Tasks] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def lease_task(project, taskqueue, num_tasks, lease_secs, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{project}/taskqueues/{taskqueue}/tasks/lease', options) + command.response_representation = Google::Apis::TaskqueueV1beta1::Tasks::Representation + command.response_class = Google::Apis::TaskqueueV1beta1::Tasks + command.params['project'] = project unless project.nil? + command.params['taskqueue'] = taskqueue unless taskqueue.nil? + command.query['leaseSecs'] = lease_secs unless lease_secs.nil? + command.query['numTasks'] = num_tasks unless num_tasks.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # List Tasks in a TaskQueue + # @param [String] project + # The project under which the queue lies. + # @param [String] taskqueue + # The id of the taskqueue to list tasks from. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::TaskqueueV1beta1::Tasks2] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::TaskqueueV1beta1::Tasks2] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_tasks(project, taskqueue, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/taskqueues/{taskqueue}/tasks', options) + command.response_representation = Google::Apis::TaskqueueV1beta1::Tasks2::Representation + command.response_class = Google::Apis::TaskqueueV1beta1::Tasks2 + command.params['project'] = project unless project.nil? + command.params['taskqueue'] = taskqueue unless taskqueue.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/toolresults_v1beta3firstparty.rb b/generated/google/apis/toolresults_v1beta3firstparty.rb new file mode 100644 index 000000000..14a32a6d7 --- /dev/null +++ b/generated/google/apis/toolresults_v1beta3firstparty.rb @@ -0,0 +1,31 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/toolresults_v1beta3firstparty/service.rb' +require 'google/apis/toolresults_v1beta3firstparty/classes.rb' +require 'google/apis/toolresults_v1beta3firstparty/representations.rb' + +module Google + module Apis + # Cloud Tool Results firstparty API + # + # Reads and publishes results from Firebase Test Lab. + # + # @see https://firebase.google.com/docs/test-lab/ + module ToolresultsV1beta3firstparty + VERSION = 'V1beta3firstparty' + REVISION = '20170811' + end + end +end diff --git a/generated/google/apis/toolresults_v1beta3firstparty/classes.rb b/generated/google/apis/toolresults_v1beta3firstparty/classes.rb new file mode 100644 index 000000000..c897ffd13 --- /dev/null +++ b/generated/google/apis/toolresults_v1beta3firstparty/classes.rb @@ -0,0 +1,2630 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ToolresultsV1beta3firstparty + + # Android app information. + class AndroidAppInfo + include Google::Apis::Core::Hashable + + # The name of the app. Optional + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The package name of the app. Required. + # Corresponds to the JSON property `packageName` + # @return [String] + attr_accessor :package_name + + # The internal version code of the app. Optional. + # Corresponds to the JSON property `versionCode` + # @return [String] + attr_accessor :version_code + + # The version name of the app. Optional. + # Corresponds to the JSON property `versionName` + # @return [String] + attr_accessor :version_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @package_name = args[:package_name] if args.key?(:package_name) + @version_code = args[:version_code] if args.key?(:version_code) + @version_name = args[:version_name] if args.key?(:version_name) + end + end + + # A test of an Android application that can control an Android component + # independently of its normal lifecycle. + # See for more information on types of Android tests. + class AndroidInstrumentationTest + include Google::Apis::Core::Hashable + + # The java package for the test to be executed. Required + # Corresponds to the JSON property `testPackageId` + # @return [String] + attr_accessor :test_package_id + + # The InstrumentationTestRunner class. Required + # Corresponds to the JSON property `testRunnerClass` + # @return [String] + attr_accessor :test_runner_class + + # Each target must be fully qualified with the package name or class name, in + # one of these formats: - "package package_name" - "class package_name. + # class_name" - "class package_name.class_name#method_name" + # If empty, all targets in the module will be run. + # Corresponds to the JSON property `testTargets` + # @return [Array] + attr_accessor :test_targets + + # The flag indicates whether Android Test Orchestrator will be used to run test + # or not. Test orchestrator is used if either: - orchestrator_option field is + # USE_ORCHESTRATOR, and test runner is compatible with orchestrator. Or - + # orchestrator_option field is unspecified or ORCHESTRATOR_OPTION_UNSPECIFIED, + # and test runner is compatible with orchestrator. + # Corresponds to the JSON property `useOrchestrator` + # @return [Boolean] + attr_accessor :use_orchestrator + alias_method :use_orchestrator?, :use_orchestrator + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @test_package_id = args[:test_package_id] if args.key?(:test_package_id) + @test_runner_class = args[:test_runner_class] if args.key?(:test_runner_class) + @test_targets = args[:test_targets] if args.key?(:test_targets) + @use_orchestrator = args[:use_orchestrator] if args.key?(:use_orchestrator) + end + end + + # A test of an android application that explores the application on a virtual or + # physical Android device, finding culprits and crashes as it goes. + class AndroidRoboTest + include Google::Apis::Core::Hashable + + # The initial activity that should be used to start the app. Optional + # Corresponds to the JSON property `appInitialActivity` + # @return [String] + attr_accessor :app_initial_activity + + # The java package for the bootstrap. Optional + # Corresponds to the JSON property `bootstrapPackageId` + # @return [String] + attr_accessor :bootstrap_package_id + + # The runner class for the bootstrap. Optional + # Corresponds to the JSON property `bootstrapRunnerClass` + # @return [String] + attr_accessor :bootstrap_runner_class + + # The max depth of the traversal stack Robo can explore. Optional + # Corresponds to the JSON property `maxDepth` + # @return [Fixnum] + attr_accessor :max_depth + + # The max number of steps/actions Robo can execute. Default is no limit (0). + # Optional + # Corresponds to the JSON property `maxSteps` + # @return [Fixnum] + attr_accessor :max_steps + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_initial_activity = args[:app_initial_activity] if args.key?(:app_initial_activity) + @bootstrap_package_id = args[:bootstrap_package_id] if args.key?(:bootstrap_package_id) + @bootstrap_runner_class = args[:bootstrap_runner_class] if args.key?(:bootstrap_runner_class) + @max_depth = args[:max_depth] if args.key?(:max_depth) + @max_steps = args[:max_steps] if args.key?(:max_steps) + end + end + + # An Android mobile test specification. + class AndroidTest + include Google::Apis::Core::Hashable + + # Android app information. + # Corresponds to the JSON property `androidAppInfo` + # @return [Google::Apis::ToolresultsV1beta3firstparty::AndroidAppInfo] + attr_accessor :android_app_info + + # A test of an Android application that can control an Android component + # independently of its normal lifecycle. + # See for more information on types of Android tests. + # Corresponds to the JSON property `androidInstrumentationTest` + # @return [Google::Apis::ToolresultsV1beta3firstparty::AndroidInstrumentationTest] + attr_accessor :android_instrumentation_test + + # A test of an android application that explores the application on a virtual or + # physical Android device, finding culprits and crashes as it goes. + # Corresponds to the JSON property `androidRoboTest` + # @return [Google::Apis::ToolresultsV1beta3firstparty::AndroidRoboTest] + attr_accessor :android_robo_test + + # 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. + # # Examples + # Example 1: Compute Duration from two Timestamps in pseudo code. + # Timestamp start = ...; Timestamp end = ...; Duration duration = ...; + # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - + # start.nanos; + # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000; + # ` else if (durations.seconds > 0 && duration.nanos < 0) ` duration.seconds -= + # 1; duration.nanos += 1000000000; ` + # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. + # Timestamp start = ...; Duration duration = ...; Timestamp end = ...; + # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + + # duration.nanos; + # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; ` + # Example 3: Compute Duration from datetime.timedelta in Python. + # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration. + # FromTimedelta(td) + # # JSON Mapping + # In JSON format, the Duration type is encoded as a string rather than an object, + # where the string ends in the suffix "s" (indicating seconds) and is preceded + # by the number of seconds, with nanoseconds expressed as fractional seconds. + # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as " + # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3. + # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON + # format as "3.000001s". + # Corresponds to the JSON property `testTimeout` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Duration] + attr_accessor :test_timeout + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @android_app_info = args[:android_app_info] if args.key?(:android_app_info) + @android_instrumentation_test = args[:android_instrumentation_test] if args.key?(:android_instrumentation_test) + @android_robo_test = args[:android_robo_test] if args.key?(:android_robo_test) + @test_timeout = args[:test_timeout] if args.key?(:test_timeout) + end + end + + # `Any` contains an arbitrary serialized protocol buffer message along with a + # URL that describes the type of the serialized message. + # Protobuf library provides support to pack/unpack Any values in the form of + # utility functions or additional generated methods of the Any type. + # Example 1: Pack and unpack a message in C++. + # Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) ` ... ` + # Example 2: Pack and unpack a message in Java. + # Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) ` foo = any. + # unpack(Foo.class); ` + # Example 3: Pack and unpack a message in Python. + # foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any. + # Unpack(foo) ... + # Example 4: Pack and unpack a message in Go + # foo := &pb.Foo`...` any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo`` if + # err := ptypes.UnmarshalAny(any, foo); err != nil ` ... ` + # The 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". + # JSON ==== 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: + # package google.profile; message Person ` string first_name = 1; string + # last_name = 2; ` + # ` "@type": "type.googleapis.com/google.profile.Person", "firstName": , " + # lastName": ` + # If 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][]): + # ` "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" ` + class Any + include Google::Apis::Core::Hashable + + # A URL/resource name whose content describes the type of the serialized + # protocol buffer message. + # For URLs which use the scheme `http`, `https`, or no scheme, the following + # restrictions and interpretations apply: + # * 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.) + # Schemes other than `http`, `https` (or the empty scheme) might be used with + # implementation specific semantics. + # Corresponds to the JSON property `typeUrl` + # @return [String] + attr_accessor :type_url + + # Must be a valid serialized protocol buffer of the above specified type. + # Corresponds to the JSON property `value` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @type_url = args[:type_url] if args.key?(:type_url) + @value = args[:value] if args.key?(:value) + end + end + + # + class AppStartTime + include Google::Apis::Core::Hashable + + # 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. + # # Examples + # Example 1: Compute Duration from two Timestamps in pseudo code. + # Timestamp start = ...; Timestamp end = ...; Duration duration = ...; + # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - + # start.nanos; + # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000; + # ` else if (durations.seconds > 0 && duration.nanos < 0) ` duration.seconds -= + # 1; duration.nanos += 1000000000; ` + # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. + # Timestamp start = ...; Duration duration = ...; Timestamp end = ...; + # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + + # duration.nanos; + # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; ` + # Example 3: Compute Duration from datetime.timedelta in Python. + # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration. + # FromTimedelta(td) + # # JSON Mapping + # In JSON format, the Duration type is encoded as a string rather than an object, + # where the string ends in the suffix "s" (indicating seconds) and is preceded + # by the number of seconds, with nanoseconds expressed as fractional seconds. + # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as " + # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3. + # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON + # format as "3.000001s". + # Corresponds to the JSON property `fullyDrawnTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Duration] + attr_accessor :fully_drawn_time + + # 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. + # # Examples + # Example 1: Compute Duration from two Timestamps in pseudo code. + # Timestamp start = ...; Timestamp end = ...; Duration duration = ...; + # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - + # start.nanos; + # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000; + # ` else if (durations.seconds > 0 && duration.nanos < 0) ` duration.seconds -= + # 1; duration.nanos += 1000000000; ` + # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. + # Timestamp start = ...; Duration duration = ...; Timestamp end = ...; + # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + + # duration.nanos; + # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; ` + # Example 3: Compute Duration from datetime.timedelta in Python. + # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration. + # FromTimedelta(td) + # # JSON Mapping + # In JSON format, the Duration type is encoded as a string rather than an object, + # where the string ends in the suffix "s" (indicating seconds) and is preceded + # by the number of seconds, with nanoseconds expressed as fractional seconds. + # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as " + # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3. + # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON + # format as "3.000001s". + # Corresponds to the JSON property `initialDisplayTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Duration] + attr_accessor :initial_display_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fully_drawn_time = args[:fully_drawn_time] if args.key?(:fully_drawn_time) + @initial_display_time = args[:initial_display_time] if args.key?(:initial_display_time) + end + end + + # Encapsulates the metadata for basic sample series represented by a line chart + class BasicPerfSampleSeries + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `perfMetricType` + # @return [String] + attr_accessor :perf_metric_type + + # + # Corresponds to the JSON property `perfUnit` + # @return [String] + attr_accessor :perf_unit + + # + # Corresponds to the JSON property `sampleSeriesLabel` + # @return [String] + attr_accessor :sample_series_label + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @perf_metric_type = args[:perf_metric_type] if args.key?(:perf_metric_type) + @perf_unit = args[:perf_unit] if args.key?(:perf_unit) + @sample_series_label = args[:sample_series_label] if args.key?(:sample_series_label) + end + end + + # The request must provide up to a maximum of 5000 samples to be created; a + # larger sample size will cause an INVALID_ARGUMENT error + class BatchCreatePerfSamplesRequest + include Google::Apis::Core::Hashable + + # The set of PerfSamples to create should not include existing timestamps + # Corresponds to the JSON property `perfSamples` + # @return [Array] + attr_accessor :perf_samples + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @perf_samples = args[:perf_samples] if args.key?(:perf_samples) + end + end + + # + class BatchCreatePerfSamplesResponse + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `perfSamples` + # @return [Array] + attr_accessor :perf_samples + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @perf_samples = args[:perf_samples] if args.key?(:perf_samples) + end + end + + # + class CpuInfo + include Google::Apis::Core::Hashable + + # description of the device processor ie '1.8 GHz hexa core 64-bit ARMv8-A' + # Corresponds to the JSON property `cpuProcessor` + # @return [String] + attr_accessor :cpu_processor + + # the CPU clock speed in GHz + # Corresponds to the JSON property `cpuSpeedInGhz` + # @return [Float] + attr_accessor :cpu_speed_in_ghz + + # the number of CPU cores + # Corresponds to the JSON property `numberOfCores` + # @return [Fixnum] + attr_accessor :number_of_cores + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cpu_processor = args[:cpu_processor] if args.key?(:cpu_processor) + @cpu_speed_in_ghz = args[:cpu_speed_in_ghz] if args.key?(:cpu_speed_in_ghz) + @number_of_cores = args[:number_of_cores] if args.key?(:number_of_cores) + end + end + + # 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. + # # Examples + # Example 1: Compute Duration from two Timestamps in pseudo code. + # Timestamp start = ...; Timestamp end = ...; Duration duration = ...; + # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - + # start.nanos; + # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000; + # ` else if (durations.seconds > 0 && duration.nanos < 0) ` duration.seconds -= + # 1; duration.nanos += 1000000000; ` + # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. + # Timestamp start = ...; Duration duration = ...; Timestamp end = ...; + # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + + # duration.nanos; + # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; ` + # Example 3: Compute Duration from datetime.timedelta in Python. + # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration. + # FromTimedelta(td) + # # JSON Mapping + # In JSON format, the Duration type is encoded as a string rather than an object, + # where the string ends in the suffix "s" (indicating seconds) and is preceded + # by the number of seconds, with nanoseconds expressed as fractional seconds. + # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as " + # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3. + # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON + # format as "3.000001s". + class Duration + include Google::Apis::Core::Hashable + + # Signed fractions of a second at nanosecond resolution of the span of time. + # Durations less than one second are represented with a 0 `seconds` field and a + # positive or negative `nanos` field. For durations of one second or more, a non- + # zero value for the `nanos` field must be of the same sign as the `seconds` + # field. Must be from -999,999,999 to +999,999,999 inclusive. + # Corresponds to the JSON property `nanos` + # @return [Fixnum] + attr_accessor :nanos + + # Signed seconds of the span of time. Must be from -315,576,000,000 to +315,576, + # 000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/ + # hr * 24 hr/day * 365.25 days/year * 10000 years + # Corresponds to the JSON property `seconds` + # @return [Fixnum] + attr_accessor :seconds + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @nanos = args[:nanos] if args.key?(:nanos) + @seconds = args[:seconds] if args.key?(:seconds) + end + end + + # An Execution represents a collection of Steps. For instance, it could + # represent: - a mobile test executed across a range of device configurations - + # a jenkins job with a build step followed by a test step + # The maximum size of an execution message is 1 MiB. + # An Execution can be updated until its state is set to COMPLETE at which point + # it becomes immutable. + class Execution + include Google::Apis::Core::Hashable + + # 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). + # # Examples + # Example 1: Compute Timestamp from POSIX `time()`. + # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0); + # Example 2: Compute Timestamp from POSIX `gettimeofday()`. + # struct timeval tv; gettimeofday(&tv, NULL); + # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv. + # tv_usec * 1000); + # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. + # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft. + # dwHighDateTime) << 32) | ft.dwLowDateTime; + # // 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)); + # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. + # long millis = System.currentTimeMillis(); + # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) . + # setNanos((int) ((millis % 1000) * 1000000)).build(); + # Example 5: Compute Timestamp from current time in Python. + # timestamp = Timestamp() timestamp.GetCurrentTime() + # # JSON Mapping + # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339]( + # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-` + # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always + # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are + # zero-padded to two digits each. The fractional seconds, which can go up to 9 + # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix + # indicates the timezone ("UTC"); the timezone is required, though only UTC (as + # indicated by "Z") is presently supported. + # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on + # January 15, 2017. + # In JavaScript, one can convert a Date object to this format using the standard + # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/ + # Reference/Global_Objects/Date/toISOString] method. In Python, a standard ` + # datetime.datetime` object can be converted to this format using [`strftime`]( + # https://docs.python.org/2/library/time.html#time.strftime) with the time + # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda + # Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/ + # apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a + # formatter capable of generating timestamps in this format. + # Corresponds to the JSON property `completionTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Timestamp] + attr_accessor :completion_time + + # 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). + # # Examples + # Example 1: Compute Timestamp from POSIX `time()`. + # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0); + # Example 2: Compute Timestamp from POSIX `gettimeofday()`. + # struct timeval tv; gettimeofday(&tv, NULL); + # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv. + # tv_usec * 1000); + # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. + # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft. + # dwHighDateTime) << 32) | ft.dwLowDateTime; + # // 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)); + # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. + # long millis = System.currentTimeMillis(); + # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) . + # setNanos((int) ((millis % 1000) * 1000000)).build(); + # Example 5: Compute Timestamp from current time in Python. + # timestamp = Timestamp() timestamp.GetCurrentTime() + # # JSON Mapping + # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339]( + # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-` + # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always + # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are + # zero-padded to two digits each. The fractional seconds, which can go up to 9 + # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix + # indicates the timezone ("UTC"); the timezone is required, though only UTC (as + # indicated by "Z") is presently supported. + # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on + # January 15, 2017. + # In JavaScript, one can convert a Date object to this format using the standard + # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/ + # Reference/Global_Objects/Date/toISOString] method. In Python, a standard ` + # datetime.datetime` object can be converted to this format using [`strftime`]( + # https://docs.python.org/2/library/time.html#time.strftime) with the time + # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda + # Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/ + # apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a + # formatter capable of generating timestamps in this format. + # Corresponds to the JSON property `creationTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Timestamp] + attr_accessor :creation_time + + # A unique identifier within a History for this Execution. + # Returns INVALID_ARGUMENT if this field is set or overwritten by the caller. + # - In response always set - In create/update request: never set + # Corresponds to the JSON property `executionId` + # @return [String] + attr_accessor :execution_id + + # Interprets a result so that humans and machines can act on it. + # Corresponds to the JSON property `outcome` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Outcome] + attr_accessor :outcome + + # The details about how to run the execution. + # Corresponds to the JSON property `specification` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Specification] + attr_accessor :specification + + # The initial state is IN_PROGRESS. + # The only legal state transitions is from IN_PROGRESS to COMPLETE. + # A PRECONDITION_FAILED will be returned if an invalid transition is requested. + # The state can only be set to COMPLETE once. A FAILED_PRECONDITION will be + # returned if the state is set to COMPLETE multiple times. + # If the state is set to COMPLETE, all the in-progress steps within the + # execution will be set as COMPLETE. If the outcome of the step is not set, the + # outcome will be set to INCONCLUSIVE. + # - In response always set - In create/update request: optional + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # TestExecution Matrix ID that the TestExecutionService uses. + # - In response: present if set by create - In create: optional - In update: + # never set + # Corresponds to the JSON property `testExecutionMatrixId` + # @return [String] + attr_accessor :test_execution_matrix_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @completion_time = args[:completion_time] if args.key?(:completion_time) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @execution_id = args[:execution_id] if args.key?(:execution_id) + @outcome = args[:outcome] if args.key?(:outcome) + @specification = args[:specification] if args.key?(:specification) + @state = args[:state] if args.key?(:state) + @test_execution_matrix_id = args[:test_execution_matrix_id] if args.key?(:test_execution_matrix_id) + end + end + + # + class FailureDetail + include Google::Apis::Core::Hashable + + # If the failure was severe because the system under test crashed. + # Corresponds to the JSON property `crashed` + # @return [Boolean] + attr_accessor :crashed + alias_method :crashed?, :crashed + + # If an app is not installed and thus no test can be run with the app. This + # might be caused by trying to run a test on an unsupported platform. + # Corresponds to the JSON property `notInstalled` + # @return [Boolean] + attr_accessor :not_installed + alias_method :not_installed?, :not_installed + + # If a native process other than the app crashed. + # Corresponds to the JSON property `otherNativeCrash` + # @return [Boolean] + attr_accessor :other_native_crash + alias_method :other_native_crash?, :other_native_crash + + # If the test overran some time limit, and that is why it failed. + # Corresponds to the JSON property `timedOut` + # @return [Boolean] + attr_accessor :timed_out + alias_method :timed_out?, :timed_out + + # If the robo was unable to crawl the app; perhaps because the app did not start. + # Corresponds to the JSON property `unableToCrawl` + # @return [Boolean] + attr_accessor :unable_to_crawl + alias_method :unable_to_crawl?, :unable_to_crawl + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @crashed = args[:crashed] if args.key?(:crashed) + @not_installed = args[:not_installed] if args.key?(:not_installed) + @other_native_crash = args[:other_native_crash] if args.key?(:other_native_crash) + @timed_out = args[:timed_out] if args.key?(:timed_out) + @unable_to_crawl = args[:unable_to_crawl] if args.key?(:unable_to_crawl) + end + end + + # A reference to a file. + class FileReference + include Google::Apis::Core::Hashable + + # The URI of a file stored in Google Cloud Storage. + # For example: http://storage.googleapis.com/mybucket/path/to/test.xml or in + # gsutil format: gs://mybucket/path/to/test.xml with version-specific info, gs:// + # mybucket/path/to/test.xml#1360383693690000 + # An INVALID_ARGUMENT error will be returned if the URI format is not supported. + # - In response: always set - In create/update request: always set + # Corresponds to the JSON property `fileUri` + # @return [String] + attr_accessor :file_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file_uri = args[:file_uri] if args.key?(:file_uri) + end + end + + # A History represents a sorted list of Executions ordered by the + # start_timestamp_millis field (descending). It can be used to group all the + # Executions of a continuous build. + # Note that the ordering only operates on one-dimension. If a repository has + # multiple branches, it means that multiple histories will need to be used in + # order to order Executions per branch. + class History + include Google::Apis::Core::Hashable + + # A short human-readable (plain text) name to display in the UI. Maximum of 100 + # characters. + # - In response: present if set during create. - In create request: optional + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # A unique identifier within a project for this History. + # Returns INVALID_ARGUMENT if this field is set or overwritten by the caller. + # - In response always set - In create request: never set + # Corresponds to the JSON property `historyId` + # @return [String] + attr_accessor :history_id + + # A name to uniquely identify a history within a project. Maximum of 100 + # characters. + # - In response always set - In create request: always set + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @history_id = args[:history_id] if args.key?(:history_id) + @name = args[:name] if args.key?(:name) + end + end + + # An image, with a link to the main image and a thumbnail. + class Image + include Google::Apis::Core::Hashable + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by [ + # gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users - Flexible enough to meet + # unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of [google.rpc.Code][ + # ], but it may accept additional error codes if needed. The error message + # should be a developer-facing English message that helps developers *understand* + # and *resolve* the error. If a localized user-facing error message is needed, + # put the localized message in the error details or localize it in the client. + # The optional error details may contain arbitrary information about the error. + # There is a predefined set of error detail types in the package `google.rpc` + # that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may have a + # `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the ` + # Status` message should be used directly inside batch response, one for each + # error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be represented + # directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Status] + attr_accessor :error + + # A reference to a ToolExecution output file. + # Corresponds to the JSON property `sourceImage` + # @return [Google::Apis::ToolresultsV1beta3firstparty::ToolOutputReference] + attr_accessor :source_image + + # The step to which the image is attached. + # Always set. + # Corresponds to the JSON property `stepId` + # @return [String] + attr_accessor :step_id + + # A single thumbnail, with its size and format. + # Corresponds to the JSON property `thumbnail` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Thumbnail] + attr_accessor :thumbnail + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error = args[:error] if args.key?(:error) + @source_image = args[:source_image] if args.key?(:source_image) + @step_id = args[:step_id] if args.key?(:step_id) + @thumbnail = args[:thumbnail] if args.key?(:thumbnail) + end + end + + # + class InconclusiveDetail + include Google::Apis::Core::Hashable + + # If the end user aborted the test execution before a pass or fail could be + # determined. For example, the user pressed ctrl-c which sent a kill signal to + # the test runner while the test was running. + # Corresponds to the JSON property `abortedByUser` + # @return [Boolean] + attr_accessor :aborted_by_user + alias_method :aborted_by_user?, :aborted_by_user + + # 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. + # For example, a mobile test requires provisioning a device where the test + # executes, and that provisioning can fail. + # Corresponds to the JSON property `infrastructureFailure` + # @return [Boolean] + attr_accessor :infrastructure_failure + alias_method :infrastructure_failure?, :infrastructure_failure + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @aborted_by_user = args[:aborted_by_user] if args.key?(:aborted_by_user) + @infrastructure_failure = args[:infrastructure_failure] if args.key?(:infrastructure_failure) + end + end + + # + class ListExecutionsResponse + include Google::Apis::Core::Hashable + + # Executions. + # Always set. + # Corresponds to the JSON property `executions` + # @return [Array] + attr_accessor :executions + + # A continuation token to resume the query at the next item. + # Will only be set if there are more Executions to fetch. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @executions = args[:executions] if args.key?(:executions) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for HistoryService.List + class ListHistoriesResponse + include Google::Apis::Core::Hashable + + # Histories. + # Corresponds to the JSON property `histories` + # @return [Array] + attr_accessor :histories + + # A continuation token to resume the query at the next item. + # Will only be set if there are more histories to fetch. + # Tokens are valid for up to one hour from the time of the first list request. + # For instance, if you make a list request at 1PM and use the token from this + # first request 10 minutes later, the token from this second response will only + # be valid for 50 minutes. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @histories = args[:histories] if args.key?(:histories) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # + class ListPerfSampleSeriesResponse + include Google::Apis::Core::Hashable + + # The resulting PerfSampleSeries sorted by id + # Corresponds to the JSON property `perfSampleSeries` + # @return [Array] + attr_accessor :perf_sample_series + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @perf_sample_series = args[:perf_sample_series] if args.key?(:perf_sample_series) + end + end + + # + class ListPerfSamplesResponse + include Google::Apis::Core::Hashable + + # Optional, returned if result size exceeds the page size specified in the + # request (or the default page size, 500, if unspecified). It indicates the last + # sample timestamp to be used as page_token in subsequent request + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # + # Corresponds to the JSON property `perfSamples` + # @return [Array] + attr_accessor :perf_samples + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @perf_samples = args[:perf_samples] if args.key?(:perf_samples) + end + end + + # + class ListScreenshotClustersResponse + include Google::Apis::Core::Hashable + + # The set of clustres associated with an execution Always set + # Corresponds to the JSON property `clusters` + # @return [Array] + attr_accessor :clusters + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @clusters = args[:clusters] if args.key?(:clusters) + end + end + + # A response containing the thumbnails in a step. + class ListStepThumbnailsResponse + include Google::Apis::Core::Hashable + + # A continuation token to resume the query at the next item. + # If set, indicates that there are more thumbnails to read, by calling list + # again with this value in the page_token field. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of image data. + # Images are returned in a deterministic order; they are ordered by these + # factors, in order of importance: * First, by their associated test case. + # Images without a test case are considered greater than images with one. * + # Second, by their creation time. Images without a creation time are greater + # than images with one. * Third, by the order in which they were added to the + # step (by calls to CreateStep or UpdateStep). + # Corresponds to the JSON property `thumbnails` + # @return [Array] + attr_accessor :thumbnails + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @thumbnails = args[:thumbnails] if args.key?(:thumbnails) + end + end + + # Response message for StepService.List. + class ListStepsResponse + include Google::Apis::Core::Hashable + + # A continuation token to resume the query at the next item. + # If set, indicates that there are more steps to read, by calling list again + # with this value in the page_token field. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # Steps. + # Corresponds to the JSON property `steps` + # @return [Array] + attr_accessor :steps + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @steps = args[:steps] if args.key?(:steps) + end + end + + # + class MemoryInfo + include Google::Apis::Core::Hashable + + # Maximum memory that can be allocated to the process in KiB + # Corresponds to the JSON property `memoryCapInKibibyte` + # @return [Fixnum] + attr_accessor :memory_cap_in_kibibyte + + # Total memory available on the device in KiB + # Corresponds to the JSON property `memoryTotalInKibibyte` + # @return [Fixnum] + attr_accessor :memory_total_in_kibibyte + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @memory_cap_in_kibibyte = args[:memory_cap_in_kibibyte] if args.key?(:memory_cap_in_kibibyte) + @memory_total_in_kibibyte = args[:memory_total_in_kibibyte] if args.key?(:memory_total_in_kibibyte) + end + end + + # Interprets a result so that humans and machines can act on it. + class Outcome + include Google::Apis::Core::Hashable + + # More information about a FAILURE outcome. + # Returns INVALID_ARGUMENT if this field is set but the summary is not FAILURE. + # Optional + # Corresponds to the JSON property `failureDetail` + # @return [Google::Apis::ToolresultsV1beta3firstparty::FailureDetail] + attr_accessor :failure_detail + + # More information about an INCONCLUSIVE outcome. + # Returns INVALID_ARGUMENT if this field is set but the summary is not + # INCONCLUSIVE. + # Optional + # Corresponds to the JSON property `inconclusiveDetail` + # @return [Google::Apis::ToolresultsV1beta3firstparty::InconclusiveDetail] + attr_accessor :inconclusive_detail + + # More information about a SKIPPED outcome. + # Returns INVALID_ARGUMENT if this field is set but the summary is not SKIPPED. + # Optional + # Corresponds to the JSON property `skippedDetail` + # @return [Google::Apis::ToolresultsV1beta3firstparty::SkippedDetail] + attr_accessor :skipped_detail + + # More information about a SUCCESS outcome. + # Returns INVALID_ARGUMENT if this field is set but the summary is not SUCCESS. + # Optional + # Corresponds to the JSON property `successDetail` + # @return [Google::Apis::ToolresultsV1beta3firstparty::SuccessDetail] + attr_accessor :success_detail + + # The simplest way to interpret a result. + # Required + # Corresponds to the JSON property `summary` + # @return [String] + attr_accessor :summary + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @failure_detail = args[:failure_detail] if args.key?(:failure_detail) + @inconclusive_detail = args[:inconclusive_detail] if args.key?(:inconclusive_detail) + @skipped_detail = args[:skipped_detail] if args.key?(:skipped_detail) + @success_detail = args[:success_detail] if args.key?(:success_detail) + @summary = args[:summary] if args.key?(:summary) + end + end + + # Encapsulates performance environment info + class PerfEnvironment + include Google::Apis::Core::Hashable + + # CPU related environment info + # Corresponds to the JSON property `cpuInfo` + # @return [Google::Apis::ToolresultsV1beta3firstparty::CpuInfo] + attr_accessor :cpu_info + + # Memory related environment info + # Corresponds to the JSON property `memoryInfo` + # @return [Google::Apis::ToolresultsV1beta3firstparty::MemoryInfo] + attr_accessor :memory_info + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cpu_info = args[:cpu_info] if args.key?(:cpu_info) + @memory_info = args[:memory_info] if args.key?(:memory_info) + end + end + + # A summary of perf metrics collected and performance environment info + class PerfMetricsSummary + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `appStartTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::AppStartTime] + attr_accessor :app_start_time + + # A tool results execution ID. + # Corresponds to the JSON property `executionId` + # @return [String] + attr_accessor :execution_id + + # A tool results history ID. + # Corresponds to the JSON property `historyId` + # @return [String] + attr_accessor :history_id + + # Encapsulates performance environment info + # Corresponds to the JSON property `perfEnvironment` + # @return [Google::Apis::ToolresultsV1beta3firstparty::PerfEnvironment] + attr_accessor :perf_environment + + # Set of resource collected + # Corresponds to the JSON property `perfMetrics` + # @return [Array] + attr_accessor :perf_metrics + + # The cloud project + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # A tool results step ID. + # Corresponds to the JSON property `stepId` + # @return [String] + attr_accessor :step_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @app_start_time = args[:app_start_time] if args.key?(:app_start_time) + @execution_id = args[:execution_id] if args.key?(:execution_id) + @history_id = args[:history_id] if args.key?(:history_id) + @perf_environment = args[:perf_environment] if args.key?(:perf_environment) + @perf_metrics = args[:perf_metrics] if args.key?(:perf_metrics) + @project_id = args[:project_id] if args.key?(:project_id) + @step_id = args[:step_id] if args.key?(:step_id) + end + end + + # Resource representing a single performance measure or data point + class PerfSample + include Google::Apis::Core::Hashable + + # 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). + # # Examples + # Example 1: Compute Timestamp from POSIX `time()`. + # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0); + # Example 2: Compute Timestamp from POSIX `gettimeofday()`. + # struct timeval tv; gettimeofday(&tv, NULL); + # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv. + # tv_usec * 1000); + # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. + # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft. + # dwHighDateTime) << 32) | ft.dwLowDateTime; + # // 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)); + # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. + # long millis = System.currentTimeMillis(); + # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) . + # setNanos((int) ((millis % 1000) * 1000000)).build(); + # Example 5: Compute Timestamp from current time in Python. + # timestamp = Timestamp() timestamp.GetCurrentTime() + # # JSON Mapping + # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339]( + # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-` + # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always + # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are + # zero-padded to two digits each. The fractional seconds, which can go up to 9 + # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix + # indicates the timezone ("UTC"); the timezone is required, though only UTC (as + # indicated by "Z") is presently supported. + # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on + # January 15, 2017. + # In JavaScript, one can convert a Date object to this format using the standard + # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/ + # Reference/Global_Objects/Date/toISOString] method. In Python, a standard ` + # datetime.datetime` object can be converted to this format using [`strftime`]( + # https://docs.python.org/2/library/time.html#time.strftime) with the time + # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda + # Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/ + # apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a + # formatter capable of generating timestamps in this format. + # Corresponds to the JSON property `sampleTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Timestamp] + attr_accessor :sample_time + + # Value observed + # Corresponds to the JSON property `value` + # @return [Float] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sample_time = args[:sample_time] if args.key?(:sample_time) + @value = args[:value] if args.key?(:value) + end + end + + # Resource representing a collection of performance samples (or data points) + class PerfSampleSeries + include Google::Apis::Core::Hashable + + # Encapsulates the metadata for basic sample series represented by a line chart + # Corresponds to the JSON property `basicPerfSampleSeries` + # @return [Google::Apis::ToolresultsV1beta3firstparty::BasicPerfSampleSeries] + attr_accessor :basic_perf_sample_series + + # A tool results execution ID. + # Corresponds to the JSON property `executionId` + # @return [String] + attr_accessor :execution_id + + # A tool results history ID. + # Corresponds to the JSON property `historyId` + # @return [String] + attr_accessor :history_id + + # The cloud project + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # A sample series id + # Corresponds to the JSON property `sampleSeriesId` + # @return [String] + attr_accessor :sample_series_id + + # A tool results step ID. + # Corresponds to the JSON property `stepId` + # @return [String] + attr_accessor :step_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @basic_perf_sample_series = args[:basic_perf_sample_series] if args.key?(:basic_perf_sample_series) + @execution_id = args[:execution_id] if args.key?(:execution_id) + @history_id = args[:history_id] if args.key?(:history_id) + @project_id = args[:project_id] if args.key?(:project_id) + @sample_series_id = args[:sample_series_id] if args.key?(:sample_series_id) + @step_id = args[:step_id] if args.key?(:step_id) + end + end + + # Per-project settings for the Tool Results service. + class ProjectSettings + include Google::Apis::Core::Hashable + + # The name of the Google Cloud Storage bucket to which results are written. + # By default, this is unset. + # In update request: optional In response: optional + # Corresponds to the JSON property `defaultBucket` + # @return [String] + attr_accessor :default_bucket + + # The name of the project's settings. + # Always of the form: projects/`project-id`/settings + # In update request: never set In response: always set + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @default_bucket = args[:default_bucket] if args.key?(:default_bucket) + @name = args[:name] if args.key?(:name) + end + end + + # Request message for StepService.PublishXunitXmlFiles. + class PublishXunitXmlFilesRequest + include Google::Apis::Core::Hashable + + # URI of the Xunit XML files to publish. + # The maximum size of the file this reference is pointing to is 50MB. + # Required. + # Corresponds to the JSON property `xunitXmlFiles` + # @return [Array] + attr_accessor :xunit_xml_files + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @xunit_xml_files = args[:xunit_xml_files] if args.key?(:xunit_xml_files) + end + end + + # + class Screen + include Google::Apis::Core::Hashable + + # File reference of the png file. Required. + # Corresponds to the JSON property `fileReference` + # @return [String] + attr_accessor :file_reference + + # Locale of the device that the screenshot was taken on. Required. + # Corresponds to the JSON property `locale` + # @return [String] + attr_accessor :locale + + # Model of the device that the screenshot was taken on. Required. + # Corresponds to the JSON property `model` + # @return [String] + attr_accessor :model + + # OS version of the device that the screenshot was taken on. Required. + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file_reference = args[:file_reference] if args.key?(:file_reference) + @locale = args[:locale] if args.key?(:locale) + @model = args[:model] if args.key?(:model) + @version = args[:version] if args.key?(:version) + end + end + + # + class ScreenshotCluster + include Google::Apis::Core::Hashable + + # A string that describes the activity of every screen in the cluster. + # Corresponds to the JSON property `activity` + # @return [String] + attr_accessor :activity + + # A unique identifier for the cluster. + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # A singular screen that represents the cluster as a whole. This screen will act + # as the "cover" of the entire cluster. When users look at the clusters, only + # the key screen from each cluster will be shown. Which screen is the key screen + # is determined by the ClusteringAlgorithm + # Corresponds to the JSON property `keyScreen` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Screen] + attr_accessor :key_screen + + # Full list of screens. + # Corresponds to the JSON property `screens` + # @return [Array] + attr_accessor :screens + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @activity = args[:activity] if args.key?(:activity) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @key_screen = args[:key_screen] if args.key?(:key_screen) + @screens = args[:screens] if args.key?(:screens) + end + end + + # + class SkippedDetail + include Google::Apis::Core::Hashable + + # If the App doesn't support the specific API level. + # Corresponds to the JSON property `incompatibleAppVersion` + # @return [Boolean] + attr_accessor :incompatible_app_version + alias_method :incompatible_app_version?, :incompatible_app_version + + # If the App doesn't run on the specific architecture, for example, x86. + # Corresponds to the JSON property `incompatibleArchitecture` + # @return [Boolean] + attr_accessor :incompatible_architecture + alias_method :incompatible_architecture?, :incompatible_architecture + + # If the requested OS version doesn't run on the specific device model. + # Corresponds to the JSON property `incompatibleDevice` + # @return [Boolean] + attr_accessor :incompatible_device + alias_method :incompatible_device?, :incompatible_device + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @incompatible_app_version = args[:incompatible_app_version] if args.key?(:incompatible_app_version) + @incompatible_architecture = args[:incompatible_architecture] if args.key?(:incompatible_architecture) + @incompatible_device = args[:incompatible_device] if args.key?(:incompatible_device) + end + end + + # The details about how to run the execution. + class Specification + include Google::Apis::Core::Hashable + + # An Android mobile test specification. + # Corresponds to the JSON property `androidTest` + # @return [Google::Apis::ToolresultsV1beta3firstparty::AndroidTest] + attr_accessor :android_test + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @android_test = args[:android_test] if args.key?(:android_test) + end + end + + # A stacktrace. + class StackTrace + include Google::Apis::Core::Hashable + + # Exception cluster ID + # Corresponds to the JSON property `clusterId` + # @return [String] + attr_accessor :cluster_id + + # The stack trace message. + # Required + # Corresponds to the JSON property `exception` + # @return [String] + attr_accessor :exception + + # Exception report ID + # Corresponds to the JSON property `reportId` + # @return [String] + attr_accessor :report_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cluster_id = args[:cluster_id] if args.key?(:cluster_id) + @exception = args[:exception] if args.key?(:exception) + @report_id = args[:report_id] if args.key?(:report_id) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by [ + # gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users - Flexible enough to meet + # unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of [google.rpc.Code][ + # ], but it may accept additional error codes if needed. The error message + # should be a developer-facing English message that helps developers *understand* + # and *resolve* the error. If a localized user-facing error message is needed, + # put the localized message in the error details or localize it in the client. + # The optional error details may contain arbitrary information about the error. + # There is a predefined set of error detail types in the package `google.rpc` + # that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a consistent developer + # experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may have a + # `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the ` + # Status` message should be used directly inside batch response, one for each + # error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be represented + # directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of [google.rpc.Code][]. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array] + attr_accessor :details + + # 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. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # A Step represents a single operation performed as part of Execution. A step + # can be used to represent the execution of a tool ( for example a test runner + # execution or an execution of a compiler). + # Steps can overlap (for instance two steps might have the same start time if + # some operations are done in parallel). + # Here is an example, let's consider that we have a continuous build is + # executing a test runner for each iteration. The workflow would look like: - + # user creates a Execution with id 1 - user creates an TestExecutionStep with id + # 100 for Execution 1 - user update TestExecutionStep with id 100 to add a raw + # xml log + the service parses the xml logs and returns a TestExecutionStep with + # updated TestResult(s). - user update the status of TestExecutionStep with id + # 100 to COMPLETE + # A Step can be updated until its state is set to COMPLETE at which points it + # becomes immutable. + class Step + include Google::Apis::Core::Hashable + + # 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). + # # Examples + # Example 1: Compute Timestamp from POSIX `time()`. + # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0); + # Example 2: Compute Timestamp from POSIX `gettimeofday()`. + # struct timeval tv; gettimeofday(&tv, NULL); + # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv. + # tv_usec * 1000); + # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. + # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft. + # dwHighDateTime) << 32) | ft.dwLowDateTime; + # // 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)); + # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. + # long millis = System.currentTimeMillis(); + # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) . + # setNanos((int) ((millis % 1000) * 1000000)).build(); + # Example 5: Compute Timestamp from current time in Python. + # timestamp = Timestamp() timestamp.GetCurrentTime() + # # JSON Mapping + # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339]( + # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-` + # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always + # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are + # zero-padded to two digits each. The fractional seconds, which can go up to 9 + # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix + # indicates the timezone ("UTC"); the timezone is required, though only UTC (as + # indicated by "Z") is presently supported. + # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on + # January 15, 2017. + # In JavaScript, one can convert a Date object to this format using the standard + # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/ + # Reference/Global_Objects/Date/toISOString] method. In Python, a standard ` + # datetime.datetime` object can be converted to this format using [`strftime`]( + # https://docs.python.org/2/library/time.html#time.strftime) with the time + # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda + # Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/ + # apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a + # formatter capable of generating timestamps in this format. + # Corresponds to the JSON property `completionTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Timestamp] + attr_accessor :completion_time + + # 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). + # # Examples + # Example 1: Compute Timestamp from POSIX `time()`. + # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0); + # Example 2: Compute Timestamp from POSIX `gettimeofday()`. + # struct timeval tv; gettimeofday(&tv, NULL); + # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv. + # tv_usec * 1000); + # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. + # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft. + # dwHighDateTime) << 32) | ft.dwLowDateTime; + # // 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)); + # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. + # long millis = System.currentTimeMillis(); + # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) . + # setNanos((int) ((millis % 1000) * 1000000)).build(); + # Example 5: Compute Timestamp from current time in Python. + # timestamp = Timestamp() timestamp.GetCurrentTime() + # # JSON Mapping + # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339]( + # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-` + # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always + # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are + # zero-padded to two digits each. The fractional seconds, which can go up to 9 + # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix + # indicates the timezone ("UTC"); the timezone is required, though only UTC (as + # indicated by "Z") is presently supported. + # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on + # January 15, 2017. + # In JavaScript, one can convert a Date object to this format using the standard + # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/ + # Reference/Global_Objects/Date/toISOString] method. In Python, a standard ` + # datetime.datetime` object can be converted to this format using [`strftime`]( + # https://docs.python.org/2/library/time.html#time.strftime) with the time + # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda + # Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/ + # apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a + # formatter capable of generating timestamps in this format. + # Corresponds to the JSON property `creationTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Timestamp] + attr_accessor :creation_time + + # A description of this tool For example: mvn clean package -D skipTests=true + # - In response: present if set by create/update request - In create/update + # request: optional + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :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. + # # Examples + # Example 1: Compute Duration from two Timestamps in pseudo code. + # Timestamp start = ...; Timestamp end = ...; Duration duration = ...; + # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - + # start.nanos; + # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000; + # ` else if (durations.seconds > 0 && duration.nanos < 0) ` duration.seconds -= + # 1; duration.nanos += 1000000000; ` + # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. + # Timestamp start = ...; Duration duration = ...; Timestamp end = ...; + # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + + # duration.nanos; + # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; ` + # Example 3: Compute Duration from datetime.timedelta in Python. + # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration. + # FromTimedelta(td) + # # JSON Mapping + # In JSON format, the Duration type is encoded as a string rather than an object, + # where the string ends in the suffix "s" (indicating seconds) and is preceded + # by the number of seconds, with nanoseconds expressed as fractional seconds. + # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as " + # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3. + # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON + # format as "3.000001s". + # Corresponds to the JSON property `deviceUsageDuration` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Duration] + attr_accessor :device_usage_duration + + # If the execution containing this step has any dimension_definition set, then + # this field allows the child to specify the values of the dimensions. + # The keys must exactly match the dimension_definition of the execution. + # For example, if the execution has `dimension_definition = ['attempt', 'device'] + # ` then a step must define values for those dimensions, eg. `dimension_value = [ + # 'attempt': '1', 'device': 'Nexus 6']` + # If a step does not participate in one dimension of the matrix, the value for + # that dimension should be empty string. For example, if one of the tests is + # executed by a runner which does not support retries, the step could have ` + # dimension_value = ['attempt': '', 'device': 'Nexus 6']` + # If the step does not participate in any dimensions of the matrix, it may leave + # dimension_value unset. + # A PRECONDITION_FAILED will be returned if any of the keys do not exist in the + # dimension_definition of the execution. + # A PRECONDITION_FAILED will be returned if another step in this execution + # already has the same name and dimension_value, but differs on other data + # fields, for example, step field is different. + # A PRECONDITION_FAILED will be returned if dimension_value is set, and there is + # a dimension_definition in the execution which is not specified as one of the + # keys. + # - In response: present if set by create - In create request: optional - In + # update request: never set + # Corresponds to the JSON property `dimensionValue` + # @return [Array] + attr_accessor :dimension_value + + # Whether any of the outputs of this step are images whose thumbnails can be + # fetched with ListThumbnails. + # - In response: always set - In create/update request: never set + # Corresponds to the JSON property `hasImages` + # @return [Boolean] + attr_accessor :has_images + alias_method :has_images?, :has_images + + # Arbitrary user-supplied key/value pairs that are associated with the step. + # Users are responsible for managing the key namespace such that keys don't + # accidentally collide. + # An INVALID_ARGUMENT will be returned if the number of labels exceeds 100 or if + # the length of any of the keys or values exceeds 100 characters. + # - In response: always set - In create request: optional - In update request: + # optional; any new key/value pair will be added to the map, and any new value + # for an existing key will update that key's value + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # A short human-readable name to display in the UI. Maximum of 100 characters. + # For example: Clean build + # A PRECONDITION_FAILED will be returned upon creating a new step if it shares + # its name and dimension_value with an existing step. If two steps represent a + # similar action, but have different dimension values, they should share the + # same name. For instance, if the same set of tests is run on two different + # platforms, the two steps should have the same name. + # - In response: always set - In create request: always set - In update request: + # never set + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Interprets a result so that humans and machines can act on it. + # Corresponds to the JSON property `outcome` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Outcome] + attr_accessor :outcome + + # 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. + # # Examples + # Example 1: Compute Duration from two Timestamps in pseudo code. + # Timestamp start = ...; Timestamp end = ...; Duration duration = ...; + # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - + # start.nanos; + # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000; + # ` else if (durations.seconds > 0 && duration.nanos < 0) ` duration.seconds -= + # 1; duration.nanos += 1000000000; ` + # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. + # Timestamp start = ...; Duration duration = ...; Timestamp end = ...; + # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + + # duration.nanos; + # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; ` + # Example 3: Compute Duration from datetime.timedelta in Python. + # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration. + # FromTimedelta(td) + # # JSON Mapping + # In JSON format, the Duration type is encoded as a string rather than an object, + # where the string ends in the suffix "s" (indicating seconds) and is preceded + # by the number of seconds, with nanoseconds expressed as fractional seconds. + # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as " + # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3. + # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON + # format as "3.000001s". + # Corresponds to the JSON property `runDuration` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Duration] + attr_accessor :run_duration + + # The initial state is IN_PROGRESS. The only legal state transitions are * + # IN_PROGRESS -> COMPLETE + # A PRECONDITION_FAILED will be returned if an invalid transition is requested. + # It is valid to create Step with a state set to COMPLETE. The state can only be + # set to COMPLETE once. A PRECONDITION_FAILED will be returned if the state is + # set to COMPLETE multiple times. + # - In response: always set - In create/update request: optional + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # A unique identifier within a Execution for this Step. + # Returns INVALID_ARGUMENT if this field is set or overwritten by the caller. + # - In response: always set - In create/update request: never set + # Corresponds to the JSON property `stepId` + # @return [String] + attr_accessor :step_id + + # A step that represents running tests. + # It accepts ant-junit xml files which will be parsed into structured test + # results by the service. Xml file paths are updated in order to append more + # files, however they can't be deleted. + # Users can also add test results manually by using the test_result field. + # Corresponds to the JSON property `testExecutionStep` + # @return [Google::Apis::ToolresultsV1beta3firstparty::TestExecutionStep] + attr_accessor :test_execution_step + + # Generic tool step to be used for binaries we do not explicitly support. For + # example: running cp to copy artifacts from one location to another. + # Corresponds to the JSON property `toolExecutionStep` + # @return [Google::Apis::ToolresultsV1beta3firstparty::ToolExecutionStep] + attr_accessor :tool_execution_step + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @completion_time = args[:completion_time] if args.key?(:completion_time) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @description = args[:description] if args.key?(:description) + @device_usage_duration = args[:device_usage_duration] if args.key?(:device_usage_duration) + @dimension_value = args[:dimension_value] if args.key?(:dimension_value) + @has_images = args[:has_images] if args.key?(:has_images) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @outcome = args[:outcome] if args.key?(:outcome) + @run_duration = args[:run_duration] if args.key?(:run_duration) + @state = args[:state] if args.key?(:state) + @step_id = args[:step_id] if args.key?(:step_id) + @test_execution_step = args[:test_execution_step] if args.key?(:test_execution_step) + @tool_execution_step = args[:tool_execution_step] if args.key?(:tool_execution_step) + end + end + + # + class StepDimensionValueEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # + class StepLabelsEntry + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + @value = args[:value] if args.key?(:value) + end + end + + # + class SuccessDetail + include Google::Apis::Core::Hashable + + # If a native process other than the app crashed. + # Corresponds to the JSON property `otherNativeCrash` + # @return [Boolean] + attr_accessor :other_native_crash + alias_method :other_native_crash?, :other_native_crash + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @other_native_crash = args[:other_native_crash] if args.key?(:other_native_crash) + end + end + + # A reference to a test case. + # Test case references are canonically ordered lexicographically by these three + # factors: * First, by test_suite_name. * Second, by class_name. * Third, by + # name. + class TestCaseReference + include Google::Apis::Core::Hashable + + # The name of the class. + # Corresponds to the JSON property `className` + # @return [String] + attr_accessor :class_name + + # The name of the test case. + # Required. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The name of the test suite to which this test case belongs. + # Corresponds to the JSON property `testSuiteName` + # @return [String] + attr_accessor :test_suite_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @class_name = args[:class_name] if args.key?(:class_name) + @name = args[:name] if args.key?(:name) + @test_suite_name = args[:test_suite_name] if args.key?(:test_suite_name) + end + end + + # A step that represents running tests. + # It accepts ant-junit xml files which will be parsed into structured test + # results by the service. Xml file paths are updated in order to append more + # files, however they can't be deleted. + # Users can also add test results manually by using the test_result field. + class TestExecutionStep + include Google::Apis::Core::Hashable + + # Issues observed during the test execution. + # For example, if the mobile app under test crashed during the test, the error + # message and the stack trace content can be recorded here to assist debugging. + # - In response: present if set by create or update - In create/update request: + # optional + # Corresponds to the JSON property `testIssues` + # @return [Array] + attr_accessor :test_issues + + # List of test suite overview contents. This could be parsed from xUnit XML log + # by server, or uploaded directly by user. This references should only be called + # when test suites are fully parsed or uploaded. + # The maximum allowed number of test suite overviews per step is 1000. + # - In response: always set - In create request: optional - In update request: + # never (use publishXunitXmlFiles custom method instead) + # Corresponds to the JSON property `testSuiteOverviews` + # @return [Array] + attr_accessor :test_suite_overviews + + # Testing timing break down to know phases. + # Corresponds to the JSON property `testTiming` + # @return [Google::Apis::ToolresultsV1beta3firstparty::TestTiming] + attr_accessor :test_timing + + # An execution of an arbitrary tool. It could be a test runner or a tool copying + # artifacts or deploying code. + # Corresponds to the JSON property `toolExecution` + # @return [Google::Apis::ToolresultsV1beta3firstparty::ToolExecution] + attr_accessor :tool_execution + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @test_issues = args[:test_issues] if args.key?(:test_issues) + @test_suite_overviews = args[:test_suite_overviews] if args.key?(:test_suite_overviews) + @test_timing = args[:test_timing] if args.key?(:test_timing) + @tool_execution = args[:tool_execution] if args.key?(:tool_execution) + end + end + + # An issue detected occurring during a test execution. + class TestIssue + include Google::Apis::Core::Hashable + + # A brief human-readable message describing the issue. Required. + # Corresponds to the JSON property `errorMessage` + # @return [String] + attr_accessor :error_message + + # Severity of issue. Required. + # Corresponds to the JSON property `severity` + # @return [String] + attr_accessor :severity + + # A stacktrace. + # Corresponds to the JSON property `stackTrace` + # @return [Google::Apis::ToolresultsV1beta3firstparty::StackTrace] + attr_accessor :stack_trace + + # Type of issue. Required. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # `Any` contains an arbitrary serialized protocol buffer message along with a + # URL that describes the type of the serialized message. + # Protobuf library provides support to pack/unpack Any values in the form of + # utility functions or additional generated methods of the Any type. + # Example 1: Pack and unpack a message in C++. + # Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) ` ... ` + # Example 2: Pack and unpack a message in Java. + # Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) ` foo = any. + # unpack(Foo.class); ` + # Example 3: Pack and unpack a message in Python. + # foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any. + # Unpack(foo) ... + # Example 4: Pack and unpack a message in Go + # foo := &pb.Foo`...` any, err := ptypes.MarshalAny(foo) ... foo := &pb.Foo`` if + # err := ptypes.UnmarshalAny(any, foo); err != nil ` ... ` + # The 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". + # JSON ==== 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: + # package google.profile; message Person ` string first_name = 1; string + # last_name = 2; ` + # ` "@type": "type.googleapis.com/google.profile.Person", "firstName": , " + # lastName": ` + # If 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][]): + # ` "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" ` + # Corresponds to the JSON property `warning` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Any] + attr_accessor :warning + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_message = args[:error_message] if args.key?(:error_message) + @severity = args[:severity] if args.key?(:severity) + @stack_trace = args[:stack_trace] if args.key?(:stack_trace) + @type = args[:type] if args.key?(:type) + @warning = args[:warning] if args.key?(:warning) + end + end + + # A summary of a test suite result either parsed from XML or uploaded directly + # by a user. + # Note: the API related comments are for StepService only. This message is also + # being used in ExecutionService in a read only mode for the corresponding step. + class TestSuiteOverview + include Google::Apis::Core::Hashable + + # Number of test cases in error, typically set by the service by parsing the + # xml_source. + # - In create/response: always set - In update request: never + # Corresponds to the JSON property `errorCount` + # @return [Fixnum] + attr_accessor :error_count + + # Number of failed test cases, typically set by the service by parsing the + # xml_source. May also be set by the user. + # - In create/response: always set - In update request: never + # Corresponds to the JSON property `failureCount` + # @return [Fixnum] + attr_accessor :failure_count + + # The name of the test suite. + # - In create/response: always set - In update request: never + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Number of test cases not run, typically set by the service by parsing the + # xml_source. + # - In create/response: always set - In update request: never + # Corresponds to the JSON property `skippedCount` + # @return [Fixnum] + attr_accessor :skipped_count + + # Number of test cases, typically set by the service by parsing the xml_source. + # - In create/response: always set - In update request: never + # Corresponds to the JSON property `totalCount` + # @return [Fixnum] + attr_accessor :total_count + + # A reference to a file. + # Corresponds to the JSON property `xmlSource` + # @return [Google::Apis::ToolresultsV1beta3firstparty::FileReference] + attr_accessor :xml_source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_count = args[:error_count] if args.key?(:error_count) + @failure_count = args[:failure_count] if args.key?(:failure_count) + @name = args[:name] if args.key?(:name) + @skipped_count = args[:skipped_count] if args.key?(:skipped_count) + @total_count = args[:total_count] if args.key?(:total_count) + @xml_source = args[:xml_source] if args.key?(:xml_source) + end + end + + # Testing timing break down to know phases. + class TestTiming + include Google::Apis::Core::Hashable + + # 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. + # # Examples + # Example 1: Compute Duration from two Timestamps in pseudo code. + # Timestamp start = ...; Timestamp end = ...; Duration duration = ...; + # duration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - + # start.nanos; + # if (duration.seconds 0) ` duration.seconds += 1; duration.nanos -= 1000000000; + # ` else if (durations.seconds > 0 && duration.nanos < 0) ` duration.seconds -= + # 1; duration.nanos += 1000000000; ` + # Example 2: Compute Timestamp from Timestamp + Duration in pseudo code. + # Timestamp start = ...; Duration duration = ...; Timestamp end = ...; + # end.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + + # duration.nanos; + # if (end.nanos = 1000000000) ` end.seconds += 1; end.nanos -= 1000000000; ` + # Example 3: Compute Duration from datetime.timedelta in Python. + # td = datetime.timedelta(days=3, minutes=10) duration = Duration() duration. + # FromTimedelta(td) + # # JSON Mapping + # In JSON format, the Duration type is encoded as a string rather than an object, + # where the string ends in the suffix "s" (indicating seconds) and is preceded + # by the number of seconds, with nanoseconds expressed as fractional seconds. + # For example, 3 seconds with 0 nanoseconds should be encoded in JSON format as " + # 3s", while 3 seconds and 1 nanosecond should be expressed in JSON format as "3. + # 000000001s", and 3 seconds and 1 microsecond should be expressed in JSON + # format as "3.000001s". + # Corresponds to the JSON property `testProcessDuration` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Duration] + attr_accessor :test_process_duration + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @test_process_duration = args[:test_process_duration] if args.key?(:test_process_duration) + end + end + + # A single thumbnail, with its size and format. + class Thumbnail + include Google::Apis::Core::Hashable + + # The thumbnail's content type, i.e. "image/png". + # Always set. + # Corresponds to the JSON property `contentType` + # @return [String] + attr_accessor :content_type + + # The thumbnail file itself. + # That is, the bytes here are precisely the bytes that make up the thumbnail + # file; they can be served as an image as-is (with the appropriate content type.) + # Always set. + # Corresponds to the JSON property `data` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :data + + # The height of the thumbnail, in pixels. + # Always set. + # Corresponds to the JSON property `heightPx` + # @return [Fixnum] + attr_accessor :height_px + + # The width of the thumbnail, in pixels. + # Always set. + # Corresponds to the JSON property `widthPx` + # @return [Fixnum] + attr_accessor :width_px + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content_type = args[:content_type] if args.key?(:content_type) + @data = args[:data] if args.key?(:data) + @height_px = args[:height_px] if args.key?(:height_px) + @width_px = args[:width_px] if args.key?(:width_px) + end + end + + # 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). + # # Examples + # Example 1: Compute Timestamp from POSIX `time()`. + # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0); + # Example 2: Compute Timestamp from POSIX `gettimeofday()`. + # struct timeval tv; gettimeofday(&tv, NULL); + # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv. + # tv_usec * 1000); + # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. + # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft. + # dwHighDateTime) << 32) | ft.dwLowDateTime; + # // 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)); + # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. + # long millis = System.currentTimeMillis(); + # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) . + # setNanos((int) ((millis % 1000) * 1000000)).build(); + # Example 5: Compute Timestamp from current time in Python. + # timestamp = Timestamp() timestamp.GetCurrentTime() + # # JSON Mapping + # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339]( + # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-` + # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always + # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are + # zero-padded to two digits each. The fractional seconds, which can go up to 9 + # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix + # indicates the timezone ("UTC"); the timezone is required, though only UTC (as + # indicated by "Z") is presently supported. + # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on + # January 15, 2017. + # In JavaScript, one can convert a Date object to this format using the standard + # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/ + # Reference/Global_Objects/Date/toISOString] method. In Python, a standard ` + # datetime.datetime` object can be converted to this format using [`strftime`]( + # https://docs.python.org/2/library/time.html#time.strftime) with the time + # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda + # Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/ + # apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a + # formatter capable of generating timestamps in this format. + class Timestamp + include Google::Apis::Core::Hashable + + # Non-negative fractions of a second at nanosecond resolution. Negative second + # values with fractions must still have non-negative nanos values that count + # forward in time. Must be from 0 to 999,999,999 inclusive. + # Corresponds to the JSON property `nanos` + # @return [Fixnum] + attr_accessor :nanos + + # 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. + # Corresponds to the JSON property `seconds` + # @return [Fixnum] + attr_accessor :seconds + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @nanos = args[:nanos] if args.key?(:nanos) + @seconds = args[:seconds] if args.key?(:seconds) + end + end + + # An execution of an arbitrary tool. It could be a test runner or a tool copying + # artifacts or deploying code. + class ToolExecution + include Google::Apis::Core::Hashable + + # The full tokenized command line including the program name (equivalent to argv + # in a C program). + # - In response: present if set by create request - In create request: optional - + # In update request: never set + # Corresponds to the JSON property `commandLineArguments` + # @return [Array] + attr_accessor :command_line_arguments + + # Exit code from a tool execution. + # Corresponds to the JSON property `exitCode` + # @return [Google::Apis::ToolresultsV1beta3firstparty::ToolExitCode] + attr_accessor :exit_code + + # References to any plain text logs output the tool execution. + # This field can be set before the tool has exited in order to be able to have + # access to a live view of the logs while the tool is running. + # The maximum allowed number of tool logs per step is 1000. + # - In response: present if set by create/update request - In create request: + # optional - In update request: optional, any value provided will be appended to + # the existing list + # Corresponds to the JSON property `toolLogs` + # @return [Array] + attr_accessor :tool_logs + + # References to opaque files of any format output by the tool execution. + # The maximum allowed number of tool outputs per step is 1000. + # - In response: present if set by create/update request - In create request: + # optional - In update request: optional, any value provided will be appended to + # the existing list + # Corresponds to the JSON property `toolOutputs` + # @return [Array] + attr_accessor :tool_outputs + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @command_line_arguments = args[:command_line_arguments] if args.key?(:command_line_arguments) + @exit_code = args[:exit_code] if args.key?(:exit_code) + @tool_logs = args[:tool_logs] if args.key?(:tool_logs) + @tool_outputs = args[:tool_outputs] if args.key?(:tool_outputs) + end + end + + # Generic tool step to be used for binaries we do not explicitly support. For + # example: running cp to copy artifacts from one location to another. + class ToolExecutionStep + include Google::Apis::Core::Hashable + + # An execution of an arbitrary tool. It could be a test runner or a tool copying + # artifacts or deploying code. + # Corresponds to the JSON property `toolExecution` + # @return [Google::Apis::ToolresultsV1beta3firstparty::ToolExecution] + attr_accessor :tool_execution + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @tool_execution = args[:tool_execution] if args.key?(:tool_execution) + end + end + + # Exit code from a tool execution. + class ToolExitCode + include Google::Apis::Core::Hashable + + # Tool execution exit code. A value of 0 means that the execution was successful. + # - In response: always set - In create/update request: always set + # Corresponds to the JSON property `number` + # @return [Fixnum] + attr_accessor :number + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @number = args[:number] if args.key?(:number) + end + end + + # A reference to a ToolExecution output file. + class ToolOutputReference + include Google::Apis::Core::Hashable + + # 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). + # # Examples + # Example 1: Compute Timestamp from POSIX `time()`. + # Timestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0); + # Example 2: Compute Timestamp from POSIX `gettimeofday()`. + # struct timeval tv; gettimeofday(&tv, NULL); + # Timestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv. + # tv_usec * 1000); + # Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`. + # FILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft. + # dwHighDateTime) << 32) | ft.dwLowDateTime; + # // 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)); + # Example 4: Compute Timestamp from Java `System.currentTimeMillis()`. + # long millis = System.currentTimeMillis(); + # Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) . + # setNanos((int) ((millis % 1000) * 1000000)).build(); + # Example 5: Compute Timestamp from current time in Python. + # timestamp = Timestamp() timestamp.GetCurrentTime() + # # JSON Mapping + # In JSON format, the Timestamp type is encoded as a string in the [RFC 3339]( + # https://www.ietf.org/rfc/rfc3339.txt) format. That is, the format is "`year`-` + # month`-`day`T`hour`:`min`:`sec`[.`frac_sec`]Z" where `year` is always + # expressed using four digits while `month`, `day`, `hour`, `min`, and `sec` are + # zero-padded to two digits each. The fractional seconds, which can go up to 9 + # digits (i.e. up to 1 nanosecond resolution), are optional. The "Z" suffix + # indicates the timezone ("UTC"); the timezone is required, though only UTC (as + # indicated by "Z") is presently supported. + # For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past 01:30 UTC on + # January 15, 2017. + # In JavaScript, one can convert a Date object to this format using the standard + # [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/ + # Reference/Global_Objects/Date/toISOString] method. In Python, a standard ` + # datetime.datetime` object can be converted to this format using [`strftime`]( + # https://docs.python.org/2/library/time.html#time.strftime) with the time + # format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use the Joda + # Time's [`ISODateTimeFormat.dateTime()`]( http://joda-time.sourceforge.net/ + # apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()) to obtain a + # formatter capable of generating timestamps in this format. + # Corresponds to the JSON property `creationTime` + # @return [Google::Apis::ToolresultsV1beta3firstparty::Timestamp] + attr_accessor :creation_time + + # A reference to a file. + # Corresponds to the JSON property `output` + # @return [Google::Apis::ToolresultsV1beta3firstparty::FileReference] + attr_accessor :output + + # A reference to a test case. + # Test case references are canonically ordered lexicographically by these three + # factors: * First, by test_suite_name. * Second, by class_name. * Third, by + # name. + # Corresponds to the JSON property `testCase` + # @return [Google::Apis::ToolresultsV1beta3firstparty::TestCaseReference] + attr_accessor :test_case + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @output = args[:output] if args.key?(:output) + @test_case = args[:test_case] if args.key?(:test_case) + end + end + end + end +end diff --git a/generated/google/apis/toolresults_v1beta3firstparty/representations.rb b/generated/google/apis/toolresults_v1beta3firstparty/representations.rb new file mode 100644 index 000000000..9d6351218 --- /dev/null +++ b/generated/google/apis/toolresults_v1beta3firstparty/representations.rb @@ -0,0 +1,886 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ToolresultsV1beta3firstparty + + class AndroidAppInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AndroidInstrumentationTest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AndroidRoboTest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AndroidTest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Any + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AppStartTime + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BasicPerfSampleSeries + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BatchCreatePerfSamplesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BatchCreatePerfSamplesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CpuInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Duration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Execution + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FailureDetail + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FileReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class History + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Image + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InconclusiveDetail + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListExecutionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListHistoriesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListPerfSampleSeriesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListPerfSamplesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListScreenshotClustersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListStepThumbnailsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListStepsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MemoryInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Outcome + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PerfEnvironment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PerfMetricsSummary + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PerfSample + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PerfSampleSeries + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PublishXunitXmlFilesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Screen + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ScreenshotCluster + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SkippedDetail + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Specification + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StackTrace + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Step + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StepDimensionValueEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StepLabelsEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SuccessDetail + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestCaseReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestExecutionStep + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIssue + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestSuiteOverview + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestTiming + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Thumbnail + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Timestamp + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ToolExecution + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ToolExecutionStep + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ToolExitCode + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ToolOutputReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AndroidAppInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :package_name, as: 'packageName' + property :version_code, as: 'versionCode' + property :version_name, as: 'versionName' + end + end + + class AndroidInstrumentationTest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :test_package_id, as: 'testPackageId' + property :test_runner_class, as: 'testRunnerClass' + collection :test_targets, as: 'testTargets' + property :use_orchestrator, as: 'useOrchestrator' + end + end + + class AndroidRoboTest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_initial_activity, as: 'appInitialActivity' + property :bootstrap_package_id, as: 'bootstrapPackageId' + property :bootstrap_runner_class, as: 'bootstrapRunnerClass' + property :max_depth, as: 'maxDepth' + property :max_steps, as: 'maxSteps' + end + end + + class AndroidTest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :android_app_info, as: 'androidAppInfo', class: Google::Apis::ToolresultsV1beta3firstparty::AndroidAppInfo, decorator: Google::Apis::ToolresultsV1beta3firstparty::AndroidAppInfo::Representation + + property :android_instrumentation_test, as: 'androidInstrumentationTest', class: Google::Apis::ToolresultsV1beta3firstparty::AndroidInstrumentationTest, decorator: Google::Apis::ToolresultsV1beta3firstparty::AndroidInstrumentationTest::Representation + + property :android_robo_test, as: 'androidRoboTest', class: Google::Apis::ToolresultsV1beta3firstparty::AndroidRoboTest, decorator: Google::Apis::ToolresultsV1beta3firstparty::AndroidRoboTest::Representation + + property :test_timeout, as: 'testTimeout', class: Google::Apis::ToolresultsV1beta3firstparty::Duration, decorator: Google::Apis::ToolresultsV1beta3firstparty::Duration::Representation + + end + end + + class Any + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :type_url, as: 'typeUrl' + property :value, :base64 => true, as: 'value' + end + end + + class AppStartTime + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fully_drawn_time, as: 'fullyDrawnTime', class: Google::Apis::ToolresultsV1beta3firstparty::Duration, decorator: Google::Apis::ToolresultsV1beta3firstparty::Duration::Representation + + property :initial_display_time, as: 'initialDisplayTime', class: Google::Apis::ToolresultsV1beta3firstparty::Duration, decorator: Google::Apis::ToolresultsV1beta3firstparty::Duration::Representation + + end + end + + class BasicPerfSampleSeries + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :perf_metric_type, as: 'perfMetricType' + property :perf_unit, as: 'perfUnit' + property :sample_series_label, as: 'sampleSeriesLabel' + end + end + + class BatchCreatePerfSamplesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :perf_samples, as: 'perfSamples', class: Google::Apis::ToolresultsV1beta3firstparty::PerfSample, decorator: Google::Apis::ToolresultsV1beta3firstparty::PerfSample::Representation + + end + end + + class BatchCreatePerfSamplesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :perf_samples, as: 'perfSamples', class: Google::Apis::ToolresultsV1beta3firstparty::PerfSample, decorator: Google::Apis::ToolresultsV1beta3firstparty::PerfSample::Representation + + end + end + + class CpuInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cpu_processor, as: 'cpuProcessor' + property :cpu_speed_in_ghz, as: 'cpuSpeedInGhz' + property :number_of_cores, as: 'numberOfCores' + end + end + + class Duration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :nanos, as: 'nanos' + property :seconds, :numeric_string => true, as: 'seconds' + end + end + + class Execution + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :completion_time, as: 'completionTime', class: Google::Apis::ToolresultsV1beta3firstparty::Timestamp, decorator: Google::Apis::ToolresultsV1beta3firstparty::Timestamp::Representation + + property :creation_time, as: 'creationTime', class: Google::Apis::ToolresultsV1beta3firstparty::Timestamp, decorator: Google::Apis::ToolresultsV1beta3firstparty::Timestamp::Representation + + property :execution_id, as: 'executionId' + property :outcome, as: 'outcome', class: Google::Apis::ToolresultsV1beta3firstparty::Outcome, decorator: Google::Apis::ToolresultsV1beta3firstparty::Outcome::Representation + + property :specification, as: 'specification', class: Google::Apis::ToolresultsV1beta3firstparty::Specification, decorator: Google::Apis::ToolresultsV1beta3firstparty::Specification::Representation + + property :state, as: 'state' + property :test_execution_matrix_id, as: 'testExecutionMatrixId' + end + end + + class FailureDetail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :crashed, as: 'crashed' + property :not_installed, as: 'notInstalled' + property :other_native_crash, as: 'otherNativeCrash' + property :timed_out, as: 'timedOut' + property :unable_to_crawl, as: 'unableToCrawl' + end + end + + class FileReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :file_uri, as: 'fileUri' + end + end + + class History + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :history_id, as: 'historyId' + property :name, as: 'name' + end + end + + class Image + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error, as: 'error', class: Google::Apis::ToolresultsV1beta3firstparty::Status, decorator: Google::Apis::ToolresultsV1beta3firstparty::Status::Representation + + property :source_image, as: 'sourceImage', class: Google::Apis::ToolresultsV1beta3firstparty::ToolOutputReference, decorator: Google::Apis::ToolresultsV1beta3firstparty::ToolOutputReference::Representation + + property :step_id, as: 'stepId' + property :thumbnail, as: 'thumbnail', class: Google::Apis::ToolresultsV1beta3firstparty::Thumbnail, decorator: Google::Apis::ToolresultsV1beta3firstparty::Thumbnail::Representation + + end + end + + class InconclusiveDetail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :aborted_by_user, as: 'abortedByUser' + property :infrastructure_failure, as: 'infrastructureFailure' + end + end + + class ListExecutionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :executions, as: 'executions', class: Google::Apis::ToolresultsV1beta3firstparty::Execution, decorator: Google::Apis::ToolresultsV1beta3firstparty::Execution::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListHistoriesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :histories, as: 'histories', class: Google::Apis::ToolresultsV1beta3firstparty::History, decorator: Google::Apis::ToolresultsV1beta3firstparty::History::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListPerfSampleSeriesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :perf_sample_series, as: 'perfSampleSeries', class: Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries, decorator: Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries::Representation + + end + end + + class ListPerfSamplesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :perf_samples, as: 'perfSamples', class: Google::Apis::ToolresultsV1beta3firstparty::PerfSample, decorator: Google::Apis::ToolresultsV1beta3firstparty::PerfSample::Representation + + end + end + + class ListScreenshotClustersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :clusters, as: 'clusters', class: Google::Apis::ToolresultsV1beta3firstparty::ScreenshotCluster, decorator: Google::Apis::ToolresultsV1beta3firstparty::ScreenshotCluster::Representation + + end + end + + class ListStepThumbnailsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :thumbnails, as: 'thumbnails', class: Google::Apis::ToolresultsV1beta3firstparty::Image, decorator: Google::Apis::ToolresultsV1beta3firstparty::Image::Representation + + end + end + + class ListStepsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :steps, as: 'steps', class: Google::Apis::ToolresultsV1beta3firstparty::Step, decorator: Google::Apis::ToolresultsV1beta3firstparty::Step::Representation + + end + end + + class MemoryInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :memory_cap_in_kibibyte, :numeric_string => true, as: 'memoryCapInKibibyte' + property :memory_total_in_kibibyte, :numeric_string => true, as: 'memoryTotalInKibibyte' + end + end + + class Outcome + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :failure_detail, as: 'failureDetail', class: Google::Apis::ToolresultsV1beta3firstparty::FailureDetail, decorator: Google::Apis::ToolresultsV1beta3firstparty::FailureDetail::Representation + + property :inconclusive_detail, as: 'inconclusiveDetail', class: Google::Apis::ToolresultsV1beta3firstparty::InconclusiveDetail, decorator: Google::Apis::ToolresultsV1beta3firstparty::InconclusiveDetail::Representation + + property :skipped_detail, as: 'skippedDetail', class: Google::Apis::ToolresultsV1beta3firstparty::SkippedDetail, decorator: Google::Apis::ToolresultsV1beta3firstparty::SkippedDetail::Representation + + property :success_detail, as: 'successDetail', class: Google::Apis::ToolresultsV1beta3firstparty::SuccessDetail, decorator: Google::Apis::ToolresultsV1beta3firstparty::SuccessDetail::Representation + + property :summary, as: 'summary' + end + end + + class PerfEnvironment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cpu_info, as: 'cpuInfo', class: Google::Apis::ToolresultsV1beta3firstparty::CpuInfo, decorator: Google::Apis::ToolresultsV1beta3firstparty::CpuInfo::Representation + + property :memory_info, as: 'memoryInfo', class: Google::Apis::ToolresultsV1beta3firstparty::MemoryInfo, decorator: Google::Apis::ToolresultsV1beta3firstparty::MemoryInfo::Representation + + end + end + + class PerfMetricsSummary + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :app_start_time, as: 'appStartTime', class: Google::Apis::ToolresultsV1beta3firstparty::AppStartTime, decorator: Google::Apis::ToolresultsV1beta3firstparty::AppStartTime::Representation + + property :execution_id, as: 'executionId' + property :history_id, as: 'historyId' + property :perf_environment, as: 'perfEnvironment', class: Google::Apis::ToolresultsV1beta3firstparty::PerfEnvironment, decorator: Google::Apis::ToolresultsV1beta3firstparty::PerfEnvironment::Representation + + collection :perf_metrics, as: 'perfMetrics' + property :project_id, as: 'projectId' + property :step_id, as: 'stepId' + end + end + + class PerfSample + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :sample_time, as: 'sampleTime', class: Google::Apis::ToolresultsV1beta3firstparty::Timestamp, decorator: Google::Apis::ToolresultsV1beta3firstparty::Timestamp::Representation + + property :value, as: 'value' + end + end + + class PerfSampleSeries + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :basic_perf_sample_series, as: 'basicPerfSampleSeries', class: Google::Apis::ToolresultsV1beta3firstparty::BasicPerfSampleSeries, decorator: Google::Apis::ToolresultsV1beta3firstparty::BasicPerfSampleSeries::Representation + + property :execution_id, as: 'executionId' + property :history_id, as: 'historyId' + property :project_id, as: 'projectId' + property :sample_series_id, as: 'sampleSeriesId' + property :step_id, as: 'stepId' + end + end + + class ProjectSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :default_bucket, as: 'defaultBucket' + property :name, as: 'name' + end + end + + class PublishXunitXmlFilesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :xunit_xml_files, as: 'xunitXmlFiles', class: Google::Apis::ToolresultsV1beta3firstparty::FileReference, decorator: Google::Apis::ToolresultsV1beta3firstparty::FileReference::Representation + + end + end + + class Screen + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :file_reference, as: 'fileReference' + property :locale, as: 'locale' + property :model, as: 'model' + property :version, as: 'version' + end + end + + class ScreenshotCluster + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :activity, as: 'activity' + property :cluster_id, as: 'clusterId' + property :key_screen, as: 'keyScreen', class: Google::Apis::ToolresultsV1beta3firstparty::Screen, decorator: Google::Apis::ToolresultsV1beta3firstparty::Screen::Representation + + collection :screens, as: 'screens', class: Google::Apis::ToolresultsV1beta3firstparty::Screen, decorator: Google::Apis::ToolresultsV1beta3firstparty::Screen::Representation + + end + end + + class SkippedDetail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :incompatible_app_version, as: 'incompatibleAppVersion' + property :incompatible_architecture, as: 'incompatibleArchitecture' + property :incompatible_device, as: 'incompatibleDevice' + end + end + + class Specification + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :android_test, as: 'androidTest', class: Google::Apis::ToolresultsV1beta3firstparty::AndroidTest, decorator: Google::Apis::ToolresultsV1beta3firstparty::AndroidTest::Representation + + end + end + + class StackTrace + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cluster_id, as: 'clusterId' + property :exception, as: 'exception' + property :report_id, as: 'reportId' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details', class: Google::Apis::ToolresultsV1beta3firstparty::Any, decorator: Google::Apis::ToolresultsV1beta3firstparty::Any::Representation + + property :message, as: 'message' + end + end + + class Step + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :completion_time, as: 'completionTime', class: Google::Apis::ToolresultsV1beta3firstparty::Timestamp, decorator: Google::Apis::ToolresultsV1beta3firstparty::Timestamp::Representation + + property :creation_time, as: 'creationTime', class: Google::Apis::ToolresultsV1beta3firstparty::Timestamp, decorator: Google::Apis::ToolresultsV1beta3firstparty::Timestamp::Representation + + property :description, as: 'description' + property :device_usage_duration, as: 'deviceUsageDuration', class: Google::Apis::ToolresultsV1beta3firstparty::Duration, decorator: Google::Apis::ToolresultsV1beta3firstparty::Duration::Representation + + collection :dimension_value, as: 'dimensionValue', class: Google::Apis::ToolresultsV1beta3firstparty::StepDimensionValueEntry, decorator: Google::Apis::ToolresultsV1beta3firstparty::StepDimensionValueEntry::Representation + + property :has_images, as: 'hasImages' + collection :labels, as: 'labels', class: Google::Apis::ToolresultsV1beta3firstparty::StepLabelsEntry, decorator: Google::Apis::ToolresultsV1beta3firstparty::StepLabelsEntry::Representation + + property :name, as: 'name' + property :outcome, as: 'outcome', class: Google::Apis::ToolresultsV1beta3firstparty::Outcome, decorator: Google::Apis::ToolresultsV1beta3firstparty::Outcome::Representation + + property :run_duration, as: 'runDuration', class: Google::Apis::ToolresultsV1beta3firstparty::Duration, decorator: Google::Apis::ToolresultsV1beta3firstparty::Duration::Representation + + property :state, as: 'state' + property :step_id, as: 'stepId' + property :test_execution_step, as: 'testExecutionStep', class: Google::Apis::ToolresultsV1beta3firstparty::TestExecutionStep, decorator: Google::Apis::ToolresultsV1beta3firstparty::TestExecutionStep::Representation + + property :tool_execution_step, as: 'toolExecutionStep', class: Google::Apis::ToolresultsV1beta3firstparty::ToolExecutionStep, decorator: Google::Apis::ToolresultsV1beta3firstparty::ToolExecutionStep::Representation + + end + end + + class StepDimensionValueEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class StepLabelsEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, as: 'key' + property :value, as: 'value' + end + end + + class SuccessDetail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :other_native_crash, as: 'otherNativeCrash' + end + end + + class TestCaseReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :class_name, as: 'className' + property :name, as: 'name' + property :test_suite_name, as: 'testSuiteName' + end + end + + class TestExecutionStep + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :test_issues, as: 'testIssues', class: Google::Apis::ToolresultsV1beta3firstparty::TestIssue, decorator: Google::Apis::ToolresultsV1beta3firstparty::TestIssue::Representation + + collection :test_suite_overviews, as: 'testSuiteOverviews', class: Google::Apis::ToolresultsV1beta3firstparty::TestSuiteOverview, decorator: Google::Apis::ToolresultsV1beta3firstparty::TestSuiteOverview::Representation + + property :test_timing, as: 'testTiming', class: Google::Apis::ToolresultsV1beta3firstparty::TestTiming, decorator: Google::Apis::ToolresultsV1beta3firstparty::TestTiming::Representation + + property :tool_execution, as: 'toolExecution', class: Google::Apis::ToolresultsV1beta3firstparty::ToolExecution, decorator: Google::Apis::ToolresultsV1beta3firstparty::ToolExecution::Representation + + end + end + + class TestIssue + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_message, as: 'errorMessage' + property :severity, as: 'severity' + property :stack_trace, as: 'stackTrace', class: Google::Apis::ToolresultsV1beta3firstparty::StackTrace, decorator: Google::Apis::ToolresultsV1beta3firstparty::StackTrace::Representation + + property :type, as: 'type' + property :warning, as: 'warning', class: Google::Apis::ToolresultsV1beta3firstparty::Any, decorator: Google::Apis::ToolresultsV1beta3firstparty::Any::Representation + + end + end + + class TestSuiteOverview + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_count, as: 'errorCount' + property :failure_count, as: 'failureCount' + property :name, as: 'name' + property :skipped_count, as: 'skippedCount' + property :total_count, as: 'totalCount' + property :xml_source, as: 'xmlSource', class: Google::Apis::ToolresultsV1beta3firstparty::FileReference, decorator: Google::Apis::ToolresultsV1beta3firstparty::FileReference::Representation + + end + end + + class TestTiming + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :test_process_duration, as: 'testProcessDuration', class: Google::Apis::ToolresultsV1beta3firstparty::Duration, decorator: Google::Apis::ToolresultsV1beta3firstparty::Duration::Representation + + end + end + + class Thumbnail + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content_type, as: 'contentType' + property :data, :base64 => true, as: 'data' + property :height_px, as: 'heightPx' + property :width_px, as: 'widthPx' + end + end + + class Timestamp + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :nanos, as: 'nanos' + property :seconds, :numeric_string => true, as: 'seconds' + end + end + + class ToolExecution + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :command_line_arguments, as: 'commandLineArguments' + property :exit_code, as: 'exitCode', class: Google::Apis::ToolresultsV1beta3firstparty::ToolExitCode, decorator: Google::Apis::ToolresultsV1beta3firstparty::ToolExitCode::Representation + + collection :tool_logs, as: 'toolLogs', class: Google::Apis::ToolresultsV1beta3firstparty::FileReference, decorator: Google::Apis::ToolresultsV1beta3firstparty::FileReference::Representation + + collection :tool_outputs, as: 'toolOutputs', class: Google::Apis::ToolresultsV1beta3firstparty::ToolOutputReference, decorator: Google::Apis::ToolresultsV1beta3firstparty::ToolOutputReference::Representation + + end + end + + class ToolExecutionStep + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :tool_execution, as: 'toolExecution', class: Google::Apis::ToolresultsV1beta3firstparty::ToolExecution, decorator: Google::Apis::ToolresultsV1beta3firstparty::ToolExecution::Representation + + end + end + + class ToolExitCode + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :number, as: 'number' + end + end + + class ToolOutputReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :creation_time, as: 'creationTime', class: Google::Apis::ToolresultsV1beta3firstparty::Timestamp, decorator: Google::Apis::ToolresultsV1beta3firstparty::Timestamp::Representation + + property :output, as: 'output', class: Google::Apis::ToolresultsV1beta3firstparty::FileReference, decorator: Google::Apis::ToolresultsV1beta3firstparty::FileReference::Representation + + property :test_case, as: 'testCase', class: Google::Apis::ToolresultsV1beta3firstparty::TestCaseReference, decorator: Google::Apis::ToolresultsV1beta3firstparty::TestCaseReference::Representation + + end + end + end + end +end diff --git a/generated/google/apis/toolresults_v1beta3firstparty/service.rb b/generated/google/apis/toolresults_v1beta3firstparty/service.rb new file mode 100644 index 000000000..967c8cc86 --- /dev/null +++ b/generated/google/apis/toolresults_v1beta3firstparty/service.rb @@ -0,0 +1,1288 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module ToolresultsV1beta3firstparty + # Cloud Tool Results firstparty API + # + # Reads and publishes results from Firebase Test Lab. + # + # @example + # require 'google/apis/toolresults_v1beta3firstparty' + # + # Toolresults = Google::Apis::ToolresultsV1beta3firstparty # Alias the module + # service = Toolresults::ToolResultsService.new + # + # @see https://firebase.google.com/docs/test-lab/ + class ToolResultsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'toolresults/v1beta3firstparty/projects/') + @batch_path = 'batch' + end + + # Gets the Tool Results settings for a project. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to read from project + # @param [String] project_id + # A Project id. + # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_settings(project_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/settings', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates resources for settings which have not yet been set. + # Currently, this creates a single resource: a Google Cloud Storage bucket, to + # be used as the default bucket for this project. The bucket is created in an + # FTL-own storage project. Except for in rare cases, calling this method in + # parallel from multiple clients will only create a single bucket. In order to + # avoid unnecessary storage charges, the bucket is configured to automatically + # delete objects older than 90 days. + # The bucket is created with the following permissions: - Owner access for + # owners of central storage project (FTL-owned) - Writer access for owners/ + # editors of customer project - Reader access for viewers of customer project + # The default ACL on objects created in the bucket is: - Owner access for owners + # of central storage project - Reader access for owners/editors/viewers of + # customer project See Google Cloud Storage documentation for more details. + # If there is already a default bucket set and the project can access the bucket, + # this call does nothing. However, if the project doesn't have the permission + # to access the bucket or the bucket is deleted, a new bucket will be created. + # May return any canonical error codes, including the following: + # - PERMISSION_DENIED - if the user is not authorized to write to project - Any + # error code raised by Google Cloud Storage + # @param [String] project_id + # A Project id. + # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def initialize_project_settings(project_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}:initializeSettings', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ProjectSettings + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a History. + # The returned History will have the id set. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to write to project - + # INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing + # project does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [Google::Apis::ToolresultsV1beta3firstparty::History] history_object + # @param [String] request_id + # A unique request ID for server to detect duplicated requests. For example, a + # UUID. + # Optional, but strongly recommended. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::History] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::History] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_history(project_id, history_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}/histories', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::History::Representation + command.request_object = history_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::History::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::History + command.params['projectId'] = project_id unless project_id.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets a History. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to read project - + # INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History + # does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::History] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::History] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_history(project_id, history_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::History::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::History + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists Histories for a given Project. + # The histories are sorted by modification time in descending order. The + # history_id key will be used to order the history with the same modification + # time. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to read project - + # INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the History + # does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] filter_by_name + # If set, only return histories with the given name. + # Optional. + # @param [Fixnum] page_size + # The maximum number of Histories to fetch. + # Default value: 20. The server will use this default if the field is not set or + # has a value of 0. Any value greater than 100 will be treated as 100. + # Optional. + # @param [String] page_token + # A continuation token to resume the query at the next item. + # Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ListHistoriesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ListHistoriesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_histories(project_id, filter_by_name: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ListHistoriesResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ListHistoriesResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['filterByName'] = filter_by_name unless filter_by_name.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates an Execution. + # The returned Execution will have the id set. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to write to project - + # INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing + # History does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [Google::Apis::ToolresultsV1beta3firstparty::Execution] execution_object + # @param [String] request_id + # A unique request ID for server to detect duplicated requests. For example, a + # UUID. + # Optional, but strongly recommended. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::Execution] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::Execution] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_history_execution(project_id, history_id, execution_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}/histories/{historyId}/executions', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::Execution::Representation + command.request_object = execution_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::Execution::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::Execution + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets an Execution. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to write to project - + # INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Execution + # does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # An Execution id. + # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::Execution] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::Execution] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_history_execution(project_id, history_id, execution_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::Execution::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::Execution + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists Histories for a given Project. + # The executions are sorted by creation_time in descending order. The + # execution_id key will be used to order the executions with the same + # creation_time. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to read project - + # INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the containing + # History does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [Fixnum] page_size + # The maximum number of Executions to fetch. + # Default value: 25. The server will use this default if the field is not set or + # has a value of 0. + # Optional. + # @param [String] page_token + # A continuation token to resume the query at the next item. + # Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ListExecutionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ListExecutionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_history_executions(project_id, history_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ListExecutionsResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ListExecutionsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing Execution with the supplied partial entity. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to write to project - + # INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the + # requested state transition is illegal - NOT_FOUND - if the containing History + # does not exist + # @param [String] project_id + # A Project id. Required. + # @param [String] history_id + # Required. + # @param [String] execution_id + # Required. + # @param [Google::Apis::ToolresultsV1beta3firstparty::Execution] execution_object + # @param [String] request_id + # A unique request ID for server to detect duplicated requests. For example, a + # UUID. + # Optional, but strongly recommended. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::Execution] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::Execution] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_history_execution(project_id, history_id, execution_id, execution_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{projectId}/histories/{historyId}/executions/{executionId}', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::Execution::Representation + command.request_object = execution_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::Execution::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::Execution + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists Screenshot Clusters + # Returns the list of screenshot clusters corresponding to an execution. + # Screenshot clusters are created after the execution is finished. Clusters are + # created from a set of screenshots. Between any two screenshots, a matching + # score is calculated based off their metadata that determines how similar they + # are. Screenshots are placed in the cluster that has screens which have the + # highest matching scores. + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # An Execution id. + # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ListScreenshotClustersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ListScreenshotClustersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_history_execution_clusters(project_id, history_id, execution_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/clusters', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ListScreenshotClustersResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ListScreenshotClustersResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a Step. + # The returned Step will have the id set. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to write to project - + # INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the + # step is too large (more than 10Mib) - NOT_FOUND - if the containing Execution + # does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # A Execution id. + # Required. + # @param [Google::Apis::ToolresultsV1beta3firstparty::Step] step_object + # @param [String] request_id + # A unique request ID for server to detect duplicated requests. For example, a + # UUID. + # Optional, but strongly recommended. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::Step] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::Step] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_history_execution_step(project_id, history_id, execution_id, step_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}/histories/{historyId}/executions/{executionId}/steps', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::Step::Representation + command.request_object = step_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::Step::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::Step + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets a Step. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to read project - + # INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the Step does + # not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # A Execution id. + # Required. + # @param [String] step_id + # A Step id. + # Required. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::Step] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::Step] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_history_execution_step(project_id, history_id, execution_id, step_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::Step::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::Step + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a PerfMetricsSummary. + # May return any of the following error code(s): - NOT_FOUND - The specified + # PerfMetricsSummary does not exist + # @param [String] project_id + # The cloud project + # @param [String] history_id + # A tool results history ID. + # @param [String] execution_id + # A tool results execution ID. + # @param [String] step_id + # A tool results step ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_history_execution_step_perf_metrics_summary(project_id, history_id, execution_id, step_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists Steps for a given Execution. + # The steps are sorted by creation_time in descending order. The step_id key + # will be used to order the steps with the same creation_time. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to read project - + # INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if an + # argument in the request happens to be invalid; e.g. if an attempt is made to + # list the children of a nonexistent Step - NOT_FOUND - if the containing + # Execution does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # A Execution id. + # Required. + # @param [Fixnum] page_size + # The maximum number of Steps to fetch. + # Default value: 25. The server will use this default if the field is not set or + # has a value of 0. + # Optional. + # @param [String] page_token + # A continuation token to resume the query at the next item. + # Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ListStepsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ListStepsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_history_execution_steps(project_id, history_id, execution_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/steps', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ListStepsResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ListStepsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing Step with the supplied partial entity. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to write project - + # INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the + # requested state transition is illegal (e.g try to upload a duplicate xml file), + # if the updated step is too large (more than 10Mib) - NOT_FOUND - if the + # containing Execution does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # A Execution id. + # Required. + # @param [String] step_id + # A Step id. + # Required. + # @param [Google::Apis::ToolresultsV1beta3firstparty::Step] step_object + # @param [String] request_id + # A unique request ID for server to detect duplicated requests. For example, a + # UUID. + # Optional, but strongly recommended. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::Step] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::Step] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_history_execution_step(project_id, history_id, execution_id, step_id, step_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::Step::Representation + command.request_object = step_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::Step::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::Step + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['requestId'] = request_id unless request_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Publish xml files to an existing Step. + # May return any of the following canonical error codes: + # - PERMISSION_DENIED - if the user is not authorized to write project - + # INVALID_ARGUMENT - if the request is malformed - FAILED_PRECONDITION - if the + # requested state transition is illegal, e.g try to upload a duplicate xml file + # or a file too large. - NOT_FOUND - if the containing Execution does not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # A Execution id. + # Required. + # @param [String] step_id + # A Step id. Note: This step must include a TestExecutionStep. + # Required. + # @param [Google::Apis::ToolresultsV1beta3firstparty::PublishXunitXmlFilesRequest] publish_xunit_xml_files_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::Step] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::Step] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def publish_step_xunit_xml_files(project_id, history_id, execution_id, step_id, publish_xunit_xml_files_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}:publishXunitXmlFiles', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::PublishXunitXmlFilesRequest::Representation + command.request_object = publish_xunit_xml_files_request_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::Step::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::Step + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a PerfMetricsSummary resource. + # May return any of the following error code(s): - ALREADY_EXISTS - A + # PerfMetricSummary already exists for the given Step - NOT_FOUND - The + # containing Step does not exist + # @param [String] project_id + # The cloud project + # @param [String] history_id + # A tool results history ID. + # @param [String] execution_id + # A tool results execution ID. + # @param [String] step_id + # A tool results step ID. + # @param [Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary] perf_metrics_summary_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_history_execution_step_perf_metrics_summary(project_id, history_id, execution_id, step_id, perf_metrics_summary_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfMetricsSummary', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary::Representation + command.request_object = perf_metrics_summary_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::PerfMetricsSummary + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a PerfSampleSeries. + # May return any of the following error code(s): - ALREADY_EXISTS - + # PerfMetricSummary already exists for the given Step - NOT_FOUND - The + # containing Step does not exist + # @param [String] project_id + # The cloud project + # @param [String] history_id + # A tool results history ID. + # @param [String] execution_id + # A tool results execution ID. + # @param [String] step_id + # A tool results step ID. + # @param [Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries] perf_sample_series_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_history_execution_step_perf_sample_series(project_id, history_id, execution_id, step_id, perf_sample_series_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries::Representation + command.request_object = perf_sample_series_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Gets a PerfSampleSeries. + # May return any of the following error code(s): - NOT_FOUND - The specified + # PerfSampleSeries does not exist + # @param [String] project_id + # The cloud project + # @param [String] history_id + # A tool results history ID. + # @param [String] execution_id + # A tool results execution ID. + # @param [String] step_id + # A tool results step ID. + # @param [String] sample_series_id + # A sample series id + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_history_execution_step_perf_sample_series(project_id, history_id, execution_id, step_id, sample_series_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::PerfSampleSeries + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.params['sampleSeriesId'] = sample_series_id unless sample_series_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists PerfSampleSeries for a given Step. + # The request provides an optional filter which specifies one or more + # PerfMetricsType to include in the result; if none returns all. The resulting + # PerfSampleSeries are sorted by ids. + # May return any of the following canonical error codes: - NOT_FOUND - The + # containing Step does not exist + # @param [String] project_id + # The cloud project + # @param [String] history_id + # A tool results history ID. + # @param [String] execution_id + # A tool results execution ID. + # @param [String] step_id + # A tool results step ID. + # @param [Array, String] filter + # Specify one or more PerfMetricType values such as CPU to filter the result + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ListPerfSampleSeriesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ListPerfSampleSeriesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_history_execution_step_perf_sample_series(project_id, history_id, execution_id, step_id, filter: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ListPerfSampleSeriesResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ListPerfSampleSeriesResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a batch of PerfSamples - a client can submit multiple batches of Perf + # Samples through repeated calls to this method in order to split up a large + # request payload - duplicates and existing timestamp entries will be ignored. - + # the batch operation may partially succeed - the set of elements successfully + # inserted is returned in the response (omits items which already existed in the + # database). + # May return any of the following canonical error codes: - NOT_FOUND - The + # containing PerfSampleSeries does not exist + # @param [String] project_id + # The cloud project + # @param [String] history_id + # A tool results history ID. + # @param [String] execution_id + # A tool results execution ID. + # @param [String] step_id + # A tool results step ID. + # @param [String] sample_series_id + # A sample series id + # @param [Google::Apis::ToolresultsV1beta3firstparty::BatchCreatePerfSamplesRequest] batch_create_perf_samples_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::BatchCreatePerfSamplesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::BatchCreatePerfSamplesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def batch_create_perf_samples(project_id, history_id, execution_id, step_id, sample_series_id, batch_create_perf_samples_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples:batchCreate', options) + command.request_representation = Google::Apis::ToolresultsV1beta3firstparty::BatchCreatePerfSamplesRequest::Representation + command.request_object = batch_create_perf_samples_request_object + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::BatchCreatePerfSamplesResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::BatchCreatePerfSamplesResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.params['sampleSeriesId'] = sample_series_id unless sample_series_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists the Performance Samples of a given Sample Series - The list results are + # sorted by timestamps ascending - The default page size is 500 samples; and + # maximum size allowed 5000 - The response token indicates the last returned + # PerfSample timestamp - When the results size exceeds the page size, submit a + # subsequent request including the page token to return the rest of the samples + # up to the page limit + # May return any of the following canonical error codes: - OUT_OF_RANGE - The + # specified request page_token is out of valid range - NOT_FOUND - The + # containing PerfSampleSeries does not exist + # @param [String] project_id + # The cloud project + # @param [String] history_id + # A tool results history ID. + # @param [String] execution_id + # A tool results execution ID. + # @param [String] step_id + # A tool results step ID. + # @param [String] sample_series_id + # A sample series id + # @param [Fixnum] page_size + # The default page size is 500 samples, and the maximum size is 5000. If the + # page_size is greater than 5000, the effective page size will be 5000 + # @param [String] page_token + # Optional, the next_page_token returned in the previous response + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ListPerfSamplesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ListPerfSamplesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_history_execution_step_perf_sample_series_samples(project_id, history_id, execution_id, step_id, sample_series_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/perfSampleSeries/{sampleSeriesId}/samples', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ListPerfSamplesResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ListPerfSamplesResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.params['sampleSeriesId'] = sample_series_id unless sample_series_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Lists thumbnails of images attached to a step. + # May return any of the following canonical error codes: - PERMISSION_DENIED - + # if the user is not authorized to read from the project, or from any of the + # images - INVALID_ARGUMENT - if the request is malformed - NOT_FOUND - if the + # step does not exist, or if any of the images do not exist + # @param [String] project_id + # A Project id. + # Required. + # @param [String] history_id + # A History id. + # Required. + # @param [String] execution_id + # An Execution id. + # Required. + # @param [String] step_id + # A Step id. + # Required. + # @param [Fixnum] page_size + # The maximum number of thumbnails to fetch. + # Default value: 50. The server will use this default if the field is not set or + # has a value of 0. + # Optional. + # @param [String] page_token + # A continuation token to resume the query at the next item. + # Optional. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ToolresultsV1beta3firstparty::ListStepThumbnailsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ToolresultsV1beta3firstparty::ListStepThumbnailsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_history_execution_step_thumbnails(project_id, history_id, execution_id, step_id, page_size: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{projectId}/histories/{historyId}/executions/{executionId}/steps/{stepId}/thumbnails', options) + command.response_representation = Google::Apis::ToolresultsV1beta3firstparty::ListStepThumbnailsResponse::Representation + command.response_class = Google::Apis::ToolresultsV1beta3firstparty::ListStepThumbnailsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['historyId'] = history_id unless history_id.nil? + command.params['executionId'] = execution_id unless execution_id.nil? + command.params['stepId'] = step_id unless step_id.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end diff --git a/generated/google/apis/youtube_analytics_v1beta1.rb b/generated/google/apis/youtube_analytics_v1beta1.rb new file mode 100644 index 000000000..d24e34ad8 --- /dev/null +++ b/generated/google/apis/youtube_analytics_v1beta1.rb @@ -0,0 +1,46 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/youtube_analytics_v1beta1/service.rb' +require 'google/apis/youtube_analytics_v1beta1/classes.rb' +require 'google/apis/youtube_analytics_v1beta1/representations.rb' + +module Google + module Apis + # YouTube Analytics API + # + # Retrieves your YouTube Analytics data. + # + # @see http://developers.google.com/youtube/analytics/ + module YoutubeAnalyticsV1beta1 + VERSION = 'V1beta1' + REVISION = '20170425' + + # Manage your YouTube account + AUTH_YOUTUBE = 'https://www.googleapis.com/auth/youtube' + + # View your YouTube account + AUTH_YOUTUBE_READONLY = 'https://www.googleapis.com/auth/youtube.readonly' + + # View and manage your assets and associated content on YouTube + AUTH_YOUTUBEPARTNER = 'https://www.googleapis.com/auth/youtubepartner' + + # View monetary and non-monetary YouTube Analytics reports for your YouTube content + AUTH_YT_ANALYTICS_MONETARY_READONLY = 'https://www.googleapis.com/auth/yt-analytics-monetary.readonly' + + # View YouTube Analytics reports for your YouTube content + AUTH_YT_ANALYTICS_READONLY = 'https://www.googleapis.com/auth/yt-analytics.readonly' + end + end +end diff --git a/generated/google/apis/youtube_analytics_v1beta1/classes.rb b/generated/google/apis/youtube_analytics_v1beta1/classes.rb new file mode 100644 index 000000000..6bf9cfb19 --- /dev/null +++ b/generated/google/apis/youtube_analytics_v1beta1/classes.rb @@ -0,0 +1,337 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module YoutubeAnalyticsV1beta1 + + # + class Group + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `contentDetails` + # @return [Google::Apis::YoutubeAnalyticsV1beta1::Group::ContentDetails] + attr_accessor :content_details + + # + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # + # Corresponds to the JSON property `snippet` + # @return [Google::Apis::YoutubeAnalyticsV1beta1::Group::Snippet] + attr_accessor :snippet + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content_details = args[:content_details] if args.key?(:content_details) + @etag = args[:etag] if args.key?(:etag) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @snippet = args[:snippet] if args.key?(:snippet) + end + + # + class ContentDetails + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `itemCount` + # @return [Fixnum] + attr_accessor :item_count + + # + # Corresponds to the JSON property `itemType` + # @return [String] + attr_accessor :item_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @item_count = args[:item_count] if args.key?(:item_count) + @item_type = args[:item_type] if args.key?(:item_type) + end + end + + # + class Snippet + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `publishedAt` + # @return [DateTime] + attr_accessor :published_at + + # + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @published_at = args[:published_at] if args.key?(:published_at) + @title = args[:title] if args.key?(:title) + end + end + end + + # + class GroupItem + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `groupId` + # @return [String] + attr_accessor :group_id + + # + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # + # Corresponds to the JSON property `resource` + # @return [Google::Apis::YoutubeAnalyticsV1beta1::GroupItem::Resource] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @group_id = args[:group_id] if args.key?(:group_id) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @resource = args[:resource] if args.key?(:resource) + end + + # + class Resource + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + end + end + end + + # A paginated list of grouList resources returned in response to a + # youtubeAnalytics.groupApi.list request. + class GroupItemListResponse + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A paginated list of grouList resources returned in response to a + # youtubeAnalytics.groupApi.list request. + class GroupListResponse + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `etag` + # @return [String] + attr_accessor :etag + + # + # Corresponds to the JSON property `items` + # @return [Array] + attr_accessor :items + + # + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @items = args[:items] if args.key?(:items) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Contains a single result table. The table is returned as an array of rows that + # contain the values for the cells of the table. Depending on the metric or + # dimension, the cell can contain a string (video ID, country code) or a number ( + # number of views or number of likes). + class ResultTable + include Google::Apis::Core::Hashable + + # This value specifies information about the data returned in the rows fields. + # Each item in the columnHeaders list identifies a field returned in the rows + # value, which contains a list of comma-delimited data. The columnHeaders list + # will begin with the dimensions specified in the API request, which will be + # followed by the metrics specified in the API request. The order of both + # dimensions and metrics will match the ordering in the API request. For example, + # if the API request contains the parameters dimensions=ageGroup,gender&metrics= + # viewerPercentage, the API response will return columns in this order: ageGroup, + # gender,viewerPercentage. + # Corresponds to the JSON property `columnHeaders` + # @return [Array] + attr_accessor :column_headers + + # This value specifies the type of data included in the API response. For the + # query method, the kind property value will be youtubeAnalytics#resultTable. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The list contains all rows of the result table. Each item in the list is an + # array that contains comma-delimited data corresponding to a single row of data. + # The order of the comma-delimited data fields will match the order of the + # columns listed in the columnHeaders field. If no data is available for the + # given query, the rows element will be omitted from the response. The response + # for a query with the day dimension will not contain rows for the most recent + # days. + # Corresponds to the JSON property `rows` + # @return [Array>] + attr_accessor :rows + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @column_headers = args[:column_headers] if args.key?(:column_headers) + @kind = args[:kind] if args.key?(:kind) + @rows = args[:rows] if args.key?(:rows) + end + + # + class ColumnHeader + include Google::Apis::Core::Hashable + + # The type of the column (DIMENSION or METRIC). + # Corresponds to the JSON property `columnType` + # @return [String] + attr_accessor :column_type + + # The type of the data in the column (STRING, INTEGER, FLOAT, etc.). + # Corresponds to the JSON property `dataType` + # @return [String] + attr_accessor :data_type + + # The name of the dimension or metric. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @column_type = args[:column_type] if args.key?(:column_type) + @data_type = args[:data_type] if args.key?(:data_type) + @name = args[:name] if args.key?(:name) + end + end + end + end + end +end diff --git a/generated/google/apis/youtube_analytics_v1beta1/representations.rb b/generated/google/apis/youtube_analytics_v1beta1/representations.rb new file mode 100644 index 000000000..322b5dc78 --- /dev/null +++ b/generated/google/apis/youtube_analytics_v1beta1/representations.rb @@ -0,0 +1,174 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module YoutubeAnalyticsV1beta1 + + class Group + class Representation < Google::Apis::Core::JsonRepresentation; end + + class ContentDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Snippet + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + class Resource + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupItemListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GroupListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ResultTable + class Representation < Google::Apis::Core::JsonRepresentation; end + + class ColumnHeader + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + + class Group + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :content_details, as: 'contentDetails', class: Google::Apis::YoutubeAnalyticsV1beta1::Group::ContentDetails, decorator: Google::Apis::YoutubeAnalyticsV1beta1::Group::ContentDetails::Representation + + property :etag, as: 'etag' + property :id, as: 'id' + property :kind, as: 'kind' + property :snippet, as: 'snippet', class: Google::Apis::YoutubeAnalyticsV1beta1::Group::Snippet, decorator: Google::Apis::YoutubeAnalyticsV1beta1::Group::Snippet::Representation + + end + + class ContentDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :item_count, :numeric_string => true, as: 'itemCount' + property :item_type, as: 'itemType' + end + end + + class Snippet + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :published_at, as: 'publishedAt', type: DateTime + + property :title, as: 'title' + end + end + end + + class GroupItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + property :group_id, as: 'groupId' + property :id, as: 'id' + property :kind, as: 'kind' + property :resource, as: 'resource', class: Google::Apis::YoutubeAnalyticsV1beta1::GroupItem::Resource, decorator: Google::Apis::YoutubeAnalyticsV1beta1::GroupItem::Resource::Representation + + end + + class Resource + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :kind, as: 'kind' + end + end + end + + class GroupItemListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::YoutubeAnalyticsV1beta1::GroupItem, decorator: Google::Apis::YoutubeAnalyticsV1beta1::GroupItem::Representation + + property :kind, as: 'kind' + end + end + + class GroupListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :etag, as: 'etag' + collection :items, as: 'items', class: Google::Apis::YoutubeAnalyticsV1beta1::Group, decorator: Google::Apis::YoutubeAnalyticsV1beta1::Group::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class ResultTable + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :column_headers, as: 'columnHeaders', class: Google::Apis::YoutubeAnalyticsV1beta1::ResultTable::ColumnHeader, decorator: Google::Apis::YoutubeAnalyticsV1beta1::ResultTable::ColumnHeader::Representation + + property :kind, as: 'kind' + collection :rows, as: 'rows', :class => Array do + include Representable::JSON::Collection + items + end + + end + + class ColumnHeader + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :column_type, as: 'columnType' + property :data_type, as: 'dataType' + property :name, as: 'name' + end + end + end + end + end +end diff --git a/generated/google/apis/youtube_analytics_v1beta1/service.rb b/generated/google/apis/youtube_analytics_v1beta1/service.rb new file mode 100644 index 000000000..60c229ef9 --- /dev/null +++ b/generated/google/apis/youtube_analytics_v1beta1/service.rb @@ -0,0 +1,491 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module YoutubeAnalyticsV1beta1 + # YouTube Analytics API + # + # Retrieves your YouTube Analytics data. + # + # @example + # require 'google/apis/youtube_analytics_v1beta1' + # + # YoutubeAnalytics = Google::Apis::YoutubeAnalyticsV1beta1 # Alias the module + # service = YoutubeAnalytics::YouTubeAnalyticsService.new + # + # @see http://developers.google.com/youtube/analytics/ + class YouTubeAnalyticsService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available 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. + attr_accessor :quota_user + + # @return [String] + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + attr_accessor :user_ip + + def initialize + super('https://www.googleapis.com/', 'youtube/analytics/v1beta1/') + @batch_path = 'batch' + end + + # Removes an item from a group. + # @param [String] id + # The id parameter specifies the YouTube group item ID for the group that is + # being deleted. + # @param [String] on_behalf_of_content_owner + # Note: This parameter is intended exclusively for YouTube content partners. + # The onBehalfOfContentOwner parameter indicates that the request's + # authorization credentials identify a YouTube CMS user who is acting on behalf + # of the content owner specified in the parameter value. This parameter is + # intended for YouTube content partners that own and manage many different + # YouTube channels. It allows content owners to authenticate once and get access + # to all their video and channel data, without having to provide authentication + # credentials for each individual channel. The CMS account that the user + # authenticates with must be linked to the specified YouTube content owner. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_group_item(id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'groupItems', options) + command.query['id'] = id unless id.nil? + command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a group item. + # @param [Google::Apis::YoutubeAnalyticsV1beta1::GroupItem] group_item_object + # @param [String] on_behalf_of_content_owner + # Note: This parameter is intended exclusively for YouTube content partners. + # The onBehalfOfContentOwner parameter indicates that the request's + # authorization credentials identify a YouTube CMS user who is acting on behalf + # of the content owner specified in the parameter value. This parameter is + # intended for YouTube content partners that own and manage many different + # YouTube channels. It allows content owners to authenticate once and get access + # to all their video and channel data, without having to provide authentication + # credentials for each individual channel. The CMS account that the user + # authenticates with must be linked to the specified YouTube content owner. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::YoutubeAnalyticsV1beta1::GroupItem] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::YoutubeAnalyticsV1beta1::GroupItem] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_group_item(group_item_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'groupItems', options) + command.request_representation = Google::Apis::YoutubeAnalyticsV1beta1::GroupItem::Representation + command.request_object = group_item_object + command.response_representation = Google::Apis::YoutubeAnalyticsV1beta1::GroupItem::Representation + command.response_class = Google::Apis::YoutubeAnalyticsV1beta1::GroupItem + command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns a collection of group items that match the API request parameters. + # @param [String] group_id + # The id parameter specifies the unique ID of the group for which you want to + # retrieve group items. + # @param [String] on_behalf_of_content_owner + # Note: This parameter is intended exclusively for YouTube content partners. + # The onBehalfOfContentOwner parameter indicates that the request's + # authorization credentials identify a YouTube CMS user who is acting on behalf + # of the content owner specified in the parameter value. This parameter is + # intended for YouTube content partners that own and manage many different + # YouTube channels. It allows content owners to authenticate once and get access + # to all their video and channel data, without having to provide authentication + # credentials for each individual channel. The CMS account that the user + # authenticates with must be linked to the specified YouTube content owner. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::YoutubeAnalyticsV1beta1::GroupItemListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::YoutubeAnalyticsV1beta1::GroupItemListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_group_items(group_id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'groupItems', options) + command.response_representation = Google::Apis::YoutubeAnalyticsV1beta1::GroupItemListResponse::Representation + command.response_class = Google::Apis::YoutubeAnalyticsV1beta1::GroupItemListResponse + command.query['groupId'] = group_id unless group_id.nil? + command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a group. + # @param [String] id + # The id parameter specifies the YouTube group ID for the group that is being + # deleted. + # @param [String] on_behalf_of_content_owner + # Note: This parameter is intended exclusively for YouTube content partners. + # The onBehalfOfContentOwner parameter indicates that the request's + # authorization credentials identify a YouTube CMS user who is acting on behalf + # of the content owner specified in the parameter value. This parameter is + # intended for YouTube content partners that own and manage many different + # YouTube channels. It allows content owners to authenticate once and get access + # to all their video and channel data, without having to provide authentication + # credentials for each individual channel. The CMS account that the user + # authenticates with must be linked to the specified YouTube content owner. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [NilClass] No result returned for this method + # @yieldparam err [StandardError] error object if request failed + # + # @return [void] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_group(id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:delete, 'groups', options) + command.query['id'] = id unless id.nil? + command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Creates a group. + # @param [Google::Apis::YoutubeAnalyticsV1beta1::Group] group_object + # @param [String] on_behalf_of_content_owner + # Note: This parameter is intended exclusively for YouTube content partners. + # The onBehalfOfContentOwner parameter indicates that the request's + # authorization credentials identify a YouTube CMS user who is acting on behalf + # of the content owner specified in the parameter value. This parameter is + # intended for YouTube content partners that own and manage many different + # YouTube channels. It allows content owners to authenticate once and get access + # to all their video and channel data, without having to provide authentication + # credentials for each individual channel. The CMS account that the user + # authenticates with must be linked to the specified YouTube content owner. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::YoutubeAnalyticsV1beta1::Group] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::YoutubeAnalyticsV1beta1::Group] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def insert_group(group_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'groups', options) + command.request_representation = Google::Apis::YoutubeAnalyticsV1beta1::Group::Representation + command.request_object = group_object + command.response_representation = Google::Apis::YoutubeAnalyticsV1beta1::Group::Representation + command.response_class = Google::Apis::YoutubeAnalyticsV1beta1::Group + command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Returns a collection of groups that match the API request parameters. For + # example, you can retrieve all groups that the authenticated user owns, or you + # can retrieve one or more groups by their unique IDs. + # @param [String] id + # The id parameter specifies a comma-separated list of the YouTube group ID(s) + # for the resource(s) that are being retrieved. In a group resource, the id + # property specifies the group's YouTube group ID. + # @param [Boolean] mine + # Set this parameter's value to true to instruct the API to only return groups + # owned by the authenticated user. + # @param [String] on_behalf_of_content_owner + # Note: This parameter is intended exclusively for YouTube content partners. + # The onBehalfOfContentOwner parameter indicates that the request's + # authorization credentials identify a YouTube CMS user who is acting on behalf + # of the content owner specified in the parameter value. This parameter is + # intended for YouTube content partners that own and manage many different + # YouTube channels. It allows content owners to authenticate once and get access + # to all their video and channel data, without having to provide authentication + # credentials for each individual channel. The CMS account that the user + # authenticates with must be linked to the specified YouTube content owner. + # @param [String] page_token + # The pageToken parameter identifies a specific page in the result set that + # should be returned. In an API response, the nextPageToken property identifies + # the next page that can be retrieved. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::YoutubeAnalyticsV1beta1::GroupListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::YoutubeAnalyticsV1beta1::GroupListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_groups(id: nil, mine: nil, on_behalf_of_content_owner: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'groups', options) + command.response_representation = Google::Apis::YoutubeAnalyticsV1beta1::GroupListResponse::Representation + command.response_class = Google::Apis::YoutubeAnalyticsV1beta1::GroupListResponse + command.query['id'] = id unless id.nil? + command.query['mine'] = mine unless mine.nil? + command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Modifies a group. For example, you could change a group's title. + # @param [Google::Apis::YoutubeAnalyticsV1beta1::Group] group_object + # @param [String] on_behalf_of_content_owner + # Note: This parameter is intended exclusively for YouTube content partners. + # The onBehalfOfContentOwner parameter indicates that the request's + # authorization credentials identify a YouTube CMS user who is acting on behalf + # of the content owner specified in the parameter value. This parameter is + # intended for YouTube content partners that own and manage many different + # YouTube channels. It allows content owners to authenticate once and get access + # to all their video and channel data, without having to provide authentication + # credentials for each individual channel. The CMS account that the user + # authenticates with must be linked to the specified YouTube content owner. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::YoutubeAnalyticsV1beta1::Group] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::YoutubeAnalyticsV1beta1::Group] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_group(group_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, 'groups', options) + command.request_representation = Google::Apis::YoutubeAnalyticsV1beta1::Group::Representation + command.request_object = group_object + command.response_representation = Google::Apis::YoutubeAnalyticsV1beta1::Group::Representation + command.response_class = Google::Apis::YoutubeAnalyticsV1beta1::Group + command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Retrieve your YouTube Analytics reports. + # @param [String] ids + # Identifies the YouTube channel or content owner for which you are retrieving + # YouTube Analytics data. + # - To request data for a YouTube user, set the ids parameter value to channel== + # CHANNEL_ID, where CHANNEL_ID specifies the unique YouTube channel ID. + # - To request data for a YouTube CMS content owner, set the ids parameter value + # to contentOwner==OWNER_NAME, where OWNER_NAME is the CMS name of the content + # owner. + # @param [String] start_date + # The start date for fetching YouTube Analytics data. The value should be in + # YYYY-MM-DD format. + # @param [String] end_date + # The end date for fetching YouTube Analytics data. The value should be in YYYY- + # MM-DD format. + # @param [String] metrics + # A comma-separated list of YouTube Analytics metrics, such as views or likes, + # dislikes. See the Available Reports document for a list of the reports that + # you can retrieve and the metrics available in each report, and see the Metrics + # document for definitions of those metrics. + # @param [String] currency + # The currency to which financial metrics should be converted. The default is US + # Dollar (USD). If the result contains no financial metrics, this flag will be + # ignored. Responds with an error if the specified currency is not recognized. + # @param [String] dimensions + # A comma-separated list of YouTube Analytics dimensions, such as views or + # ageGroup,gender. See the Available Reports document for a list of the reports + # that you can retrieve and the dimensions used for those reports. Also see the + # Dimensions document for definitions of those dimensions. + # @param [String] filters + # A list of filters that should be applied when retrieving YouTube Analytics + # data. The Available Reports document identifies the dimensions that can be + # used to filter each report, and the Dimensions document defines those + # dimensions. If a request uses multiple filters, join them together with a + # semicolon (;), and the returned result table will satisfy both filters. For + # example, a filters parameter value of video==dMH0bHeiRNg;country==IT restricts + # the result set to include data for the given video in Italy. + # @param [Boolean] include_historical_channel_data + # If set to true historical data (i.e. channel data from before the linking of + # the channel to the content owner) will be retrieved. + # @param [Fixnum] max_results + # The maximum number of rows to include in the response. + # @param [String] sort + # A comma-separated list of dimensions or metrics that determine the sort order + # for YouTube Analytics data. By default the sort order is ascending. The '-' + # prefix causes descending sort order. + # @param [Fixnum] start_index + # An index of the first entity to retrieve. Use this parameter as a pagination + # mechanism along with the max-results parameter (one-based, inclusive). + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available 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. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::YoutubeAnalyticsV1beta1::ResultTable] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::YoutubeAnalyticsV1beta1::ResultTable] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def query_report(ids, start_date, end_date, metrics, currency: nil, dimensions: nil, filters: nil, include_historical_channel_data: nil, max_results: nil, sort: nil, start_index: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'reports', options) + command.response_representation = Google::Apis::YoutubeAnalyticsV1beta1::ResultTable::Representation + command.response_class = Google::Apis::YoutubeAnalyticsV1beta1::ResultTable + command.query['currency'] = currency unless currency.nil? + command.query['dimensions'] = dimensions unless dimensions.nil? + command.query['end-date'] = end_date unless end_date.nil? + command.query['filters'] = filters unless filters.nil? + command.query['ids'] = ids unless ids.nil? + command.query['include-historical-channel-data'] = include_historical_channel_data unless include_historical_channel_data.nil? + command.query['max-results'] = max_results unless max_results.nil? + command.query['metrics'] = metrics unless metrics.nil? + command.query['sort'] = sort unless sort.nil? + command.query['start-date'] = start_date unless start_date.nil? + command.query['start-index'] = start_index unless start_index.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + end + end + end + end +end